HNHacker News
TopNewBestAskShowJobs

mixu

410 karma · joined June 23, 2010

Blog: http://blog.mixu.net/

Book on Node: http://book.mixu.net/

nwm, the Node.js window manager: http://mixu.net/nwm/

github profile: https://github.com/mixu

submissionscomments
mixu··on Show HN: RepoPlay - Instant replay for repo commits (+looking for internship)
Looking at my inbox, I can only say - today will go down as one of those special days when my life changed. My most sincere thanks to everyone, I will get back to you soon (it's 1:30 in the morning here).
mixu··on Show HN: RepoPlay - Instant replay for repo commits (+looking for internship)
Thanks for the feedback - I changed the text. I guess I'm not the guy to ask for copywriting :).

I would speculate that the tone might be in part due to cultural background as well - as Wikipedia says, "The Finnish language has no simple equivalent to the English 'please'." http://en.wikipedia.org/wiki/Finnish_grammar

As for the background story, I did start this project for fun (it was an old hackathon idea) but kicked it into higher gear due to this opportunity coming up.

Thanks!

mixu··on Surviving a traffic surge: Three techniques to scale your site fast
These are decent tips, but the real fix for me when I got a (minor) traffic surge was changing KeepAliveTimeout from 15 (sec) to 2 (sec). Basically, due to the high default keep alive time for requests, most Apache threads were waiting for the timeout.

So the number of threads you have (e.g. setting StartServers, MaxSpareServers/MaxSpareThreads) is way less important than the keepalive timeout: you can/should start enough threads to use all the available resources, but it will only make a difference if you aren't idling all those threads with a high KeepAliveTimeout. Apparently, that's the Apache default setting.

mixu··on Ask HN: Anyone have a really smart way to organize css?
my rules:

1) Layout and widgets only.

I start with a reset, then layout (block positioning), then widgets. Everything other than layout is a widget. There are no global styles. If there is one of it, it's an ID. If more, it's a class.

2) No (global) element styles! Ever!

No, not even a p { margin: xyz } or a ul { list-style-type }. Every element that cannot be referred to by class / id must look exactly like it would after the reset.

This avoids complex dependency chains where coincidence influences look. Widgets can be moved from one site to another and you actually have to think new widgets through rather than relying on the default values.

3) Avoid classes and id's as much as you can.

Have single base element with a simple but descriptive class name, and then specify the sub-elements.

For example: Instead of “div.content-title” use “#content h1″ (e.g. div#content with a h1 tag inside it).

Basically, design widgets which consist of one base element, and refer to sub-elements via longer expressions. Use indentation to separate sub-elements.

My strong preference is to maximize for human readability (=short dependency chains, descriptive widgets rather than single elements) rather than short CSS. Cascading within widget-scope is fine, but cascading with global styles should be avoided. I find that when I follow these rules, I like my CSS a lot more.

mixu··on The site Microsoft forgot: IE9 countdown
Totally illegible font color, and selecting the text does not help since the highlight color is also very light. Can't read anything except the graph and headings.
mixu··on Five Startup Ideas
You mean something like this (from a HN thread a while ago)?

https://spreadsheets.google.com/ccc?key=0Ag-R_ZlGO21NdE9HSWR...

Also related: http://www.builditwith.me/

The problem with idea sheets seems to be that most ideas are terrible...

mixu··on Ask HN: What kind of personal financial investment do you do?
>Your time horizon is too short.

Didn't John Keynes say:

"The long run is a misleading guide to current affairs. In the long run we are all dead. Economists set themselves too easy, too useless a task if in tempestuous seasons they can only tell us that when the storm is past the ocean is flat again."

Though apparently, he was talking about inflation in this case... but the point is, the nature of risk is such that while it works out on average, you still end up with an individual outcome at a fixed point in time which may vary a lot from the expected payoff. Not that I do completely agree with tastybites, but I see the logic.

mixu··on Ask HN: feedback collection widget providers?
Coincidentally, this weekend, we launched a dead-simple feedback solution at Garage48 Helsinki (http://garage48.org/ ) based on our pain with complex & expensive feedback services:

http://wehearvoices.net/

It's a simple, embeddable widget for getting feedback. The beta is free, final pricing will be inexpensive and the full "Show HN" thread is on it's way...

mixu··on Python vs. Ruby: A Battle to The Death
Related: http://blog.extracheese.org/2010/02/python-vs-ruby-a-battle-... (blog post by the author)

http://blog.peepcode.com/tutorials/2010/what-pythonistas-thi... (Blog post about the video referred to by the author)

http://news.ycombinator.com/item?id=1097723 (HN discussion about that blog post)

mixu··on Ask HN: What is your programming music?
"Damn It Feels Good To Be A Gangsta" by Geto Boys, of course... (http://en.wikipedia.org/wiki/Office_Space)
mixu··on Reporting a bug on a fragile analysis
Noooooo! I can already imagine the pain writing HTML5 in 2014: "Well, IE9 is too slow to do common thing X reliably, so let's trigger the SunspiderTest optimizations using this hack..."

It's like finding out that IE9 only performs well on the subset of JS needed when you are drawing a fishtank..

mixu··on Verified by Visa and Mastercard SecureCode are broken and need to be fixed
So, how common is the 3D Secure code on websites? I thought it was a local/European annoyance, since I haven't run into it outside EU webshops?

For instance, I've never had to put in my 3D Secure code on Amazon, BackBlaze, Syncplicity or ZumoDrive. The problem is that at least here in Finland, the only company (representing all the local banks) offering credit card processing practically requires 3D Secure unless you implement everything yourself (e.g. can't use their CC vault) - and no, unfortunately the US subscription API services don't work here, unless you somehow manage to get a merchant account in a UK bank.

mixu··on Is genius simply the product of hard work?
This is the classic Chase & Simon (1973) article. Similarly, programming skill has been described as being based on the ability to remember abstract solutions (programming schemas e.g. Davies, 1994; Détienne & Soloway, 1990; Soloway, 1986) and applying them. From the perspective of a non-programmer, a program is just a wall of text. I remember someone did the same basic experiment with program fragments (real vs. random) and got similar results.

Experts can write the focal elements (e.g. pseudocode) first and then expand them into a full program. A good example might be the fizzbuzz test, or generating the permutations of a string, you'll have an idea of what the problem involves because you've done it before. If you can't visualize the problem in terms of something familiar, you'll have a hard time taking a top-down (e.g. memory-recall-based) approach.

mixu··on Reworder – A tale of learning Python and launching an app in five days.
Even more simply - are you writing code for a von Neumann architecture (http://en.wikipedia.org/wiki/Von_Neumann_architecture ), or something more abstract?

To my understanding the issue is not whether "state" has side effects (e.g. your global vs. local example), but rather whether there is any concept of "state" (e.g. shuffling stuff from one memory slot to another).

My experience is from Prolog, where the statement "X is X + 1" results in an error, because once unified, the variable X cannot be modified - X is not a memory slot. Once you try to let go of the idea of a machine with memory slots, alternative-paradigm programming gets a little bit easier. Of course in practice state is often needed, so it often gets added through some mechanism.

mixu··on Why Python chose Mercurial
The summary: "First, git's Windows support is the weakest out of the three DVCSs being considered which is unacceptable as Python needs to support development on any platform it runs on. Since Python runs on Windows and some people do develop on the platform it needs solid support. And while git's support is improving, as of this moment it is the weakest by a large enough margin to warrant considering it a problem.

Second, and just as important as the first issue, is that the Python core developers liked git the least out of the three DVCS options by a wide margin."

I'm using Mercurial for the same reason - Windows support without complex dependencies.

mixu··on Ask HN: Best movie about work/business?
And Swordfish is a great movie about being a hacker... specifically the common recruiting process.

On a more serious note, I do agree with you. Some decent movies with a office environment/work theme: Boiler Room (2000), Duplicity (2009), Glengarry Glen Ross, Other People's Money (1991), Swimming with Sharks and Wall Street (1987).

I've also enjoyed the dramatized real-life stories in Rogue Trader and Barbarians at The Gate.

mixu··on Why are so many programmers arrogant?
> Smart people are a minority and on average find themselves in a conversation with less smart people.

Only assuming that all people are equally likely to interact with one another. Which I doubt is strictly true, given that those cases in which I've actually interacted with everyone from an age group (e.g. military service) are strikingly different to the daily interactions I have. I would imagine people in places where opinions actually matter (such as the workplace) mostly interact with people of somewhat similar background and smarts, though obviously with different fields of specialization.

But even within groups of more-or-less equally smart people, the choice of topics to be assertive about and the style of argument are still factors that make people seem arrogant, so I do agree with you. But I would attribute it more to choice of topic and style of argument rather than "smartness". As you said, the definition of "smart" is problematic and potentially circular.

mixu··on Ask HN: Do you know any useful "Back of the Envelope Calculations"?
I use revenue per employee as a rough guide to the type of company in question (is it human-based or tech/marketing-based? is it a startup or an established business?). It's simple to calculate, and revenue is usually less sensitive information than net income per employee (so easier to get for non-public companies). My feeling is that for the average (non-public, not particularly successful but OK, non-automated) company the average salary is about 1/3 of that (more or less). Actual net income per employee of course depends on the degree of automation and success.

Example tables:

http://www.jbryanscott.com/2009/02/07/nasdaq-100-revenue-per...

http://37signals.com/svn/posts/2283-ranking-tech-companies-b...

mixu··on I'm an introverted hacker. I want to join a frat.
Not to my knowledge. The core reason is that in many countries, universities don't have campuses in the same sense that universities in the US seem to have. My experience is from the Nordic countries (spent a few years chairing various student associations), and we do have student unions, nations and subject/interest -based associations, but these are all different.

A quick rundown:

The student unions (e.g. http://en.wikipedia.org/wiki/Student_unionism_in_Finland ) are part of the university administration, have 100's of millions in assets and provide basic services (healthcare, apartments, places to party) in exchange for 40+ euros per year.

The subject- and interest-based associations are separate entities that get some funding from the student union and organize events. They don't charge, and mostly get their cash from organizing events. However, since everybody lives around town, the interactions are more focused around specific events. The nations (http://en.wikipedia.org/wiki/Nation_(university) ) are a lot like the student associations, except they are specific to people from a particular area in the country (not strictly enforced), have a bit more money (e.g. may have their own apartments) and organize activities centered around traditions and whatever is popular.

Thanks for a good question, interesting to see the parallels in other countries...

mixu··on Jason Fried's setup
Have you tried noise-cancelling headphones? I use the Sennheiser PXC-350's whenever I am not working at home, you can get the benefits of reduced ambient noise without having any music on (though I mostly do). It's NOT complete sound-proofing, but much nicer than hearing everything that is happening around you.

Here is the comparison that convinced me (the Sennheisers are at the end): http://www.youtube.com/watch?v=cQdbcDTiIas

mixu··on How Debt Can Destroy a Budding Relationship
Not only that, also, the government pays for university study.

http://en.wikipedia.org/wiki/Student_benefit

(Though realistically the total sum is only enough for paying rent, so most people still end up having to work somewhat during their studies.)

mixu··on Ask HN: Writing a master thesis about freemium, need some ideas
Don't let me discourage you, but there is a reason why there is little research on freemium business models: it is theoretically not very different from premium business models (price discrimination), except for the fact that the lowest tier is free instead of paid and that the company benefits from network effects from the free users. So the big issues are in price discrimination research and research on network effects.

Not that it isn't an important new idea in practice, since the psychological difference between 0.01 cents and 0.00 cents is huge.

If you end up doing the thesis with on freemium, you'll probably either end up doing a quantitative analysis (check out the quant research on shareware), or qualitative analysis around price discrimination, network effects and business models (check out this MA thesis https://jyx.jyu.fi/dspace/handle/123456789/23051).

mixu··on Hello, my name is Reginald and I am a Socialist
Meh. I haven't thought about this a lot, but I think the whole capitalism vs. socialism dichotomy is useless since the concepts carry so much historical baggage.

Coming from one of the Nordic countries, I would say that I have accepted a social contract that says I pay more in taxes than in other countries, and for those taxes I get "free" healthcare and "free" university education. The contract is that people get something at the beginning and the end of their lives and aren't screwed when they are faced with injury or illness, and pay more than they get during their working years. As someone said on on /., taxes buy me (this particular type of) civilization.

I'd keep that separate from the economic (e.g. private ownership and allocation of resources via somewhat free markets) and legal (e.g. governmental decision making based on majority and strong individual rights) aspects.

Unfortunately, most people confound these different aspects for historical reasons, so they have come to mean "good choices in those factors" and "bad choices in those factors" depending on your POV.

mixu··on What you say about others says a lot about you
Well, I had a look. Thank you for the reference. It seems like an interesting idea, but I wouldn't use these findings in a casual setting like a job interview. As a lot of reporting on scientific studies, the findings are overstated in the linked blog. (For a quick illustration of "the science news cycle", see: http://www.phdcomics.com/comics.php?f=1174 )

This just seems a bit too much like a Rorschach test (http://en.wikipedia.org/wiki/Rorschach_test#Controversy ), and the interpretation that you can directly come to some conclusion about a job applicant based on what they say about a hypothetical person is even warned against in the actual article:

"First, the studies clearly demonstrate that perceiver effects represent more than simply the projection of an individual’s self-image onto other people."

Projective tests have their uses in clinical psychology (e.g. with the crazies) - but whether you would want to apply them to normal situations is questionable.

"In each study, we found regular relationships between personality traits and perceptions of others. Individuals who perceived others positively reported higher agreeableness (particularly aspects associated with friendliness and low hostility); higher life satisfaction; and lower endorsement of measures of personality disorders, depression, and antisocial attitudes."

In other words, the test is likely to tell you two things: first, how positive you are (which is unsurprising, since positivity is almost by definition related to seeing things and others in a positive light) and second whether you are not totally nuts (e.g. positive people are likely to be associated with lower measures of personality disorders, depression and antisocial attitudes).

But in non-clinical settings - such as in a job interview? "The magnitude of individual differences in the positivity of perceptions of others is fairly large, and individual differences in perceiver positivity impacted judgments of single targets to a considerable degree." That is, the positivity measure is stable, but there is a lot of variance. This suggests that you don't want to use this for finding out much more than how positive a person is - and if that is your sole criteria in a job interview, good luck!

Edit: to clarify that last quote - it basically says that among a normal group of college students, positivity measures have high individual differences and these differences impact judgments to a high degree. So big differences in the results of the measure may be simply explained by individual differences in positivity measures.

← PreviousPage 2 of 2