HNHacker News
TopNewBestAskShowJobs

phzbOx

548 karma · joined September 8, 2011

phzbox.com (phzbox at gmail.com)
submissionscomments
phzbOx··on I wrote BozoCrack to show why plain MD5 is a horrible way to hash passwords.
Thanks for the enlightenment. I have to agree that once you have access to the db, salt or not doesn't really matter security wise. But at the end, it really boils down to: Do you have a strong password? If yes, even md5 is "somewhat" safe. But to be fair, I don't know how big the rainbow tables are.. and could become.

For instance, I've got lots of password with over 20 characters mixed with upper/lower cases with a few symbols in it. (i.e. Seems hard but: phzb0xis@mynickname.on.hackernews.com is already pretty long and hard to crack but still easy for me to type/remember), btw that is not my password ;) I wonder if I encrypt that with MD5.. Could it be contained in a rainbow table somewhere?

Your search - 822d6c6e12b26dd30161967354aa4302 - did not match any documents.

phzbOx··on Vi and Vim vs. Emacs Shootout and Deal
Well the thing is how easy it is to customize your evil keybindings. And, don't forget it's Lisp.. so it'd take a second to write a macro behaving like:

    (map J jjjj)
phzbOx··on I wrote BozoCrack to show why plain MD5 is a horrible way to hash passwords.
To the other posts saying how MD5 is not bad and/or it's stupid to use MD5 without salt (or whatever):

See this script more as a fun little hack rather than a "Formal proof". Thanks aparadja for sharing. That being said, using MD5 without salt is asking for trouble. I mean, I know security is usually just a time vs $ vs quality problem, but it costs almost nothing more to add a salt in front of the password. Why not do it?

phzbOx··on Vi and Vim vs. Emacs Shootout and Deal
(I'm somewhat replying to the next message but HN didn't let me reply to it)

There's conkeror that use the same renderer engine of Firefox but with emacs mentality of keybindings and customisability.

Also, I've read that some people like to rebind their ctrl+W to something else so they don't have the habit to close their windows in other os/apps. IIRC, C-w is kill-region? Personally, as stated earlier, I use evil so I don't have that problem (I press d to delete the selected region).

phzbOx··on Vi and Vim vs. Emacs Shootout and Deal
The philosophy is very different. Emacs is really a lisp repl with a good API to manage windows. So, in a way, it's not an editor. I mean, you can use it to check your e-mail, chat on IRC.. or basically anything that can be interacted through a window (I.e. mostly anything)

Also, mostly everything is a command in Emacs.. So, when you press "a" it basically translate to "call the function insert-character 'a'". So, in a way, Emacs keybinding are really just a little api over the real commands.

In vim, it's a totally different philosophy. Everything is based on making the editor as efficient as possible. Yes you can hack stuff and go on IRC with Vim but conceptually, it's not what it's been designed for and you'll likely hit lots of problems down the road and will have to use all kinds of hack.

So, is putting emacs in Vim possible? Vimscript, even thought being an abomination (my opinion), could implement elisp.. with all the necessary wrapper. So, maybe that'd be possible.. but rather useless.

Finally, my personal opinion.. with Vim, I really felt like "tweaking/hacking" it when I tried to customize it. For instance, I'd try lots of different mapping/paste things found on internet and hope it'd work. Sometime it'd fail for obscure reasons.. and you'd add another hack on top of the hack to fix it.

On the other hand, in Emacs, I feel like I'm really coding my editor as I want it. I'm not surprised by its behavior or its interface. I.e. You can bind an event to call a function when a buffer opens. If you know a little bit of lisp, you'll feel right at home. And if not, there's no better way to get started with that fabulous language.

phzbOx··on Vi and Vim vs. Emacs Shootout and Deal
Evil is the most recent 'vim-mode' for Emacs.. I'm sure there're still few bugs in it but as far as I can see, it's really good. The nice thing is how easy it is to configure/change the default behaviors and also how fast the mainteners/implementers answer your question.

Also, I think it's important to point out that these mode try to "integrate" as best as they can with Emacs. So, it's not Vim in Emacs, but more, Emacs with Vim' best features and keybinding. (Arguably the best feature of vim). For instance, evil for emacs is a little bit like clojure for Java. I.e. it's a totally different beast but doesn't force you to make dozen of wrappers.. you simply use both at the same time.

phzbOx··on Vi and Vim vs. Emacs Shootout and Deal
Evil is the most recent 'vim mode' for Emacs. I've had a couple of problems.. submitted an issue of github and it was resolved in hours (if not minutes). (For instance, :<number> was missing to go to a line.. fixed in minutes. I wanted jk to behave like <esc> in insert mode, I've been redirected to a post explaining how to do it, etc.)

The great thing about evil (and other vim-mode) is how it is easy to customize it as you wish. IMO, it's even easier to hack than with vimscript. For instance, I rarely use shift+j in normal mode and decided to use it to go go 4 lines down.. same for K and I want it to work in visual mode. Here's how I did it with evil:

  (define-key evil-normal-state-map "J" "jjjj")
  (define-key evil-normal-state-map "K" "kkkk")
  (define-key evil-visual-state-map "K" "kkkk")
  (define-key evil-visual-state-map "J" "jjjj")
  (define-key evil-normal-state-map "0" "^")

So basically, I find it pretty cool that I can customize how I want my vim-mode to behave. And obviously, from vim-mode I can call any normal elisp functions.

It's impossible to find an editor that'd fit exactly your need without you customize it because that's how we are.. everyone using Emacs or Vim use it because they want to have their own personal editor with their own function/binding.

However, Emacs with Evil was what I was seeking for a couple of years. I wish I could have made the switch sooner.

phzbOx··on Vi and Vim vs. Emacs Shootout and Deal
I've just recently switched to using Emacs with Evil (A Vim mode for emacs). That's just simply awesome.
phzbOx··on CoffeeScript Means Giving Up on JavaScript
When I say new technologies, I don't mean "new programming languages". Learning new libraries to make you better at your craft is part of "learning new technologies". Whatever the languages or the tools you use, you can always learn more and be better at them.

In my career, I've met all kind of programmers, and I'm sure you also have. Some are really passionate about their crafts while others do the minimum, go home and don't think about software until 9am the next morning. You are right that I can't say that good programmers enjoy learning new technologies. But I can assure you that the worst programmers I've worked with were never willing to learn more.

And, comparing software engineering with more mature fields is somewhat difficult as their tools do not change as fast as ours. Yes, craftman tend to know their tools inside-out; but they're not limited to only one. They're usually good with all of them and pick the right one for each situation.

phzbOx··on CoffeeScript Means Giving Up on JavaScript
To quote the author: "For the extra effort you'll make learning CoffeeScript and its idiosyncrasies, why not put it towards really learning JavaScript?"

There are so many wrong saying in this statement.

First, understand that CoffeeScript is JavaScript - but without its idiosyncrasies. If you know JavaScript really well, learning coffeescript takes minutes. CoffeeScript embraces closures and prototype inheritence; it just makes it less cumbersome to use.

Second, who said that programming in CoffeeScript means you don't really know JavaScript? CoffeeScript let you write better code in less line. (By better I mean easier to maintain and read). Furthermore, CoffeeScript programmers tend to choose it because they enjoy coding in Javascript and want to keep using it. What is way more scary is maintaining codes of designers who use jQuery without understanding Javascript.

Third, I hate the "For the extra effort" part. It's like saying, either you learn Python or C++; you can't learn both so better spend the time learning C++. It's just totally wrong. Good programmers tend to enjoy learning new technologies and paradigms. I'd even go further by saying that learning CoffeeScript will make you a better JavaScript programmer.

phzbOx··on Why Lisp Will Never Win (2003)
I was arguing with a lisper the other day about how lisp' power make it easy to go overkill and have too much nested lambdas.. while language like Java, forcing you to use vars, sometime makes the code easier to read.

He then told me to not blame my weakness at reading code on Lisp.

phzbOx··on Eclipse launches new language to cut down Java boilerplate - Extend
Sadly, often time you'll have clients that use older version and you need to stay backward compatible for them.
phzbOx··on How Can Anyone Still Hate Bill Gates?
People bash over ie6 just because it was revolutionary at that time and some people are still using it. Yeah, it's a pain to deal with as it's a pain to deal with any old technologies. Try to support Netscape 2.0 for fun.
phzbOx··on Eclipse launches new language to cut down Java boilerplate - Extend
So, "Extend is for the Java Programmer". I'm curious to see how this will turn out as there are some pretty cool features in this language. (Particularly the multiple dispatch, closures and type inference). However, any Java programmers could have made the switch to Clojure or Scala to keep working with the JVM. But, Extend is different in that it generates Java code instead of JVM. So, I'm wondering who will use that.

- Java programmers who are still stuck with old version: Even though they'd dream about using this, I'm guessing that won't compile to java 1.4/1.5.. right?

- Java programmers who already switched to high level language on top of jvm (Scala, clojure, etc.): Maybe the few who are still with Eclipse would switch back.. but I guess the majority of programmers in this scenario wouldn't want to switch.

- Java programmers who refuse, for various reasons, to learn newer languages/tools: Since it's still Java.. and still in Eclipse, it might be easier for them to give it a try? But then, if they refused to switch to newer language, it might be surprising to see them switch to Extend.

I'm a bit puzzled (as you can see). Personally, if I have to use the jvm, I'd go with clojure all the way.

phzbOx··on Six Ways to Overcome the Urge to Procrastinate
#7 Don't write a blog post about ways to not procrastinate
phzbOx··on MyBalsamiq: remote, collaborative UX Design
I don't particularly like their video intro. I feel like they've tried to fit it under a specific time limit (which is great) by doing everything faster, speaking faster and weirdly skipping animation. For instance, they take 20secs to talk about drag and drop and pressing prev/next to show the next mockup. He said "You can click the previous arrow or the next arrow to go to the next mockup". It's not relevent in an intro video. I.e. if the interface is well made, I'll figure out how to go to the next mockup when in that page.

Better would be to stop saying every little actions and talk on the high level goal. For instance, don't say "I'm gonna select a color to put on the front-end of my project".

Also, seems like the website is really well designed but the balsamiq part is still with the old flash design. Is it from the same company? Did they chose to not change the old balsamiq because clients were already used to it? Or was that too complicated? Is there an html only version incoming?

phzbOx··on Show HN: Email open rates are stupid.
I'll be grumpy and say I'm surprised of how fast it reached first position on HN. However, I have to agree that there's a huge difference between deleting an email and opening it :p Great idea, good luck with it.
phzbOx··on Ruby is beautiful (but I'm moving to Python)
http://sciruby.com :D
phzbOx··on Ruby is beautiful (but I'm moving to Python)
tldr: He wants a couple science python library and 'doesn't feel like porting them in ruby' (to take his wording).
phzbOx··on How To Build A Site That Looks Great On Every Screen
That site was unreadable from my mac as there were ads everywhere.
phzbOx··on Ubuntu should zig to Apple’s zag
For me, Ubuntu has always been the "Linux for newbies" a little bit like Mandrake was in the time. I'm not saying that all Ubuntu users are newbies.. but Ubuntu is the distro to starts with if you're a beginner. Lots of my university friend who had no knowledge of Linux would get up and running with Ubunty in minutes. (A live cd, tool to help create partitions, [next], [next], automatically configure network). I mean, a Windows user would almost feel at home on Ubuntu.

Soooo, I find it weird that the author complains about Ubuntu saying it's not the right direction. We all know there are dozen of distributions and dozen of window managers. By all means, if you don't like the new updates, just take a WM more lightweight (For instance, fluxbox, awesome, stumpwm, xmonad, etc.) As for the distro, I'm using ArchLinux for a couple of years and I'm loving it.

It's not that I don't like beautiful intuitive UI; it's just that it's not for me (At least on my computers). However, I've got an iPhone and I love the fact that everything just work. But please, don't force me to use GUI everywhere on my desktop; let that for people who enjoys the everything just work.

But then, maybe I'm wrong. I assumed that Ubuntu always was axed for beginners.. Was I wrong with that assumption?

phzbOx··on Why I’m Kissing Spotify Goodbye
I've tried lots of services and apps, and Spotify is my favorite. Of course, it's not perfect but it's way better than what the author suggests in this article.

About the "Playlist a whole album is too complicated"; I'm not sure what he mean by that as you click on a song in the album and it plays all the album.. this could hardly get more intuitive than this.

Of course, there's not all songs but at least they let you upload your own local music (Unlike grooveshark for instance).

Unlike the author, I really like the concept of playlist in Spotify. Basically, it's simply a list of pointers to the real song. So, basically, if you want to save the album, just create a playlist with the name of the album.. in fact, it does that for you automatically if you want.

On the negative side, as someone else pointed out, I wish they had a better "Suggesting new music". Yes, there's a radio but I feel it's not really good. They always show the same songs and most often than not they're not in my taste. I mean, I've got 1000+ songs in my playlists, I'm sure they could use those datas to guess a little better what I like.

A missing feature that I loved from grooveshark was: "Show me a playlist who contains that song". It was a nice way for me to discover new artists/songs. I'm not sure why it's not in Spotify as, unlike guessing a good songs, this is fairly straightforward to implement.

Another thing that is annoying is how the sync mode works in the desktop app. Basically, if you're in "online mode", it syncs it.. while offline don't use internet. The problem with that is sometime I want to "be online" to listen to the radio or something, but I don't want it to download all songs that need to be synced. (Say when tethering from my iPhone). Also, in the desktop app, if spotify starts when I'm not connected to internet, and then get connected, it will stay in offline mode forever.. there's no way to "turn on online mode". I have to restart the app and then it notices that I'm on internet. And yeah, same problem, since I'm on internet it will automatically start to sync everything.

And, finally, I wish it had a web interface. Yeah, we get it, with the desktop app you have more freedom to implement whatever you want. But still, a materialistic web version to listen the radio or your song might be useful..

So, in summary, it's not perfect, but it's the best solution I've found. And, it's legal :-) (Even though I had to hack the system to get it working in Canada as Spotify is illegal here.)

phzbOx··on How I Quickly Test and Validate Startup Ideas
Really interesting and well written. I particularly liked the part when the author said not to show feature as if they don't buy the silver bullet, they won't buy your product.
phzbOx··on Richard Stallman’s rider
I, too, was disappointed by Richard Stallman' talk. We were a bunch of students in a conference in general software engineering. And he was invited to give a talk about copyright and freedom.. cool, right?

Not exactly. He came in and started acting like he really didn't wanted to be there and didn't care at all about us, the place and the organizers. I'm usually not the kind to judge someone else dressing but Stallman' look was terrible. Not terrible like in "old geek" or whatever; terrible like I had pity of him. Seems like he didn't washed for days.. anyhow, let's continue for the talk.

Before even starting, he started yelling "OPEN THE LIGHT", " I SAID OPEN THE GODAMN LIGHT". That was crazy as hell. Basically, what he wanted to say is "Please, open the light because I don't want my audience to fall asleep". But jesus, there's a way to say things and a way to say things.

And, as much as I wanted to like him and the talk, it was extremely boring and even false at some points.

And, with all that, it just makes me really sad. It makes me sad because this is such a genius and a legendary hacker but it seems that he stopped trying.

It's like if you see someone trying to open a door by pulling really hard when it's clearly written push. And, you see that person getting frustrated and over frustrated about the fact that the door doesn't open.

For me, Richard seems like that. There are ways to make things change. But you have to adapt. As someone already said "It's easy to go outside and whine, but true revolutioners dress up and change things from inside the system." (or something like that).

Stallman could give so much if he wanted just a little bit, but he decided to keep pulling that door.

Look, we get it, it's supposed to be called GNU os and not Linux. But there's a way to explain that to total newbies that don't know the history of unixes. It's not by being frustrated in front of an audience that people will understand and change their minds.

Or when he talks about freedom, it seems so theoretical. Yeah right, Ubisoft should publish their code open sources and preserve the right on their assets. But comon, there are lots of money and families involved. Even thought it would be nice to have everything open source, in practice, you have to make trad-of. And, in my opinion, it's better to be practical and try to make the world a little better, rather than being an extremist and changing nothing.

There's a reason why it's called Linux and not GNU; and yelling after everyone won't change that.

phzbOx··on David Pogue: Dropbox Will Simplify Your Life
WHen you say you strongly disagree; I'd assume you mean about the command line example. My point was more about how simple tools used every day by geeks might be useful to no-techny if made simpler and more accessible.

And when I say terminal, I don't mean it in "bash" or unix prompt.. A total new way to design it with a strong focus on simplicity and AI.

phzbOx··on David Pogue: Dropbox Will Simplify Your Life
What amaze me is how this same problem was solved years ago by programmers.. Hell, even dropbox used svn behind the scene. I remember when Dropbox was just starting, some friends and me were talking about useless it was. "Duh, if I want to host a svn server, I'll just host mine." ;)

It's also important to look at all the competitors dropbox had and currently have.. and still, they're extremely successful. So, basically, they found a nice problem to solve and solve it. The goal there wasn't to be able to sync all possible folders.. just one little folder where anyone would put their stuff inside and that'd just work.

And, more importantly, it makes me thing about what tools we use every day that the no-techy don't know about.

In my opinion, there's really something to do with the terminal. It's such a crazy productivity boost and, if implemented correctly, might be way more intuitive. For instance, everyone knows people that are scared by all the buttons/windows/popup dialog/etc. For us, geeks, it's so easy.. we see the screen and automatically abstract everything and focus on right part; but for them, it's impossible to abstract so many new things at once.

A terminal, IA based, could make it so easy for no-geek to use a computer. Obviously, I'm not talking about BASH but something that could pretty much understand beginners commands. I.e send a email to bob.. which could guide the user through various questions.

Yeah, it's probably stupid. But hell, I'm sure they're hundreds of product as useful as Dropbox.. we just have to think about it.

phzbOx··on Python For The Web
In fact, it's even better than what the author said:

  import requests
  print requests.get('http://gun.io').content
Only two lines!
phzbOx··on Python For The Web
To parse Html and XML, BeautifulSoup is awesome.
phzbOx··on Ask PG: Is there any chance of getting points displayed again
Anyway, points on comments doesn't say if a comment is good or bad; it says if people agree or not with it.
phzbOx··on Inserting Artificial Objects into Photographs
The article was submitted days ago and received no attention at all. I guess Bind Blowing Titles work even on HN.
← PreviousPage 7 of 10Next →