Open Side Menu Go to the Top

08-27-2012 , 11:12 AM
Iirc you can use the google maps API to do this for you.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
$25m Guaranteed WPM on CoinPoker
Join the action now
Daily Rewards • Splash Pots • CoinRaces
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
08-27-2012 , 11:13 AM
Yeah the only problem with going that route is sometimes the string is something like, "Come eat at Joe Bob's Taco stand from 4pm til 9pm at Saks and Fifth". Haven't figured out how to find location, parse out, and use API to get location.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 06:03 PM
Just cleaned up all my mail accounts. Time for a dose of keizen and keeping up to date with this stuff it was not fun at all. But now it feels so cleaaaaaaaaaaan

Also updated and systemized my bookmarks and I'm trying to keep open tabs at 11 max now (excluding the pinned ones) which combined with the 13 pinned ones is one bar without scrolling.

Last edited by clowntable; 08-27-2012 at 06:09 PM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 07:37 PM
I have 5 pinned tabs: gmail, Google calendar, Google Tasks Canvas, Bitbucket, github. I also usually have < other active tabs going at a time.

24 tabs open at a time would drive me insane

edit: if I'm at home I also usually have another incognito window open just for facebook.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 08:17 PM
http://en.wikipedia.org/wiki/Reflect...programming%29

is this something every programmer should know?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 09:57 PM
I have well over 100 tabs in my firefox usually, lol 329 if I check yesterday's saved session I basically leave anything semi-interesting in a tab and occasionally go back to it, occasionally "spring clean". "Load Tabs Progressively" is an essential add-on for this ridiculous setup, without it firefox would take most of the day to start up!

In addition to that right now I've got a chrome open on the other computer, couple windows with ~8 tabs each (for current stuff being done on Windows)
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 10:21 PM


that might qualify as a form of hoarding
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 10:34 PM
On a busy day I might hit 10 tabs. However, I'd say I rarely have over 4.

Reflection can be very powerful, but also make the code much more complicated. It will also push errors into the run-time that might be caught at compile-time if you didn't try to use reflection. Reflection is one of those things that I know is used in libraries to do awesome things, but not really something I use extensively myself.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-27-2012 , 10:43 PM
Quote:
Originally Posted by _dave_
I have well over 100 tabs in my firefox usually, lol 329
motherofgod.jpg
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 12:09 AM
Quote:
Originally Posted by e i pi
http://en.wikipedia.org/wiki/Reflect...programming%29

is this something every programmer should know?
I'm reminded of the Blub essay.

It's good to expand your horizons, yes. Not just that particular concepts, but lots of high level concepts.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 12:27 AM
That stuff is great if you're using Lisp but a waste if you're blubbing.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 01:03 AM
Quote:

"Our hypothetical Blub programmer wouldn't use either [Cobol or assembly]. Of course he wouldn't program in machine language. That's what compilers are for. And as for Cobol, he doesn't know how anyone can get anything done with it. It doesn't even have x (Blub feature of your choice).

As long as our hypothetical Blub programmer is looking down the power continuum, he knows he's looking down. Languages less powerful than Blub are obviously less powerful, because they're missing some feature he's used to. But when our hypothetical Blub programmer looks in the other direction, up the power continuum, he doesn't realize he's looking up. What he sees are merely weird languages. He probably considers them about equivalent in power to Blub, but with all this other hairy stuff thrown in as well. Blub is good enough for him, because he thinks in Blub.

When we switch to the point of view of a programmer using any of the languages higher up the power continuum, however, we find that he in turn looks down upon Blub. How can you get anything done in Blub? It doesn't even have y.

By induction, the only programmers in a position to see all the differences in power between the various languages are those who understand the most powerful one. (This is probably what Eric Raymond meant about Lisp making you a better programmer.) You can't trust the opinions of the others, because of the Blub paradox: they're satisfied with whatever language they happen to use, because it dictates the way they think about programs."

http://en.wikipedia.org/wiki/Paul_Gr...rammer%29#Blub
I'm just wondering because I feel like I have a bad habit of spending more time reading about programming concepts than I do programming.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 02:46 AM
In regards to the reflections, it's pretty difficult to explain all that article is describing, but maybe this will help you wrap your head around it.

Given this:

>>import math
>>math.sqrt(9)
3

Instead of say, implementing sqrt yourself, you are already have a built-in to the language, and now you have a different environment, or more precisely, you have an environment that now has the concept of sqrt built-in on a lower-than-top-level environment that is now available in the environment that you are currently interacting with. You can almost imagine that sqrt is now a part of the compiler, or at least one step closer to the compiler than you are working with because it may as well be any other built-in function.

Contrast this to if you build sqrt yourself and didn't bother importing the package: you have sqrt sitting at the top-level and you have a personal interaction with it, but it is no closer to the compiler than the environment you are currently in, thus you would implement it by yourself and you would call it as such:

>>sqrt(9)
3

And of course, you can mess around with sqrt all you want and test whatever implementations you feel like working with.

This copy/paste:

Quote:
// Without reflection
new Foo().hello()

// With reflection

// assuming that Foo resides in this
new this['Foo']()['hello']()

// or without assumption
new (eval('Foo'))()['hello']()

// or simply
eval('new Foo().hello()')
What they've tried to describe here is even one level higher, that you are now passing around strings and evaluating them in the environment. The steps are a little bit deeper:

create expression in the environment
pass expression to evaluator
evaluator returns non-list expression to environment
environment passes expression to evaluator
evaluator returns the answer of the expression to the environment
.....
stop when there are no more expressions to evaluate.

The idea is that it never really touches the compilation step, but rather, the built-in functionality of the program is doing all of the work at run time. Contrast this to your own sqrt function, and this is still one level higher.

The reason why this is different in Lisp than say, Python, is that in Lisp, you are almost always interacting with the Lisp program and you usually don't have to run through a compilation step in order to see how your code reacts to changes. In fact, you can interact with a file of code without ever running through a compilation step, but that's because Lisp is built with these interactions in mind.

Why they'd use strings is very difficult to explain, but in essence, the module importation is one manifestation of this concept, but heavily abstracted.

In Clojure, for example, you'd invoke packages like this:

>>(use 'blah.core 'blah.other 'path.path.path)

The single quotes are actually lists, and in order to invoke the processes, you have to use lists, which then get sent to the evaluator which calls the processes to allow you to run the program without a compilation step. It's sort of similar to what happens in Python when you evoke import math in the shell.

There's obviously a ton more to say on this idea, but this begins to scratch on the surface of why Paul Graham calls other languages blub programs: Lisp actually evaluates to itself, therefore, when you program in Lisp, you are programming in Lisp via lists and the language of Lisp is lists.

I like reading Paul Graham's articles, but as with anyone you find on the web, you have to take what he writes with a grain of salt. I've noticed that he, like Yegg, and many others, like to write articles that are purposely provocative. Just read Graham's thoughts on Java, OO, and how to approach your startup for some of his more strange posts.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 06:36 AM
Quote:
Originally Posted by Neko
I have 5 pinned tabs: gmail, Google calendar, Google Tasks Canvas, Bitbucket, github. I also usually have < other active tabs going at a time.

24 tabs open at a time would drive me insane

edit: if I'm at home I also usually have another incognito window open just for facebook.
I usually had >30 open...mostly stuff I quickly "bookmarked" for reading later...one of the reasons why I decided it was time for some time management

My pinned ones are: Trello,Gmail (can probably be removed since I mostly use thunderbird), HN,Heise (German IT news),Slashdot,University Moodel,Dictionary,Facebook,FollowMyTV (tracks series and new episodes etc),Youtube,2p2,photobucket

Can probably remove Gmail,FMTV,Photobucket.

Last edited by clowntable; 08-28-2012 at 06:41 AM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 08:36 AM


is this true though? i always heard that using common words was easy to bruteforce

a recent article talking about pw cracking, great read
http://arstechnica.com/security/2012...under-assault/

Quote:
Using brute-force techniques to crack the password Julia1984 would require 62^9 possible combinations, a "keyspace" that's calculated by the number of possible letters (52) plus the number of numbers (10) and raising the sum to the power of nine (which in this example is the maximum number of password characters a cracker is targeting). Using an AMD Radeon HD7970, it would still take about 19 days to cycle through all the possibilities.

Using features built into password-cracking apps such as Hashcat and Extreme GPU Bruteforcer, the same password can be recovered in about 90 seconds by performing what's known as a mask attack. It works by intelligently reducing the keyspace to only those guesses likely to match a given pattern. Rather than trying aaaaa0000, ZZZZZ9999, and every possible combination in between, it tries a lower- or upper-case letter only for the first character, and tries only lower-case characters for the next four characters. It then appends all possible four-digit numbers to the end. The result is a drastically reduced keyspace of about 237.6 billion, or 52 * 26 * 26 * 26 * 26 * 10 * 10 * 10 * 10.
found both from ahk forums

Last edited by greg nice; 08-28-2012 at 08:52 AM.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 10:52 AM
If anyone wants something funny to read:
http://www.reddit.com/r/Guildwars2/c...inappropriate/

Lots of "Why was I banned?" questions, answered by the company rep.

Quote:
Mind checking for Bixx?
The name's fine. The chat? No so much: Bixx: Get out of here you gag ******.
Loving how people present themselves so innocently and then get shamed pretty hard!
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 12:23 PM
Don't see why that dude was banned for Adolf Critler.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 12:50 PM
Quote:
Originally Posted by _dave_
I have well over 100 tabs in my firefox usually, lol 329 if I check yesterday's saved session I basically leave anything semi-interesting in a tab and occasionally go back to it, occasionally "spring clean". "Load Tabs Progressively" is an essential add-on for this ridiculous setup, without it firefox would take most of the day to start up!

In addition to that right now I've got a chrome open on the other computer, couple windows with ~8 tabs each (for current stuff being done on Windows)
Does this not eat up all your ram?
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 12:56 PM
Quote:
Originally Posted by daveT
That stuff is great if you're using Lisp but a waste if you're blubbing.
You know what they say, every project large enough contains a half-baked implementation of Common Lisp.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 08:05 PM
Quote:
Originally Posted by greg nice
is this true though? i always heard that using common words was easy to bruteforce
Common words in isolation are but 4 strung together like that is going to be brutally hard because the number of possible permutations is ridic large.

It tilts me to no end my bank limits the number of characters in your password to 8 with no special characters allowed. I wrote and complained to the bank and got a standard "your info is safe with us!" form letter back.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 08:06 PM
Been reading Uncle Bob's Clean Code to my 6 month old over the last two weeks. That kid is going to be a master software developer by the age of 4.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 09:06 PM
Quote:
Originally Posted by Neko
Common words in isolation are but 4 strung together like that is going to be brutally hard because the number of possible permutations is ridic large.

It tilts me to no end my bank limits the number of characters in your password to 8 with no special characters allowed. I wrote and complained to the bank and got a standard "your info is safe with us!" form letter back.
Wow - I'm not particularly security conscious but that might have been enough for me to switch.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 09:12 PM
What I hate is when my password is limited in entropy by the *requirement* to use certain things. When I have to re-rand my password until it meets their requirements, entropy is lost.
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-28-2012 , 09:16 PM
Quote:
Originally Posted by jjshabado
Wow - I'm not particularly security conscious but that might have been enough for me to switch.
That's the worst part...I had just consolidated and moved all of mine, my wifes and my kids bank accounts there
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
08-29-2012 , 04:55 AM
Quote:
Anyone know of a script that finds vague addresses in strings? I'm using twitter to pull locations from tweets and update in real time where the person is and I can do so when the address is simple like 1234 Orange St Orlando Fl. But some people tweet their location like 'corner of University and 4th'. Any ideas?
Not directly. You can use the geopy package to get geocodes given partial information. You'd have to add to the script below by finding a way of turning their vague instructions into enough information to get a location. That's generally an information extraction problem, for which you need to dig into a natural language processing task. You can check out a few of the intro guides at streamhacker to see if you want to go that route.

Code:
from geopy import geocoders
import csv

g = geocoders.Google()
table = csv.reader(open('someCSVwithPartialAddressInfo'), delimiter=',')
next(table)

print "Address,City, State,Zip Code, Latitude, Longitude"
for row in table:
    full_addy = row[1] + "," + row[2] + "," + row[3] + "," + row[4]
    try:
        place, (lat, lng) = list(g.geocode(full_addy, exactly_one=False))[0]
        print full_addy + "," + str(lat) + "," + str(lng)
    except:
        print full_addy + ", NULL, NULL"
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD ** Quote
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **
$25m Guaranteed WPM on CoinPoker
Join the action now
Daily Rewards • Splash Pots • CoinRaces
** UnhandledExceptionEventHandler :: OFFICIAL LC / CHATTER THREAD **

      
m