HN user

mwd_

123 karma
Posts0
Comments46
View on HN
No posts found.

I'm not nostalgic about the old, low-resolution monitors though. The content in those design fits into 630/700 pixel wide columns and the 11 pixel text in Orchid Beauty looks tiny on my screen!

Interesting idea. I have an Android game that I've been working on for a while and I think it is pretty interesting but I just don't have the time to continue to polish it and market it. Maybe there's somebody out there who has the time to finish up the project and likes the idea of skipping the early development phase. There must be a lot of side projects like this.

One thing I find strange is how this Minnesota accent has come to represent "Canada's" accent in American pop culture. It is, unsurprisingly, somewhat similar to nearby parts of Canada (Manitoba, Northern Ontario) but it is not the accent of a large percentage of people in Canada, and it never was.

I think this was from Le Journal de Paris. "Journal" in this case actually means "newspaper" -- it was a daily that ran from the 1770's to the 1840's. I have a copy, but sadly it has no Benjamin Franklin essays in it.

I think the search function is biased pretty heavily toward more popular titles. Even if you put an obscure word in your app's description, if it is not very popular it will be behind pages of approximate matches.

I'd love to give away free copies of my Android game but I don't think Google Play supports promo codes. You also can't start out with a free app and then convert to a paid app later. Of course, a common approach is to have a free version and a paid version (or make your game ad-supported, or add in-game purchases).

"Just In", if it worked, would be great.

It's probably a lot easier to understand a larger project like a game or a website by trying to implement something substantial on your own. A lot of the obvious approaches to coding that work for small examples don't scale well for one reason or another. In the process of running into roadblocks and finding solutions (typically with the help of google) you'll encounter some of the pieces that end up in something like an iPhone app and at that point you'll probably be in a much better position to understand them.

To give a sense of what the job market is like here in Vancouver, I know a few people who accepted great offers at Google or similar companies after getting only a couple of mediocre offers locally. There are some interesting startups here for sure and I haven't had trouble finding work but the major tech employers are not on the same level as what you find in the Bay Area.

The talent drain that exists unfortunately forms a self-perpetuating cycle. It lowers the quality of remaining talent, so there are fewer successful companies, and as a result there are fewer potential tech investors of the kind they have in the Bay Area. This is a perennial problem in Canada that has affected multiple industries in a similar way.

Another local problem in Vancouver is the high cost of living. Even Toronto suffers from this somewhat. They're both pretty appealing cities but they don't necessarily have the best "price to performance" ratio.

There's no correlation

I would guess that there is a very high correlation between CS degrees and programming or problem solving ability. I've worked in a pretty good lab full of grad students and their average skill level was dramatically higher than what you find at an average company (or at least, what I've seen working at half a dozen or so places), let alone what you see from average job applicants. Upon graduation most of these people easily found jobs at places like Google. They didn't get stumped on FizzBuzz because they had spent their time on abstract academic problems without real-world application.

There are definitely some people with CS degrees who cannot code, and you don't want to hire those people. The existence of these exceptions however doesn't mean that degrees aren't a strong positive signal when you are looking to hire somebody competent.

I think there's at least some reactionary bias against formal qualifications in the software industry and in startups. Some of the old professions like law or medicine do go too far the other way, but it's just as wrong to fetishize "real world experience".

So I know the article isn't entirely serious, but the "score one for the robots" attitude seems pretty common and it's perplexing to me. Isn't this "score one for the humans", since they have created and now control a new kind of machine?

When I see robots doing new stuff I don't worry about humans becoming obsolete (whatever that means), I look forward to the day when humans are freed from the grunt work they do now.

Some people worry about losing their jobs in the rock-paper-scissors industry, but I think this is a social problem that has nothing to do with robots.

I try to ignore this stuff. It doesn't really matter if he committed suicide or not, and the folk mythology is just silly.

If you want to learn more about Turing and the Entscheidungsproblem I recommend Charles Petzold's "The Annotated Turing". It has some great supplemental explanations to go along with Turing's paper plus interesting historical details. Petzold strikes a good balance between presenting the actual work and talking about Turing's personal life.

This is what I do for Android games -- design things to be mutable and pre-allocate however many I'll need during a level. You also have to avoid foreach because it creates objects.

This is an area where C# is better. You can create classes or structs and structs go on the stack. Structs are a lot more appropriate for objects like rects.

Craigslist is a privately-owned company and was actually a non-profit at one point. In the past Craig Newmark has talked about Craigslist as a tool for community organization and so on. If Craigslist were 100% profit-driven I think it could have made a lot more money off of its huge user base.

Realistically, chances are that if you could come up with a good idea for a startup and successfully follow through before university, you will still be able to do it a few years later. Even if the startup world implodes, you'll probably just have to wait a couple more years. I would guess that the added education improves the odds for most people, and failing a startup with a degree and related career to fall back on its far better than the alternative.

Aside from university being fun, you should also be learning skills and meeting people. I'm working for a startup that started at my university and I heard about it through another student. If I decide to do a startup one day I'm guessing my experience and contacts will be an asset.

Part of the story here is that OpenGL ES isn't a new version of OpenGL, it's a different API for different platforms. It's nice if you can take old code and make it run on a mobile device easily but overall that's probably a small consideration compared to having an clean API that performs well.

If we want to focus on immediate mode specifically, it arguably shouldn't be used even in regular old OpenGL. It's slower and results in overly verbose code. Most people seem to use immediate mode because that's what most of the tutorial examples use.

Maybe one way to tackle the switch from immediate mode -> vertex arrays (and maybe quads -> triangles) is just to make some macros that take old code blocks and generate new ones.

Cartels wouldn't have a business selling something like marijuana post-legalization. Just about anybody can grow it almost anywhere so its natural market value is extremely low. I doubt there are a lot of gangs financing their criminal activity off of potato sales or whatever.

Extortion and kidnapping must be way less pleasant and much more difficult than dealing drugs. It's very hard to believe that they could scale up to be the same sort of revenue source.

As for the US and its supposed success, sure, it's better off than Honduras, but it still spends a fortune on law enforcement and has a massive prison population. I don't want to think of how many lives have been ruined over needless drug-related convictions. US demand and money are also what's fuelling a lot of the violence in Latin America.

These articles typically throw the ratio of female to male employees out there as a statistic. How do we know that gender discrimination is the biggest factor in the gender gap? It's not hard to imagine that men and women on average would have different career preferences even without discrimination.

I wonder how much this industry could be or already is locked down by patents? Anybody know? The cynical part of me worries that, if this isn't bogged down by obstructionists, then most of the economic advantage will be captured by Google or some other big monopoly.

I believe that, if this works out, it will be a huge technological improvement that will dramatically improve the quality of life of a lot of people. Imagine all the people who can't drive right now because they are disabled, for example. Many of those people who live in suburban or rural areas are just stuck inside a lot of the time. Having a car that can park itself somewhere away from where its passengers are dropped off is another big advantage. Or maybe it won't be much of a net benefit to average people because they'll have to fork over tons of money to have an automated vehicle.

Paul Buchheit wrote a good essay on identity called "I am nothing" which is closely related to "don't become anything": http://paulbuchheit.blogspot.ca/2011/08/i-am-nothing.html

I think that's the best part of this article. The criticism of Jeff Atwood's post is off the mark. Atwood wasn't being elitist, he was pointing out flaws in the theory that everybody ought to "learn to code" at a superficial level by putting in a few hours learning Javascript. For many people, more abstract problem solving skills would be more useful and the technical details will change or be forgotten.

The criticism of K&R C and so on also rubbed me the wrong way. That is a great, concise book that is still relevant in a lot of ways. If you're really good with high-level languages like Javascript or Ruby you might be able to do some good work but, all else being equal, you're more limited than somebody who also understands a wider array of programming concepts and more fundamental aspects of how computers work.

You can't just sit down and start coding for your $150 or even $70/hr though. Here are some factors I can think of that change the calculation substantially:

- You have to take time and put in effort to find good contracts. Not all work is billable.

- You will probably want to be able to show clients an app you've already created. If you can make that app a $40k earner then you are in great shape.

- You will most likely have to be willing to put up with less fun and less flexible work for clients.

I think the $40k from 3.5 months of work is amazing and would be a no-brainer for a huge number of people. The big downside is the level of risk involved and the difficulty in duplicating that level of success.

The drive up to Eureka may not even hurt your chances at coming up with one of those key insights if you've been working a lot. Sometimes breaks are good, and as others have pointed out looking at opportunity cost in terms of billable contract hours is deeply flawed.

It should also be pointed out that you probably shouldn't bother with the startup if all you care about is money and the expected value is exactly the same as predictable contract work. If it's worthwhile then either the payout should be significantly higher or there should be some reasons other than money at play that are again going to influence calculations.

Anybody have stories about negative consequences after they decided to leave at a normal time instead of staying late?

I leave at 5, assuming everything's in order, and nobody has ever mentioned anything to me. I also like to get in at 9, even if most other people arrive around 10 -- I love that quiet time in the mornings.

One thing I have noticed is that some people who work late are stuck in a horrible cycle of coming to work late, slacking off, then trying to make up for it by staying in until 7 or later.

My advice to you is that a lot of the qualifications and requirements listed in job ads are pulled out of the air, and many of them are absurd. I've seen plenty of job ads listing "5 years of iPad experience" or "3-5 years JSON experience". Obviously those are not very closely related to real job requirements. The thing to do in those cases, I think, is to look at the company, try to get a sense of what the job would be, and apply if you are interested and if it approximately matches your skill level.

The web startups with rockstar job ads may wish they had John Carmack or Bill Gates sending them resumes but I doubt it happens much. Bill Gates doesn't need to work at a little company somewhere -- he made his own company and is now a billionaire. A skilled, motivated recent CS grad is probably a great candidate for most companies.

I only did a master's degree, but the consensus among grad student friends is that graduate degrees are not worth it for money (maybe it's different if you go somewhere like MIT or Stanford -- I am talking about second tier schools). Grad school can make sense if you want to do research or some specific kinds of technical work (e.g. physics simulation for movies). It also makes sense if you enjoy it. I had a great time socially in grad school and loved working as a TA.

When you consider the "cost" of your Ph.D., you should consider the opportunity cost of the salary you could be earning, which could easily add up to hundreds of thousands of dollars over a six year period. It's also wrong to compare a starting salary with Ph.D. to a starting salary with undergrad because by the time you get your Ph.D. and work the undergrad will have 5-7 years of experience and, on average, a higher salary.

This is particularly interesting because it is common to hear complaints that (A) it is hard to find "good" people, and (B) it is hard to go through huge quantities of resumes. If those are both true then clearly it's time to worry about false negatives. Maybe failing to hire isn't such a big deal? Maybe there's an element of bravado in claiming that nobody's good enough? Or is a lot of tech hiring just horribly misguided? I'm not sure.

Personally I've got to say that I also find the "rock star" rhetoric to be a huge turn-off. When I see it in a job ad I think of how horrible it would be to have to work with a club of self-described "A" players.

The gruelling interviews are another perverse system that I think has a negative effect. If you can easily get lots of interviews are you going to bother with the five stage interview with four hours of quiz questions and "homework"?

Orange groves are nice but they're not necessarily a great form of land use in an urban area. If you build an orange grove in one location then the housing and everything else that could have otherwise been there gets pushed farther out. Distances between things increase and people have to travel farther.

It might become a great campus, but do I think something higher density with a mix of uses would be more environmentally friendly.

On an abstract level it does seem better to have a large number of young people to care for a small number of retirees, but that would create an unsustainable pyramid scheme in a country like China. Many parts of the world are already overpopulated and low fertility is pretty much the best case scenario.

All of that aside, I also think that there are factors more important than the relative number of old people in a given population. Technological development, public health, etc. are all probably more important, and some of those factors are at odds with high fertility.

Just the other day I saw a job requiring "3+ years iPad experience".

I understand the appeal of hiring somebody who needs minimal training, but they may still not be the best pick. When it comes to a long-term position, it is better to hire the great developer who takes two weeks to get up to speed with some language or technology than it is to hire the mediocre developer who happens to have used Node.js or whatever.

Can you think of an important, common situation where it is definitely better to negotiate piecemeal? Maintaining leverage and being able to trade off concessions in different areas is very important in a wide variety of situations. "Never do X" advice can be useful as a heuristic when it pays off in the average case.

One probably could develop his own good negotiating techniques over time, but that would only come after being destroyed repeatedly by highly-skilled negotiators. I think it's way better to shorten that process by learning from others.