HNHacker News
TopNewBestAskShowJobs

mdkess

561 karma · joined March 16, 2010

submissionscomments
mdkess··on Do What You Love? Screw That
And this has nothing to do with cultural biases against divorce, and subjugation of women, right?

There was a far lower attrition with slave labor as well.

mdkess··on Do What You Love? Screw That
Passion leads to hours of practice, and hours of practice leads to success. While you can't force yourself to be passionate about your current job, if you follow your passions - sincerely - I think that more often than not, it'll lead to a successful existence. I can think of very few passions where people can't at least maintain their existences. Maybe not get rich, I think in general that takes luck, but feed themselves and I think live happier as a result.

And honestly, what's the point of doing anything else? Be someone else's servant, because you want ... money? Recognition? You are going to die one day, and that's it. The purpose of life, as best I can tell, is self actualization.

It's stupid. You want money? Why? So your kids can follow in your footsteps and chase money so that their kids can follow in your footsteps and chase money so their kids can...

And then are you just blaming your children for your lack of ambition and risk taking? Would you say to your kids "I would have figured out what I loved, but then you were born". Would you think it, though?

If you want money, go work in finance. Otherwise you're not sincere in even chasing money, you're just treading water.

mdkess··on The insanely confusing path to legal immigration, in one chart
There will always be illegal immigrants. Do you know what happens when you exclude a group of people from using the legal system? They create their own.

If illegal immigrants can't get car insurance, they drive without car insurance. If they can't go to the police without the risk of getting their family deported, accidents turn into hit and runs. And when people can't go to the police, they turn to less reputable people for protection.

Do you think that this is preferable?

mdkess··on Creating a Great Place to Work
Which is why I think that having a guideline is important - if only to set the expectation when you join the company.

If a company had a "no vacation policy", and when pressed about it, they said "just get your work done - we don't track vacation time", how much vacation time would you plan to take in your first year there?

When you're there, you realize that nobody ever takes vacations. Can you still justify that three week long trip to Asia that you had planned? I mean, you can always find a new job, but you've already sunk a ton of time into the company. If instead they said that you get three weeks, at the very least you get paid out for it when you leave. It's also easier to get a direct answer for "do people take their vacation time?"

As an aside, but I think your point "they [think they] are irreplaceable or are in continual danger" is a pretty good point for encouraging extended vacation - if you can't survive for two weeks without someone on your team, something needs to change, and that can be a good way to identify those people.

mdkess··on Creating a Great Place to Work
For 20 people, you don't need policies at all. But probably you're not planning on being a 20 person company forever, and the more people, the harder it is to change things.

As for vacation, why not - you get 2 weeks vacation as a signing bonus, plus 3 weeks/year. This accrues up to X months. Seems to solve all of the problems. If you want to stick with the no vacation policy, assuming you're the founder, it means that you have to take long, extended vacations. If you want your employees to be comfortable taking two weeks off, you have to take two weeks off and make people know that you're taking two weeks off (and not work those two weeks, at least as far as people can tell). There are always deadlines, always important meetings, and I find it impossible to justify taking an arbitrary amount of time off with no guideline. The point of vacation time isn't trust, it's to set that guideline - I am here to work, but I need to know what the expectations are. You can deal with the outliers as they come up - if one of your good employees wants to take two months off in the summer, you guys'll work something out.

Then I think having no sick day policy ("come to work sick and you're fired") and a flexible work from home policy makes this less about beancounting and more about taking time off to energize. Everyone loses a few days a year to appointments, a cold, a sleepless night, etc., and hates having to take those out of their vacation days (or are forced to lie about being sick).

mdkess··on Creating a Great Place to Work
I disagree with some of this list. Having never started a company but worked at a few, here's my opinionated and uninformed rant.

Picking your own email address and hostname sounds fine in theory, but as the company grows, having a naming scheme like first initial last name lets you email people easily without having to remember the format that they chose. Plus it means that the first few employees get all of the cool email addresses (dave@example.com, etc), and it's hard to change emails down the line.

And no vacation policy sounds nice in practice, especially as an employer (we're all adults, be responsible), but it falls apart quickly especially if people are workaholics and don't take vacations. I have trouble taking vacation as it is, with no defined policy, I basically don't. It would be even harder if my boss didn't take vacations. Now, this isn't my employer's fault directly, but I would prefer a defined vacation policy with a no sick day policy (or better yet - "if you're sick at all, don't come to work or you're fired") and an understanding of short term tradeoffs for when you do things like pull all nighters.

Company credit card is great. I'd even go so far as to say tell every person - here's $500 to spend each year making yourself more productive. Then let people (subject to approval) buy whatever they want.

As for a clear salary system - in theory, sounds reasonable, but you have to be flexible with salary since you don't want to lose good developers because your "culture" says you can't pay someone an extra $5k/year. And if you start making exceptions, I think that's worse, since it gets perceived as favoritism. At the same time, that salary talk should happen twice a year, no exceptions. There should also be performance reviews every six months, and the performance reviews and salary conversations should not be the same thing (since otherwise I think people will just wait to answer the question of "am I getting a raise" and ignore the rest).

Quality furniture and office space and pick your own computers - very yes. Again, I'd say - here are some recommended/common setups, but here's $5k (or more) to spend on your office. Also, quiet space is so important, I hate open offices. If you're a small company, you take what you can get, but once you are big, at the very least have pair offices. Distraction due to random noise costs me days of productivity, and I'm generally pretty focused. I have a Herman Miller Embody at work, oh god that chair is awesome.

Snacks - I really like free lunches, not for the financial benefit because I figure it comes out of my salary anyway, but because it means I can get healthy food and I don't have to think about it. Also, get healthy office snacks as well as a bit of junk food.

Hours - I tend to work in long periods of high productivity followed by long periods of low productivity, so my work hours fluctuate a lot. I have friend however that works at a company that is quite strict about 9:30-6:00pm every day (as in, get in slightly before 9:30 ever day, and everyone is out before 6:00pm), which seems reasonable. I think that in a lot of companies where people are at work for 12 hours a day, they're not doing 12 hours of work but filling time to save face. So having never experienced a more strictly regimented day, I think that it might be interesting.

mdkess··on Never Make Counter-Offers (2011)
The way the industry views raises is bizarre. In my mind, there should be an automatic say 3% raise to everyone's salary every year, performance review aside. If someone's not worth 3% more to you after a year, they should be fired. After that, give performance based raises to everyone. I know so many people who have quit because management never bothered to give out raises (hey, they make $150k a year, they don't need a raise), yet their employers could have kept them for a couple thousand extra a year. After the person quits, the company happily spends $40k on a recruiter to find their replacement.

I started working at a company out of college, and a year in, after a good performance review, got a 2% raise. I found out that this put my salary at slightly less than the company was offering new college hires for the current year.

So I confronted my boss about this, and asked for a 4% raise (including the 2% I was offered). While my boss agreed (or at least said that he did), HR blocked it, and so I was left with my 2% raise.

I did what most people would do - I found a new job and gave a generous 3 weeks notice. The counter offer was $20,000 on my next paycheck, if I promised to stay for at least another year. The raise that I had asked for was $3500 over a year. Naturally, I turned this down.

mdkess··on The Minimum Wage Machine
That sounds nice, but I don't think it's true, especially not in the near future. We're already in a state where society could go on with say 30% of the population working to produce food, but we keep growing, because as a society we want more. Who would give up what they have right now to go back and live as a billionaire in the 1500s, giving up their iPads and TVs and modern medicine? Not many people. I don't see that trend reversing. How many times has cost been the determining factor on whether to purchase or do something? Probably a lot.

With trade, there's always relative competitive advantage. It's probably economically more sensible for you the software developer to hire someone to mow your lawn, since you make more money in an hour of writing software than it costs to get someone to mow your lawn. Even if you're better at mowing your lawn than the person you hire - you still make more money writing software (example: You make $100/hour writing software. It takes you 1 hour to mow your lawn, or you can hire someone for 2 hours to do it for you at $20/hour. Opportunity cost to mow the lawn: $200. Gain from hiring someone to mow the lawn: $160. So even though you can mow the lawn twice as fast as the person you hire can, it's still better to hire someone.)

So now it becomes a resourcing problem - you need people who can mow your lawn. Robots can do that, but I don't think that robots can do all jobs at least not in the near future. Which is why I think that a huge part of this is a resourcing problem - you have a mismatch between skills and demand, which again I think is solved through education. Consider software developers again - I bet that if suddenly there was no demand for software developers, any one of us could be successful in another career, since at the heart of it, we're logical thinkers. We need to get as many people to that level as possible.

Furthermore, it's very important to not make poverty generational. I think that I contribute to society through my employment (at least I pay a ton of taxes), but if I wasn't as lucky as I was, I might not be in the same position to do so. I'd still be as capable, at least in terms of potential, but I wouldn't have the opportunity.

mdkess··on The Minimum Wage Machine
Find some places that pay minimum wage and will also pay for education in some form. And do you really think that the unemployment problem in unskilled or low skill labor is simply because there aren't enough people who can show up and follow directions?
mdkess··on The Minimum Wage Machine
Of course, there are always counter examples. A stuck clock is right twice a day. And someone always wins the lottery. Stats don't lie though, parents income and education is highly correlated with their childrens' success (and apparently even brain development). So you know one person who overcame poverty - how many people do you know with a pretty typical middle class family who are about as successful?

Suppose that we were to play a game - you are given two people, A and B, and the following information about their parents: income level and education level (name of degree/diploma(s) and schools). Do you think that you could come up with a strategy for guessing which person - A or B - will make more money at age 30, that would do better than just flipping a coin?

Formal education does offer you huge benefits. I walked out of school into a job paying many times minimum wage - I got the job because I did well on the interviews, but I got the interviews because I have a degree. Is this fair? Probably not, but it is the reality of the situation. And I do feel like I learned a ton in school. Of course, there are problems with the education system, but that's another discussion.

mdkess··on The Minimum Wage Machine
Do you really think that there are that many zero marginal product people? Or do you think that it's mostly people who are unwilling or don't have the education background to do work with utility? I feel like a lot of minimum wage is a big negative feedback loop - if you are making $7 an hour, you have to work a lot of hours to put food on the table. And these are generally manual jobs, or at least involve a lot of standing, and so you are exhausted by the end of the day. Plus - with poverty being so endemic, chances are nobody around you has an education either, so you can't see first hand that education really gets you anything. And, with a lack of money, you either have no credit or (more likely) bad credit. So how do you get out of that trap?

When your parents are struggling to make ends meet like this, what do you do as a kid? You start working night shifts in high school instead of studying for the SATs.

If you took people in this trap who were willing, and subsidized them for two years to go to community college, I feel like you'd have a huge increase in productivity, especially across generations. And it wouldn't even be that expensive, especially if you factored in increased tax revenue. Or heck, as a lesser goal, make it a goal to enable people making under $X/hour to get their GED.

Maybe this is way too idealistic.

I was lucky. Relatively rich parents, we could move into a good school district, I got to go to a good university, not really worry about money, and now I work in the software industry which is booming. But a huge part of that I owe to circumstance - I could study in school, never hungry, never worried about paying rent.

mdkess··on Apple blocking SkyDrive from iOS store, wants cut of revenue
We've had low margin businesses forever, that's not going to change. I agree with what you said, single party billing is great, except Apple also sells software on their platform, and is exempt from the cut.

So that means that Apple is the only one able to sell ebooks on their platform, because who would go to Amazon if they had to pay 30% than in Apple's bookstore both on the platform and off of it (note that Apple explicitly forbids charging more on the app store than elsewhere). Do you think that this is reasonable, considering that Apple has owned a major part of mobile devices over the past 5 years?

If this was just Visa, it would be fine - the playing field would be level. But it's not, and Apple uses this to give themselves a massive competitive advantage. If Toyota bought a bunch of gas station chains and said that non-Toyota cars had to pay 30% more for gas, but made the billing system really straightforward, would you be okay with that?

mdkess··on Feeling like a fraud while doing startups
I think that a useful skill for anyone is to be able to listen to someone's opinion on something and gain information or knowledge from it, without agreeing with what the person is saying or even taking a position on it at all.

This skill that surprisingly many people lack in any capacity.

mdkess··on Software development final exam answers: Algorithms and Data Structures
Is this true (by the definition on the site)?

I mean, certainly O(log(n!)) <= O(n log n) since we can just say that log(n!) = log(n) + log(n-1) + ... + log(1) <= log(n) + log(n) + ... + log(n) = n * log(n), but is the bound tight? It's been too long.

EDIT: Answering my own question... yes. http://www.cs.sfu.ca/CourseCentral/307/jmanuch/lec/factorial...

mdkess··on Show HN: Logo feedback for new sports site needed
I think that when you're designing a logo, you need to have a clear silhouette. Right now it looks like a fancy header for a header of a section of a website, not a logo. Look at Pepsi, Coke, Apple, Toyota, YCombinator - - all of them have really clear outlines that are unmistakable. The runner in the H is a reasonable idea, but it makes the H look distorted when really small.

So, I don't really like any of the logos.

mdkess··on On sexism in the tech industry - rebuttal
These nagging bugs pay back dividends in the long term if you are on the right side of them though, which was my point. Let's say that I get a 6% raise every year because I ask for it (either directly, or through promotion), while people who don't get a 4% raise. If someone starts out making $80k a year, after 10 years, the person not asking is making $118k per year, while the person asking for it is making $143k/year. Over the 10 years, that means that the first person makes about $1.078 million, while the second makes $1.198 million - a difference of $120k before taxes. After 5 more years of this, that difference turns into over $300k.
mdkess··on On sexism in the tech industry - rebuttal
Sexism that I've noticed has been very subtle. I work with some very intelligent people, so I can't imagine anyone is overtly sexist (ie. thinking that women can't do this job, would not hire a person simply based on gender etc.), but still, there are problems. It's hard to write about sexism as a guy without feeling like you're coming off as sexist, but hey, I probably am. Also, it's hard to write about things without generalizing, so I don't think that these apply equally to all organizations, or all members of either gender, but as a population (of people and of companies), my thoughts are:

For one, I think that recruiting is very masculine. "Solve impossible problems! Be a rockstar! Join the most hardcore developers in the world!". It works, but I think that men find a lot more appeal in it than women do. I think that things like mentoring and career growth are also important - not that that detracts from the end result of solving really hard problems, but I think that it presents it to a more growth oriented way. So I think that especially college recruiting should still focus on the fun, hard engineering aspect of the job, it should also focus on the growth side. We'll train you, you'll work with people - we want smart people, we'll make you into an awesome developer.

Aggressiveness. If I want a raise, I'll go and ask for a raise. If I want something changed, I'll speak up about it. If I'm not happy with things, I'll quit and find another job. I think that this trait is more common in men, but it has certainly led to my success - pay quickly diverges with this strategy.

Then there's the social aspect. Within the office, I think that everyone talks with everyone else on pretty equal footing. That said, while I'd be totally comfortable asking one of my male colleagues if he wanted to grab a beer after work, I'd be at least more hesitant to do so with a female colleague so as not to make them uncomfortable (being married makes this a little bit less awkward for me) and I think that's not unique. People don't want to come off as flirting with a co-worker, or make them uncomfortable, and so they don't go out after work except in a group (and have no other recourse when they are the only female developer in a staff of 50). The people who do go out though end up talking about work, and end up solving problems that they wouldn't have otherwise. They also get more opportunity to move between projects as their friends move around within the company.

Then there's the awful problem of low numbers. If you meet a crummy male developer, well, he's a crummy developer. If you meet a bad female developer, she's probably a significant portion of all female developers that you've met - and so at least subconsciously, I think that for many the association becomes that female developers are bad (since hey, 33.3% of all female developers you've worked with aren't that great).

Those are the main things I think. I think that all of these can be fixed, but I think that it takes conscious effort on the part of the company and the staff to get around them. I think at the heart of it is a bootstrapping problem - there are too few female developers because there are too few female developers, and as that changes culturally things will get better. We can definitely speed it up though.

As an aside, I talked to a professor once about sexism in the computer science faculty, and he said something really interesting: while the top few students in the class are typically men due to the sheer number of people (if 90% of students are men, 10% are women, by pure statistics the top 1% will mostly be men), very rarely are women in the bottom 75% of the class. He attributed this to a lack of ego - there's a real masculine competitiveness to the computer science faculty (the goal to be "hardcore"), which women were generally excluded from. Without this ego drive, they weren't too proud to learn.

mdkess··on The software development final exam: Computer Architecture and Operating Systems
I found this http://www.akkadia.org/drepper/cpumemory.pdf to be a very good starting point for getting into serious low level development. It's a difficult read, so go through it slowly and with a pad of paper for notes, but very information dense and useful.
mdkess··on ThinkPad Design: Spirit and Essence
I have a ThinkPad (T420) too, I love it. I agree with everything that you said - nobody else comes close. Plus, their keyboards are by far the nicest laptop keyboards out there. The X220 is in my mind the perfect portable laptop... except, like every Lenovo laptop I've used, it has an absolutely terrible screen. It drives me nuts, because they come so close, and yet still miss by so much. I mean, I'm not expecting a Retina display here, but if Asus can put a 1920x1080 display on their $1000 Zenbooks, would it be too much to ask for Lenovo to put a 1600x900 panel on the X220?

My laptop - the T420 has a 1600x900 panel on it, but colors change at every angle, and I find myself constantly having to adjust it to get the angle just perfect. And even then, it's fuzzy.

mdkess··on Microsoft: Shortage of tech workers in the US becoming 'genuine crisis'
I totally agree with you on this, but I think that is a separate issue at least in that it doesn't address immigration, but I do think that it touches at the heart of the problem.

Companies like Microsoft are willing to give kids out of school $100k/year to move to Seattle, San Francisco or New York, but why not Vancouver or Toronto? The Toronto-NY connection especially feels like it should be much stronger, with Porter you can fly between the two cities from downtown for well under $200.

mdkess··on Microsoft: Shortage of tech workers in the US becoming 'genuine crisis'
As a Canadian, one thing that I don't understand is why companies don't move to Canada. I feel like working in the states, I've priced myself out of the Canadian market (since salaries in Canada for engineers seem to be about 60-70% of what they are in the US), but I can't imagine that Vancouver or Toronto would be that hard to build an office out of. Yet for the most part, companies don't. From my understanding, there would be a lot of benefits to having Canadian offices - easy to travel to the home base when needed, good health care, better immigration laws, and a lot of local talent. When recruiting, we recruit very heavily from Canadian schools. But then we take everyone back to the US with us.
mdkess··on What do you do with the Brilliant Jerk?
The nail that sticks out gets the hammer. Brilliant management strategy.
mdkess··on Want to Block Common Passwords? Sorry, That is Patented
That's an excuse if I've ever heard one. You would be so lucky to get sued. "I'd be a famous musician, but I'm worried about the publicity."
mdkess··on You're Young. I'm 18. So what?
This is a beautiful post.

Here's the deal. As you get older, more and more people fall into mediocrity. Age is a number - it's also a responsibility. You will meet 40 year olds who you'll think - what the fuck did you do with your life? And you'll meet 40 year olds who you'll wish that - at some moment of divine clarity - you'll be half as smart as. The second hand counts with stunning accuracy. Don't judge yourself against the mediocre. Look at the people who rose to the top. Some were smart at 18 and drifted off of that cleverness for quite some time until it caught up to them. Others rose above. Rise above.

mdkess··on The fall of Angry Birds
I really don't like free to play games, as they're implemented now. The current strategy is simply "pay to progress" rather than to unlock more functionality. I was playing this game called Tiny Tower, and in it, you could pay to finish building a room. If you paid for the room, you ... had another room. You could then pay for another room. The dynamic of the game didn't change, things just moved along.

Even without this, because so few people pay anything, the dynamic of the in app purchases is skewed so that you have to spend a ton of money to get anything out of your purchases (people willing to pay are willing to pay a lot, apparently). So people like me, willing to spend $5-$10 on a fun phone game but not $50, are sort of left behind.

mdkess··on Ask HN: Foreign YC Founders - did you move to California for the program?
How do visas work in this situation? Are you allowed to work on tourist visas?
mdkess··on Show HN: A multi-touch document manipulation system
This looks really awesome. For a long time, I've thought that multi-touch has been very under used, it's nice to see people thinking outside of the desktop OS paradigm. I would imagine this would be quite useful with a Wacom tablet as well - any thoughts on that?

I've never reviewed articles before, but one thought from looking at your video is that it might be nice to be able to group things in a more concrete way, for example, if you are picking out different themes from the article. I was immediately reminded of BumpTop. I think that a part that is not necessarily focused on in the video is more rigorous organization of the snippets that you take out of the article.

mdkess··on Wade not in unknown C++ waters. Shift operators .
Not really profound, but a good, quick way to think about clock cycles: A 1 MHz machine executes 1 clock cycle in 1 microsecond (ie. 1 MHz is 1,000,000 Hz, and there are 1 million microseconds per second). So a reasonable machine, say 2 GHz, executes 2000 cycles per microsecond. So when the article says 124 clock cycles to execute a shift, that's really saying that on a 2GHz machine, the instruction will take about 124/2000 microseconds - which means that 16 shifts or so will eat up an entire microsecond of CPU time. In low latency environments, that's bad. (Consider - a top tier high frequency trading firm does about 20 microseconds "round the diamond" - the time from receiving a market snapshot to the time that a decision is made and a trade is executed and put on the wire. Granted, they're not on 2GHz machines, but these things add up).

Also interesting, light travels about 1000 ft in a microsecond.

mdkess··on Ask HN: How would a foreign startup raise funds in US?
The heart of the problem is that outside of the US, the software industry just doesn't pay very well. So the people who are interested in tech leave to go to the US, then start companies there, and when these companies are successful, they fund people in the US because that's where they are and the scene that they are familiar with. I'm Canadian, it sucks how much talent the country bleeds, but it's really hard to get critical mass.
mdkess··on Ask HN: Getting a math degree as a working adult?
Nothing hurts more than regret. If you are serious about this, go for it. to test yourself, grab a Calculus book - I recommend Stewart's Calculus - and challenge yourself to work though it at a reasonable, but predetermined pace (say 1 chapter per week).
← PreviousPage 3 of 5Next →