HNHacker News
TopNewBestAskShowJobs

epenn

2,982 karma · joined March 2, 2011

I think therefore I engineer.
submissionscomments
epenn··on NoSQL No More: Let's double down with MoreSQL
If this post was meant satirically, well played.

If it was meant seriously, wouldn't it be better just to use the right tool for the right job?

epenn··on Isaacs: try/catch is an anti-pattern
try/catch, which blurs the line between errors that are mistakes (accessing a property of null, calling .write() on a stream after .end(), etc.), and those which are expected application-level problems (invalid data, file missing, and so on).

While I tend not to be a big fan of try/catch myself, one thing I like about Objective C and Cocoa is that they at least provide classes to separate programmer mistakes (NSException, used with try/catch) from application issues (NSError, used however it best fits the app). If the try/catch pattern must be used, I think its sensible to have this kind of separation of responsibilities.

epenn··on 9 Geeky Equations You Should (at Least Pretend to) Know
Previous discussion: http://news.ycombinator.com/item?id=3196555
epenn··on [dead]
Notwithstanding the foregoing, (a) Customer is permitted to state publicly that it is a customer of the Service, consistent with the Trademark Guidelines...

Sounds to me like you can mention that you use their service as much as you want. But if you attempt to conflate that relationship with something else you need to ask their permission first. Unless I'm missing something that seems fair to me.

epenn··on Show HN: My 24-hour project, instacss.com
How are you sorting these? I did a search for "border" just to try it out. It returned 18 entries with pretty much every variation of border-*, but border itself was the 16th entry almost at the end of the results page.
epenn··on WikiLeaks: Out of time and money
clearly false charges

I was not there to witness what did or did not happen with Assange and the girls in question. As a result I cannot comment on his guilt or innocence. Through what evidence have you concluded that they are clearly false charges?

epenn··on Computer Scientist Creates Kill-Switch for Biological Viruses
For his PhD thesis, he proved that a working hot fusion reactor would either consume more energy than it generates or spew as much radiation as existing nuclear power plants—a finding that did not endear him to many physicists and cut off some career options.

This is a bit of a tangent, but I admire anyone willing to follow through on what the facts tell them rather than switch gears in order to ensure better career mobility.

epenn··on How did we make the DOS redirector take up only 256 bytes of memory?
I miss DJGPP. When I was first learning C back in the days when DOS ruled my world, DJGPP is almost invariably what I used. I clicked the "by DJ Delorie" link on his page and saw that he now works for Redhat working on GCC. Strange or not, that continuity brought a smile to my face.

Also found this quote on the History of DJGPP page: DJGPP was born around 1989 (originally called djgcc), when Richard Stallman spoke at a meeting of the Northern New England Unix Users Group (NNEUUG) at Data General, where I then worked. I asked if the FSF ever planned on porting gcc to MS-DOS (I wanted to use it to write a 32-bit operating system for PCs), and he said it couldn't be done because gcc was too big and MS-DOS was a 16-bit operating system. Challenge in hand, I began.

I like his moxie.

epenn··on Code Like a Pythonista: Idiomatic Python
one thing I didn't see mentioned is switching from "if s.find(c) == -1: ..." to "if c in s: ...". I see people do that a lot.

I think this is covered implicitly by the two "Use in where possible" sections. Although as Tim Peter's The Zen of Python states, which is also quoted in the tutorial, "explicit is better than implicit." If people are doing that despite knowledge of the in keyword then I suppose that just proves Tim's point.

epenn··on On cryptography and dogmas
I see what you mean. That will no doubt work for the time being, but it does make me wonder how "future proof" that method is. Calculating hashes for any number of character combinations is trivially parallelizable. Even today, price aside, it wouldn't take much effort to spin up a large number of machines on AWS or a similar service to increase the speed in which new hashes could be added to a rainbow table. Eventually the size of the rainbow table will increase to the point where it would also contain the long salt + hash.
epenn··on On cryptography and dogmas
Can someone explain to me how salts help a hashing algorithm secure itself against a rainbow table? For example, let's say my password is "justinbieber", which then has a salt prefixed to it which turns it into "iheartjustinbieber". If an attacker is unfortunately able to gain access to the hash of my password and the rainbow table he uses has an entry for hash("iheartjustinbieber"), how is that any more secure than the original?

Edit: changed "iheartjustinbieber" to hash("iheartjustinbieber") in the last sentence.

epenn··on Prince of Persia for Commodore 64/128 released
There is one: http://itunes.apple.com/us/app/prince-of-persia-retro/id3739...

The graphics have been updated though, resembling POP2. I wish there was a version or a mode of POP for iOS where I could put it in a kind of "classic" graphics mode that would resemble what I remember of the DOS version I used to have.

Edit: grammar.

epenn··on IOS development tips
These are all valid points, but they are widely applicable to many types of development, not just iOS. Even on much larger projects where various features can be considered projects in and of themselves (for ex, $interdepartmental_project at $large_corporation). This advice can apply to both ends of the spectrum and anywhere in between.
epenn··on 0day vulnerability full disclosure: American Express
When a major company, especially a financial services company, is subject to public security vulnerability disclosures like this, it should really make other companies stand up and take notice. There is absolutely no excuse for these kinds of vulnerabilities to exist on a production system. When Citibank was recently hacked by simply changing the account number in URLs, that should have been enough for other financial institutions to do an internal security audit to make sure they weren't susceptible to anything similar. Don't wait until it's too late. For the sake of their customers I hope this is resolved swiftly.
epenn··on Is the Anonymous Threat to 'Erase' the NYSE Legit?
The video threat against the NYSE included a call for Anonymous supporters to utilize the so-called Low Orbit Ion Cannon (LOIC) voluntary botnet tool to launch a Distributed Denial-of-Service attack against the NYSE's website on the target date.

Regardless of whether this is a threat from Anonymous or a fake, I really don't think DDOSing the web server(s) of the NYSE would have any affect whatsoever on their actual trading systems. I would assume (or hope) that there is no internal connection between the two.

epenn··on Programmer problem solving sequence: should it be like this?
tl;dr of my post: Thinking through a problem and not going to the web first makes you a better programmer, instead of relying on the better programming of others.

The negative connotation depends on what you're using google and stackoverflow for. If you need to understand something that can't be directly reasoned through to come to an answer (random example: you need a description for an API call in some public web service) then there's nothing wrong with google, stackoverflow, etc being your first choice in search for your solution.

However, if it's a problem that -can- be directly reasoned through (random examples: any application logic issue, determining a regex to match a specific pattern, tree traversal issues, etc, etc) then your first choice should be to try to figure it out yourself before turning to the web. The rationale is twofold. 1) With enough practice, you'll often find you can solve your own issues faster than you can dig through websites trying to find someone else who has done the same. 2) Even if you ultimately can't find a solution on your own, attempting will at least exercise your brain and give you more experience, which feeds back into #1.

Another way of stating the rationale is that it helps to prevent cargo cult programming (see: http://en.wikipedia.org/wiki/Cargo_cult_programming). Even if you can't come up with a solution, or even if your solution is less than optimal, attempting to come up with your own answer first gives you a much better chance of understanding the underlying principles involved in the solution that google, stackoverflow, etc give you. That will minimize the chances that you apply the solution in a half-assed way that just causes you more problems down the road because you didn't fully understand its implications. It will help you in the long run.

epenn··on Welcome To CrunchFund, MG Siegler
Does this mean MG has quit Techcrunch as well? or will he be able to do both?
epenn··on Getting Creative with MapReduce
The Cascalog abstraction layer fixes this issue by separating logic from data, allowing you to play creatively at massive scale.

I just checked out Casacalog and I like what I see, although I have yet to try it out myself. Does anyone know of something similar that would work with Scala as well?

epenn··on Try Python, Ruby, Lua, Scheme, QBasic, Forth ...
I'm getting a 330 ERR_CONTENT_DECODING_FAILED when I try to load up the site. If no one else is getting this then chances are it's my company's firewall interfering. If its rule set detects either "fun" and/or "potentially useful" the site is immediately banned.
epenn··on Arrington now officially out
Erick Schonfeld has been named the editor of TechCrunch. TechCrunch will be expanding its editorial leadership in the coming months.

This makes me somewhat skeptical about how much autonomy Erick will be given in the long run. Unless they mean the expanded editorial leadership would ultimately answer to him.

epenn··on Ship or Die
Good analogy. Reminds me of the perennial Steve Jobs quote, "real artists ship." You can think up the greatest masterpiece the world would ever see. However if you never actually paint it and display it, the world will never actually see it.
epenn··on [dead]
I don't necessarily think there should be an outright ban, but I do think we should try to maintain a good standard for what we submit. Here's my personal stab at it.

DON'T SUBMIT: 1) If it adds nothing new to the discussion. Just a regurgitation of things already said. 2) If it's something that can be obtained very easily elsewhere. Already on NY Times, CNN, etc. 3) If it amounts to nothing more than a tribute. (Nothing wrong with these intrinsically, but this isn't really the forum for them.) 4) If it is overtly politically charged.

DO SUBMIT: 1) If it provides a genuinely new or original analysis of the event itself, what lessons can be learned, what lessons should have been learned, etc. 2) If it is thought provoking and has the potential to spark meaningful discussion.

I think if we followed these (or similar) guidelines then that would cut out the majority of the fluff pieces, so that anything 9/11-related that does make it through the filter will be better received.

tl;dr - Think before you post.

epenn··on Bill Dietrich gives CMU $250,000,000
I was originally going to post that sometimes I wish gifts like this would be given to smaller, less fortunate schools. A top tier school like CMU is always going to be able to find new sources of endowment. I still believe this in general. However before reading the previous comments, I had no idea how small CMU's endowment was compared to other top tier universities. If the numbers I read are correct, CMU's $815 million is only 2.97% of Harvard's $27.4 billion. Not nearly what I assumed it was.
epenn··on The Towson Hack: The mystery of vanishing iTunes credit
I agree that the less reputable apps are probably being used to convert the in-app purchases into cash. As for KingdomConquest in-app purchases, my guess is these aren't being used to get cash, but specifically to confuse people trying to determine what's going on.
epenn··on Confirmed: All Wikileaks Cables to be Released in next 24 hours
Can someone explain why/how the cables allegedly kicked off Arab Spring? I get how they pertain to Egypt's former information minister specifically, but wasn't the greater amount of unrest in the region preexisting?
epenn··on Windows 8 - Designing for Metro style and the desktop
I hope it will be possible to build applications that can take advantage of both interfaces in one executable. Then detect the current context and display accordingly. I like the idea of Metro, but I will like it less if I have to create two separate projects to accomplish what (in my mind at least) should be one.
epenn··on Dorm Room Design and Construction
I was in the same dorm room from my sophomore year onward. Unfortunately we were required to clear everything out during the summer months, including any similar customizations we had made, otherwise I might have gone all out like this too. It's a great way to make a small room feel like home. Looks very efficiently laid out as well.
epenn··on Graph Theory: Part III (Facebook)
His direct links from part 3 to parts 1 and 2 are broken. However if you click on "More Articles" (http://20bits.com/category/articles/) on his homepage the links there work fine.

http://20bits.com/articles/graph-theory-part-i-introduction/

http://20bits.com/articles/graph-theory-part-ii-linear-algeb...

epenn··on Use Jonathan's card to buy yourself an iPad
Since I don't find the idea of yuppies buying yuppies coffees very interesting I decided to mix things up a bit.

OP/Sam, I understand that you believe there are worse problems in the world. I have no doubt that you are correct. However, this does not change the fact that your own social experiment amounts to you taking advantage of the good will of those who contributed to the Starbucks card by stealing from them. Contributing the money to a charity afterwards does not change this fact.

You are not Robin Hood stealing from a corrupt Sheriff of Nottingham. So please don't act like it.

epenn··on Poll: How many hours do you work a week?
Remember there is often a difference between working hard and working smart. I would try to focus less on the amount of hours put in and instead just focus on what value you're adding to your project.
← PreviousPage 4 of 5Next →