Python plays Grand Theft Auto V - <AUTHOR> https://pythonprogramming.net/game-frames-open-cv-python-plays-gta-v/ <comment><USER2> Wow, hello hacker news! I haven't seen pythonprogramming.net load this slow in a ... ever.

Thanks for sharing my silly project!

Any ideas, pull requests, or critiques are welcome. ([https://github.com/sentdex/pygta5/](https://github.com/sentdex/pygta5/))

I'm currently working on PID control, and also contemplating switching the model to a DQN, with a reward for speed (whether this is perceived, or read from the game directly) IF we're on a paved surface. If you know about either, don't be shy.

If you hate long loading, you can watch just the videos on youtube: [https://www.youtube.com/playlist?list=PLQVvvaa0QuDeETZEOy4Vd...](https://www.youtube.com/playlist?list=PLQVvvaa0QuDeETZEOy4VdocT7TOjfSA8a)

edit: added link to github, as well as links to just the videos since pythonprogramming.net is going slow from traffic.

<comment><USER3> I'm always curious when someone shows up with a super impressive project, but has never registered a user name on Hacker News.

Can I ask "where have you been all this time" \- Do you have some other aggregator or blogroll that you follow? Do you try to avoid time wasted surfing different articles and comments? Did you know about HN before and avoid it due to its reputation, etc?

<comment><USER2> I've just never felt the urge to post on hacker news, but it's in my list of places I check frequently for news, I just lurk though. Maybe it's because I dunno how to hacker news, but I just look at the front page. Usually, by the time I am seeing something on HN, whatever I think or have to offer has already been said, usually more eloquently than I'd come up with.

I have more of a presence on reddit ([https://www.reddit.com/user/sentdex/](https://www.reddit.com/user/sentdex/)). The bar is lower there. ;)

For news, I have a bookmark dir with a bunch of sources in it, I right click and open all whenever I want to check in and see what the world is up to.

<comment><USER4> > whatever I think or have to offer has already been said

I've only been on HN for about six months now, but from what I have seen in this short time, I wouldn't let "fear" of saying something or posting something you think has already been done stop you.

Case in point: Your first posting. Look at the attention it has gotten. I enjoyed it, and others have enjoyed it. But guess what?

In my short time here I've seen other similar projects posted - and that's not anything against you or them! Ultimately, it's how we all learn from each other, and you shouldn't let prior work stop you from posting - there may be a nugget of new work or something else interesting about it that makes it worthwhile.

For instance, while your project isn't the first of its kind, I do think it may be one of the first to be done in OpenAI's GTA V universe system; even if not, it's one of the few that have been posted here - so it's relatively "fresh".

Just my observations, of course - and thank you for posting!

</comment></comment></comment></comment><comment><USER5> Here's a faster way to get a frame using PyGTK:

[https://www.pastery.net/xafjmn/](https://www.pastery.net/xafjmn/)

Takes around 5ms per frame for me, rather than 50.

Slightly shorter code (still using the same method): [https://askubuntu.com/a/400384/73044](https://askubuntu.com/a/400384/73044)

<comment><USER2> Thanks for sharing this, will definitely look into it. With the ever improving FPS, this AI's reflexes are going to be insane.

<comment><USER5> No problem, glad to have helped!

</comment></comment></comment><comment><USER6> Self-playing games ought to be newer generation's Logo's turtle!

<comment><USER7> There's something magical about creating a game AI. It's you're you're a god and you built a divine being in your diving game world.

<comment><USER8> To make an artificial player for a simulated world we'd built was part of an assignment in Dr. Robert Harper's 15-212 class when I took it at CMU. On each tick of time, each of them would randomly do one of the things it could do. To see these characters randomly pick up change, put it into vending machines, and get out guns, ammo, and more of themselves, and then collectively gun me down, was a thrilling illustration of an AI control problem. I felt like a god being killed by his creations. Mindchildren?

<comment><USER8> By the way, in case anyone knows, I would LOVE to track down the origins of this idea. A dozen years later, when I first thought to ask Dr. Harper, he did not remember the source, probably one of his TA's circa Fall 1992.

<comment><USER4> It probably goes back further than that; one could argue that things like Conway's LIFE implement certain aspects of the idea, as well as military "tabletop" game simulations (which go back a long ways). Other kinds of fantasy RPGs are similar, and then you have older video games on systems in the 1970s that could be considered.

But I think military and other more "physical" simulations likely pre-date all of this; these systems have their own rule systems for the various "pieces" on the "board", and use things like dice and other random number generators to determine how things progress.

There's also probably more than a few fictional stories which set up this idea as well.

</comment></comment></comment></comment></comment><comment><USER9> I wish GTA V has the GTA IV vehicle physics engine settings.

Driving in GTA IV feels so realistic, with so many attention to details from pedestrians that really react to small little things like misfiring of half- broken car engine and so much more.

(it's the same engine (RAGE with bullet physics), just with dumbed down settings for more noob-friendly/casual gameplay)

And not only the vehicle physics but also the damage model has been dumped down - the GTA IV one was superb. (Only totally different and a lot of more resource intensive damage models in RigsofRods/DriveNG are even more realistic.)

They had to decrease the simulation level for GTA V as the PS3/Xbox360 weren't capable to offer the richness of GTA IV on bigger scale. Sadly they never added the details back with the PS4/XboxOne/PC HD re-mastered release.

So to get the most detailed simulation one has to use GTA IV and install mods to drive around on the GTA V map. See YouTube videos, it's possible and a lot of fun.

<comment><USER10> IV was such a disappointment to me that I haven't even tried V yet. SA felt so expansive and open to me that when I played IV, it felt like I was trapped on story-telling rails.

Have they reversed that trend in V?

<comment><USER4> I'm not a gamer. I've only barely played any of GTA, but what I have I liked.

When GTA V came out, I couldn't believe the level of detail and the size of the world, and how much could be done within it (especially in "sandbox" mode). I was so stoked about it, I plunked the money down to build a dedicated GTA V Windows box (and I haven't used 'doze at home in well over 15 years). It was the first and only game to get me to do this.

Now - I'll level with ya here - I never put that box together; I still have all the pieces (it was going to be a Mini-ITX with 16 GB, GTX 970, etc stuffed in a ThermalTake Core V21) - I just never got around to it (I even bought the game on Steam).

Now I'm thinking about using all of that for a new ML workstation to replace my current aging system (but I can still use it for GTA V I guess).

I know this isn't a ringing endorsement, but if a game can make someone like me that hyped about it - to drop money into parts for a complete new system just to play the game, from somebody who isn't a gamer, nor a Windows user (or fan) - well, that game has to be something special, ya know?

The only other game that moves me like this is currently near vaporware - Cyberpunk 2077 (and I haven't heard anything recent on it, since I've been heads down in my ML course).

</comment></comment></comment><comment><USER11> A question for the author of this, or other authors who create step-by-step guides like this: do you write it as you go along, or fiddle around and then go back and write the blogpost?

Even with small commits, I usually have a hard time reconstructing the history of what I've done well enough to write it up like this.

<comment><USER2> Hey there, author here. It's just me who does the entire site of pythonprogramming.net and the youtube channel.

The way I have gone about things has changed over time, but I have found the worst way to do documentation is to write 100% of the code, the full series in this case, then go back and document/write a tutorial on it.

I used to just do the videos, but had lots of requests to do write-ups too, so I started that and really hated it at first, because I was just timing it all wrong.

So now, I usually will do maybe 1-5 videos, and then make sure to do the write-ups on them before continuing...otherwise the write-ups suffer significantly. I also try to do the write-ups in the same day, and before I personally progress on to the next topics.

It's just hard, because the last thing I want to do after I've made something that I think is cool is document it.

Other times I will actually work locally, and just either save my scripts in a step-by-step manner, or just work in an ipython notebook to save the steps I took in development, and then film the video, and then go back to the notebook to do the documentation.

Not sure that really helps much, it's an "it depends," but the main thing is to not get too far ahead of any accompanying documentation.

</comment></comment><comment><USER12> Would it be possible to read the game's framebuffer directly to get rid of the screen grab step? I'm thinking that might be faster.

<comment><USER13> With source code obviously yes, though it would need interfacing between Python and C++ (likely used in GTA V), then internal screen resizing, and as most of the time is spent in OpenCV anyway it might not give you the effect you wish to get.

<comment><USER14> You should look into method swizzling/hooking, to hook into a c++ method called on every frame, and add a line of code to save the frame buffer to disk. You can either do this at runtime via some kind of code injection, or at compilation time if you can manage to re-sign the game.

I don't know much about c++ reverse engineering but I've done this when reversing iOS apps (and this is what "tweaking" means in the jailbreak community). The same concepts should apply.

The first step is obtaining a class dump (what it's called with iOS) that shows you all the header files and gives you the information necessary to understand what's going on in a debugger so you can determine which method to hook.

Edit: this should point you in the right direction - [https://rafalcieslak.wordpress.com/2013/04/02/dynamic- linker...](https://rafalcieslak.wordpress.com/2013/04/02/dynamic-linker- tricks-using-ld_preload-to-cheat-inject-features-and-investigate-programs/)

<comment><USER15> This being such a popular multiplayer game, I'm sure the memory offsets of the position in the map/acceleration/etc are documented and you can just hook the process and read/write these

<comment><USER16> Or, because it is a popular multiplayer game (and thus prone to cheating), maybe some addresses are randomized & obfuscated.

<comment><USER15> Just google "gta 5 trainer". I'm sure there are dozens, but it's possible that none of them is open source.

</comment></comment></comment></comment></comment></comment><comment><USER17> This is really cool. I love how those "stuping, time wasting" games turn out to be - with a help from some smart individual - great learning tools.

</comment><comment><USER18> This is also relevant - [https://github.com/ai- tor/DeepGTAV](https://github.com/ai-tor/DeepGTAV) (A plugin for GTAV that transforms it into a vision-based self-driving car research environment.)

</comment><comment><USER19> Anyone know of a similar game that you can run under Linux?

I want to play with this but rather not spend the time to setup a vm and go through the whole pass-through dance or setup a dev env on windows.

<comment><USER20> Check out openai. They have a lot of Atari games ([https://gym.openai.com/envs#atari](https://gym.openai.com/envs#atari)) and a car racing game ([https://gym.openai.com/envs/CarRacing-v0](https://gym.openai.com/envs/CarRacing-v0)).

For the Atari/car racing games you get direct pixel output of the game so using a neural network for image processing is required. But other games have a much simpler environment where you can focus on reinforcement learning.

There's even classic doom. [https://gym.openai.com/envs#doom](https://gym.openai.com/envs#doom)

<comment><USER19> Thank you.

</comment></comment></comment><comment><USER21> Now this is is a great way to get people interested in coding. I'd of loved to have something like this when I was learning!

</comment><comment><USER22> Great tutorial, watched the first few when he did them a week or so ago. I was one of the people suggesting he use PID controllers. While this is a ways off, it is fun to think of a project like this evolving into an open source self driving car package. pip install jalopy, or something like that.

<comment><USER2> Any chance you know _how_ to implement PID control? I'm still throwing errors. Last night I was looking through a pull request that threw a breaking error and realized it was due to two uses of D (one for the key, one for the D in PID). Still having issues though after fixing that.

If you have any ideas: [https://github.com/Sentdex/pygta5/pull/3](https://github.com/Sentdex/pygta5/pull/3)

<comment><USER22> Yes, I do. Also, I was the guy who suggested using two PI controllers- you can probably get by without the D term. I will look at it later tonight.

</comment></comment></comment><comment><USER23> The tutorial is great and the other website resources seem to be really interesting. Glad it was shared here !

</comment><comment><USER24> I would love to have public API for Witcher3 or GTAV. Imagine all those crazy things you could do.

<comment><USER25> In a way, you do. The inputs are well defined (mouse and keyboard), and the outputs (graphics) can be captured fairly easily. Interpreting those outputs is a lot harder than interpreting a stream of "character A at point (X,Y,Z), character B at point...", I agree.

<comment><USER24> screen capturing technique also lacks things like find(X,Y,Z) or events/triggers (ex. when collision happens)

<comment><USER25> True, it fails to provide explicit notifications, but it does provide implicit notifications which could be recognized.

</comment></comment></comment></comment><comment><USER26> Wow, just wow. I am going to try doing this with my GTA SA.

I am amazed with how versatile and fun Python is!

</comment><comment><USER27> Very neat! I can't wait to take a look at this and give it a shot. The author mentioned it would be better to offload the screen capture to the GPU, would this be achieved through something like CUDA?

</comment><comment><USER28> Using python for all those individual WIN32 calls looks awkward. This interfacing would be easier in pure C.

</comment><comment><USER29> i think the main contribution from this is just finding a way to get the frames from the game into opencv. Would be interesting to see a more "real" self driving ai method with this. I.E. a CNN

<comment><USER30> Could you run GTA5 and a CNN at the same time? I think that would fry your GPU.

<comment><USER4> It can work - I won't re-post everything again here, but I've already mentioned in this thread how I used my 750 ti for training a CNN based on NVidia's End-to-End model to self-drive a virtual vehicle around a simulated track (this was part of Udacity's Self-Driving Vehicle Engineer Nanodegree).

Udacity supplied the simulator, I set up CUDA and such to work with TensorFlow and Keras under Python. I had to drop the res down on the simulator (windowed at 800x600 IIRC), and training was done without the simulator (I used the simulator to generate the datasets - this is built into the simulator). The resulting model was actually fairly small (less than 300 kbytes); I scaled down the input images (originally 640x480, scaled to 160x120) to limit the number of initial parameters to the CNN, then applied aggressive dropout and other tricks to further keep things in check thru the layers as I trained (I could have used batch processing, too). The resulting model worked well with the simulator afterward - and it had no problem with memory or anything else in order to keep up.

</comment></comment></comment><comment><USER31> yo dawg! I heard U like GTA V and Python tutorials, so I put a tutorial inside your tutorial so you can play GTA V while you're learning!</comment>


Google Reader alternatives - mkr-hn http://getgini.com/google-reader-alternatives <comment><AUTHOR> Used liferea for years. Using it now. Will continue using it.

Tangentially, it saddens me to see people forgetting about simple native desktop apps - no getting shut down; no ads; no obnoxious social bullshit; just simple tools that succeed based on being useful rather than getting their users hooked and spamming their contacts for attention...

<comment><USER2> It's not really about "forgetting". In many cases, a simple desktop app won't cut it.

Unless it also has a mobile app that syncs what I've read with the desktop app, it's sub-par to Google Reader for me personally. This is actually the most important of any feature for me.

I need to be able to go back and forth between desktop, laptop, and phone and never lose my place. I travel, co-work periodically, and like to read my feeds over lunch on most days.

<comment> at-fates-hands This is my main issue. Finding something which works across multiple devices.

One thing which I've found rather irritating with Windows 8 and Windows Phone 8 is you find a great RSS app like Feed Monster, but then its not available on the WP8 platform. I'm constantly finding good apps for the desktop which are not available on the mobile platform and its incredibly frustrating. Add then you have some great apps like Feedly which are not available yet on WP8 (and probably won't be).

I'm pretty sure I'll be moving back to Android at the end of the summer.

<comment><USER3> Actually, Feedly said that they would make apps for both Windows and Windows Phone: [http://blog.feedly.com/2013/06/04/feedly-is-listening-the- ro...](http://blog.feedly.com/2013/06/04/feedly-is-listening-the-roadmap-you- helped-us-shape/)

</comment></comment></comment></comment><comment><USER4> The feature I'm most interested in is not mentioned in this chart at all: whether my feeds will render correctly! I read a bunch of math blogs, many of which are on WordPress and use some LaTeX plugin for formulas. Many RSS readers do not render the formulas at all (I'm not sure why). Google Reader does it right, as does the RSS to email service blogtrottr.com (which is what I'm using now). Last time I tried Feedly, to give just one example, the formulas didn't show up.

I asked on /r/math for RSS feed readers that don't use Google Reader as a backend and render formulas correctly and didn't get a single answer, so I'm not optimistic. Maybe reading math blogs is too small a niche for RSS readers to bother with it?

<comment> mkr-hn The suggestion for proper math support in Feedly has 125 votes. You can add your vote: [https://feedly.uservoice.com/forums/192636-suggestions/sugge...](https://feedly.uservoice.com/forums/192636-suggestions/suggestions/3745440-latex- math-support)

<comment><USER4> Mmh. That suggestion mentions MathJax, but the WordPress LaTeX plugin many blogs use is not so fancy. That plugin insert formulas as images, dynamically generated by a PHP script, using URL's like this one:

        http://s0.wp.com/latex.php?latex=%5Cdisplaystyle+H%5E%2A%28%5Cmathrm%7Btmf%7D%3B+%5Cmathbb%7BZ%7D%2F2%29+%5Csimeq+%5Cmathcal%7BA%7D+%5Cotimes_%7B%5Cmathcal%7BA%7D%282%29%7D+%5Cmathbb%7BZ%7D%2F2%2C+&bg=ffffff&fg=000000&s=0

That is most likely much easier to support than MathJax, which involves running JavaScript code. Having MathJax support too would be great, but I'd be satisfied with the WordPress PHP LaTeX plugin thingy.

</comment></comment></comment><comment><USER5> The list confuses full feed reader services (like Feedly, Newsblur) with Google Reader clients (Reeder). Would have been nice to separate those as Reeder is certainly not a replacement for Google Reader.

<comment><USER6> Good point. I added a note for Reeder.

<comment><USER7> Reeder supports feedbin.me and it can also process the RSS itself.

</comment></comment></comment><comment><USER8> I'm using <http://feedbin.me> right now, which doesn't appear to be on the list.

<comment><USER9> I found Feedbin from Reeder saying it was going to support it, but find that the feedbin website meets my needs. Of all of the ones I've tried it was the first that seemed to refresh the feeds with seemingly the same frequency that Google Reader. $2 / month.

</comment></comment><comment><USER10> What does "Web" mean? I would expect it to mean I can access it with a web browser, but that does not seem to be the case (feedly, reeder are applications to install). It does not mean hosted either as tt-rss and stringer need to be self-hosted.

Concerning FeedHQ, it has now a paid service (free for one month, 12$ a year)

<comment><USER6> I do mean web browser by "Web". I thought Feedly used to work directly in the browser, but looks like now they require you to install it via the Chrome Web Store. I've updated the other details you mentioned. Thanks!

</comment></comment><comment><USER11> I haven't tried many of the services on this list, but I would recommend Feedly. It can be a bit slow, and the fact that it requires a browser extension is a bit off-putting, but those things are being improved I believe.

They seem to be willing to listen to their users (in particular all of the ex- Google Reader users) and are improving the service very quickly, trying to cater for everyone's seemingly different needs.

The Android app is great as well, and is a much more visual reading experience than Google Reader was (but it doesn't have to be- it seems to be very highly configurable).

The fact that it's free is a bit worrying, but in a survey they sent out last month they asked if user's would be willing to pay a small fee for it- so this might be where it heads in the future (I'd hope so, anyway).

<comment><USER12> One thing I can't figure out about Feedly is if they're using their own sync service yet or if they are still relying on Google's while they work on building their own.

<comment> mkr-hn The impression I get is that their own system (Normandy) is running concurrently, and they'll switch seamlessly once Google Reader shuts down.

</comment></comment></comment><comment> m-ramige For Emacs users, there's Gnus [1] and Newsticker [2]. Gnus doesn't support Atom feeds natively [3], so you have to call an external script to convert them to RSS before they're processed by Gnus. Newsticker supports RSS and Atom [4].

[1] [https://www.gnu.org/software/emacs/manual/html_node/gnus/RSS...](https://www.gnu.org/software/emacs/manual/html_node/gnus/RSS.html)

[2] [https://www.gnu.org/software/emacs/manual/html_mono/newstick...](https://www.gnu.org/software/emacs/manual/html_mono/newsticker.html)

[3] <http://www.emacswiki.org/emacs/GnusRss>

[4] <http://www.emacswiki.org/emacs/NewsTicker>

</comment><comment><USER13> Doesn't seem to consistently note which options you host yourself vs which are hosted elsewhere. E.g. I see Fever has a note that it is self-hosted, but tt- rss does not have a similar note.

Nice long list though. I guess it's almost July, I need to get on this.

</comment><comment><USER14> Great list!

I'm holding off to see what the 'Digg Reader' has to offer before making a final decision.

Looks like it's going to be Feedly though. I was pretty much sold when I heard that Reeder (iOS) and GReader (Android) will both sync with it.

</comment><comment><USER15> I have been using feedly, but it keeps asking me for logging in to google after every session. I wonder what will happen once reader goes down. That and it looks/feels bloated.

</comment><comment><USER16> I'm not as heavy an RSS user as I was, but I use newsbeuter. Minimal, light, fast.

<http://www.newsbeuter.org/>

<comment><USER6> Thanks, just added newsbeuter. I'm sorry I haven't added collobaration to my list app, otherwise I'd credit you properly. But I've linked to this discussion as a source.

</comment></comment><comment><USER17> They're going to have to pry Klipfolio 5 from my cold, dead, internet-hands. I still find it the most awesome RSS reader - as a bonus, you can program it to do pretty much anything as it is a full-fledged KPI program. v.5 is the last consumer-oriented one they put out, after which it disappeared, but you are still able to find it about. Give it a try if you like a desktop version!

</comment><comment><USER18> I'm reluctantly probably to go with Feedly for now, even though the "slickness" of the experience really gets in the way, the preferences are limited, and the page-by-page flipping on Android is maddening. I skim in streams, not blocks.

Newsblur was my second choice, but I found it too busy and cumbersome. That arrow that follows your mouse vertically that you can lock/unlock was the last straw.

</comment><comment><USER19> Here's another self-hosted option I came across in my search for a Reader replacement <http://projet.idleman.fr/leed/> The site's in French but Google translate works well and it seems the developer has done good work on this project.

Thanks for the comprehensive list I now have more options to consider for a home hosted replacement.

</comment><comment><USER20> I use <http://www.feedsapi.org> to forward all my expanded rss to my email account, On the web I use it in combination with Feedly to read fulltext rss feeds, and on my desktop, I use snackr + <http://www.feedsapi.org> .

</comment><comment><USER21> I've been using Tiny Tiny RSS since Google Readers announcement of shutdown. It's worked really great and since you can host it yourself the only person you can blame for it getting shutdown is yourself. The updating of RSS feeds is a little janky, but certainly not a show stopper. I have been very happy with it so far.

</comment><comment><USER22> Just a quick note, you have Feedly as "Chrome, iOS, Android", but it also has at least a Firefox plugin.

<comment><USER6> Ah I see. I originally had it as "Web" but then it only showed me Chrome (because I'm using Chrome). Changed back to Web since they have addons for FF and Safari too. Sorry IE :-p users

</comment></comment><comment><USER23> I'm still looking for one with a spiffy UI, a backend written in Python with Flask not Django, and not using MongoDB as a back end. I'd piece together my own but it's tempting to just use NewsBlur or one of the others that don't quite meet all those but see active development.

<comment><USER24> Why do you care what the backend to your newsreader is? You just need to access the UI, who cares what's driving it. If there are reliability issues it's because it's poorly built not because of the technology it's built on.

<comment><USER23> Because I'm going to be self hosting. Obviously some things are more likely to have reliability issues than others.

<comment><USER24> Ah gotcha - didn't realize you were planning to self host, that makes sense.

</comment></comment></comment></comment><comment><USER25> Here's a list with mostly _shortcomings_ of some RSS readers: <https://gist.github.com/bdsatish/5627447>

<comment><USER26> BTW, feedbin.me DOES work on mobile. The layout adjusts and shows just the list or just the article view, instead of both at the same time.

</comment></comment><comment><USER27> It would be good to know which of these readers has a sustainable business model. For example, Feedly is free. After Google Reader, I'm not sure I can trust that.

</comment><comment><USER6> Thanks for re-submitting this. I submitted this earlier when the Google Reader shutdown was first announced. Any more additions or suggestions most welcome.

</comment><comment><USER28> I use <http://www.FeedRebel.com> (Disclaimer: I built it), can you add it to the list as well.

<comment><USER6> Added, thanks.

</comment></comment><comment><USER29> Unfortunately, I feel like this list is so long it ends up being useless.

You did miss FeedWrangler too. I guess it wasn't out at the time of the other thread.

<comment><USER6> I see your point, but I made this list so that people can see lots of alternatives. Feel free to make your own list with just the ones you think are good. That's really the idea of Gini - it's meant to be like a Github for useful lists of data. Collaboration and forking coming soon!

I've added FeedWrangler now, thanks.

</comment></comment><comment><USER30> Count this as a strike against Yanobs after spamming its entire userbase with a few hundred emails (while CCing everyone ta boot).

</comment><comment><USER31> netvibes.com is free and good, just wish they would implement showing youtube embeds properly, other than that it does what I want</comment>


Ram's 10 Principles of Good Design (Apple Design Chief's Main Influencer) - <AUTHOR> http://en.wikipedia.org/wiki/Dieter_Rams#Rams.27_ten_principles_to_.22good_design.22

<comment><USER2> An exhibit of his work is scheduled to start (if it hasn't already) at the SF MOMA.

A friend of mine worked as a curator for its stop in Korea and it was pretty cool. You can tell how much the original iPod and iMac were inspired by his work.</comment>


$99 Ouya (Open Source Game Console) Retailed Today ... Sold Out Today - <AUTHOR> http://www.forbes.com/sites/davidthier/2013/06/25/99-ouya-console-hits-retail-today-already-sold-out-at-amazon/

<comment><USER2> Got mine when it was on kickstarter</comment>


Three Ways to Manage Rising Gas Prices - <AUTHOR> http://www.triplepundit.com/2012/02/three-ways-manage-rising-gas-prices/ These strategies break down into three general methods of management <comment><AUTHOR> Fortunately there are a few things that can be done to manage the new era of high fuel prices and add money to the company's bottom line.</comment>


Ask PG: Next YCombinator round winter 2013? - <AUTHOR>

I noticed that the next ycombinator round is mentioned as winter 2013 at http://news.ycombinator.com/apply. Is this a typo or is there just the one round this year? Thanks! <comment><USER2> That's not a typo. Winter 2012 Passed already. Winter (season) is December through March but for the typical YC term, it is usually January through March (for Winter), hence 2013 for the next YC batch. Summer is the second batch of the year.

<comment><AUTHOR> Thanks for the clarification! Do you know when the application process typically starts for the winter round?

<comment><USER2> It should be soon. I don't remember the exact dates but pretty sure its coming up within the next month or so.</comment></comment></comment>


The Hidden Messages of Colonial Handwriting - <AUTHOR> http://www.atlasobscura.com/articles/the-hidden-messages-of-colonial-handwriting <comment><USER2> Fascinating. I bet this would be even more powerful with a homoiconic language like Hebrew: [http://www.chabad.org/library/article_cdo/aid/137068/jewish/...](http://www.chabad.org/library/article_cdo/aid/137068/jewish/Letters- of-Light.htm).

And then penmen would have gotten what they wanted working with the tools of God: the hebrew letters are considered to be the foundational creative and substantive components of the Universe, so they would have been a priesthood of sorts guarding a lot more than social class: [https://en.wikipedia.org/wiki/Sofer](https://en.wikipedia.org/wiki/Sofer)

<comment><USER3> > a homoiconic language like Hebrew

What does "homoiconic" mean in this context? (Google doesn't help.)

<comment><USER2> The letters look like what they mean. This series goes through each one: [http://www.chabad.org/multimedia/media_cdo/aid/1930265/jewis...](http://www.chabad.org/multimedia/media_cdo/aid/1930265/jewish/Letters- of-Light.htm)

</comment></comment></comment><comment><USER4> "Round hand" as demonstrated by penman George Bickham in this article makes me feel so pedesterian, I'm compelled to burn all my diplomas and degrees.

<comment><USER5> Bickham Script ([https://www.fonts.com/font/adobe/bickham- script](https://www.fonts.com/font/adobe/bickham-script)) can help you feel a little classier!

</comment></comment><comment><USER6> The funny thing is that Washington's handwriting is far more legible to me (a European) than my own great-grandfather's - even though great-grandpa had an extremely neat and regular handwriting.

I guess US handwriting styles won out at some point - or maybe it was the German-inspired handwriting that lost out.

<comment><USER7> Haha, really? I can't read almost a word of that. "Alteration also to such thumps as you shaker coin a fit subjects for communication on the occasion."

</comment></comment><comment><USER8> Personally I find the italic and cursive writing styles very illegible. They are very stylish and nice to look at. But I have a hard time reading anything written in a "stylish" font.</comment>


Show HN: Sellfy Market – Discover best digital content directly from creators - <AUTHOR> https://sellfy.com/

<comment><USER2> First thing I'm missing is, "Why not games?"

Second thing is as a creator, why not use Patreon, Indiegogo, Gumshow, or IndieAisle. Most of my books are on all the major platforms, outside of Google Play.

I can't see a compelling reason I'd list here, or shop here. The design is decent, but it feels a bit...generic.</comment>


Here's the thing about debt: It's not nearly as bad as everyone says it is - <AUTHOR> https://www.washingtonpost.com/posteverything/wp/2016/06/07/heres-the-thing-about-debt-its-not-nearly-as-bad-as-everyone-says-it-is/ <comment><USER2> I--and I suspect many others of my generation--wonder a great deal about this trumpeting idea that "Debt is good! Take on debt! All hail our moneyed overlords!".

The article makes the point that debt is taken on expectations of future growth, and that it is in fact what enables the creation of engines (personal or commercial) to realize that growth. I think that that's a crucial point to make: debt itself is not terrible.

The author though fails to really explain (beyond a slight waggling of eyebrows and insinuation that it is peoples' own fault) that the future payoffs look worse and worse. Anybody who saw the housing market tank in '07 will never assume (one hopes) that their homes are going to be worth anything near what they paid for them. Anybody who was ever had been smacked around by the arbitrary cost structure of American healthcare is not going to assume that that debt will be managable.

Hell, anybody who is currently dealing with the rolling boulder of debt from going to a top-tier school and studying something useful is still acutely aware that things might not pan out.

It's absurd to pretend that somehow taking on debt builds character, that it allows access to opportunities (empirically shown to be unlikely at best), or anything else.

Don't buy what they're selling, credit or not.

<comment><USER3> > The article makes the point that debt is taken on expectations of future > growth, and that it is in fact what enables the creation of engines > (personal or commercial) to realize that growth. I think that that's a > crucial point to make: debt itself is not terrible.

Quite true. Of course, not everyone who receives a good education, even in an in-demand field is guaranteed success. Once you've built up all that nondischargeable debt and real life happens, that rosy outlook may get a bit tarnished for some.

> The author though fails to really explain (beyond a slight waggling of > eyebrows and insinuation that it is peoples' own fault) that the future > payoffs look worse and worse.

Don't you know that being successful is the highest of virtues, while not succeeding is considered a mortal sin?</comment></comment>


Ask YC: Gandi.net experiences? - <AUTHOR>

Does anyone have any experience with Gandi.net, particularly as far as hosting goes? <comment><USER2> I was going to move towards them because I had heard several very good reviews, but when I tried to purchase a domain through them some error came up with my credit card. I don't know if it was because it was a French site or something, but regardless I didn't move my domains.

</comment><comment><USER3> I've bought a few domains with them.

I really wish I'd bought all my domains with Gandi. Terrific service, great prices and a lovely site.</comment>


Show HN: Blasjs – Pure Javascript implementation of BLAS - <AUTHOR> https://github.com/jacobbogers/blasjs <comment><USER2> While impressive and seemingly well put together, I can't help but think that if you're doing numerical computation like this, JS is simply not the way to go.

<comment><USER3> I have a system that does complex simulations on a cluster running numpy, and I'd love to be able to kick an ndarray back to the frontend and it be able to do translations of that data in response to users toggling sliders.

<comment><USER4> Are you not able to use a Jupyter Notebook with ipywidgets library for this?

<comment><USER5> That relies on a python backend.

<comment><USER6> So what? They stated they were running numpy, so the scaffolding is already there.

</comment></comment></comment></comment></comment><comment><USER7> For most WebGL a 4x4 matrix multiply is all thats needed. GLSL will implement the basics. But all the 3D libraries include matrix ops: threejs, babylon, etc. Then there are standalone math libs like glMatrix and math.gl from Uber. There is even a WebAssembly accelerated library: glmw.

Just really curious what sort of simulations or applications one would build with an in-browser BLAS implementation ;)

<comment><AUTHOR> This library is for fast scientific computing, you can use it for games (its 100k minified and the matrix algos are extreemly fast),

</comment></comment><comment><USER8> I would be curious if you've done any benchmarks. It would be interesting to know how close this gets to a "naive" and "expert" regular L3 BLAS.

<comment><AUTHOR> BLAS is BLAS there is no "naive" or "expert" or "regular" variant.

</comment></comment><comment><USER9> Impressive! I think you've found the least appropriate language for a BLAS reimplementation.

<comment><USER10> Atwood's Law: any application that can be written in JavaScript, will eventually be written in JavaScript. [0]

[0] [https://blog.codinghorror.com/the-principle-of-least- power/](https://blog.codinghorror.com/the-principle-of-least-power/)

</comment></comment><comment><USER11> TypeScript is not "pure" JavaScript. I understand Microsoft has embraced the JavaScript open source ecosystem and extended it, and recently bought the place where most JavaScript open source developers collaborate. But I would not go as far as to say Microsoft's TypeScript is the new JavaScript just yet.

<comment><USER12> The appeal of "Pure JavaScript" that they're alluding to is the that this library can be used in any compliant JS environment. The value proposition is no platform dependencies.

<comment><USER11> The description says "Pure Javascript manually written". But it's not. It's actually TypeScript, which if you set up the right environment and install Microsoft tools - it can be compiled to JavaScript. This makes new developers believe that JavaScript is a Microsoft product and that you need Microsoft tools to develop it.

<comment><AUTHOR> * the distributed bundle is always javascript, * it is manual re-write from BLAS reference. * Typescript is a superset of Javascript,. * the repo is selfcontained, "npm install" will install webpack and all tools you need to build the bundle.</comment></comment></comment></comment>


Show HN: Iguana, a micro-ODM for AngularJS - <AUTHOR> https://github.com/pedago/iguana More info here: http://blog.pedago.com/2013/11/04/pedago-releases-3-angularjs-projects-to-the-open-source-community/ <comment><AUTHOR> More info in the associated blog post: bit.ly/Hr9HSQ</comment>


Why Canada Has No Big Tech Companies - <AUTHOR> http://blog.contentdj.com/2013/07/20/why-canada-has-no-big-tech-companies/ <comment><USER2> One thing that is rarely stated is a California law that things you do on your own equipment and time belong to you, not your employer. (Conflicts of interest aside.)

This let people experiment on the side, which sometimes failed, but sometimes discovered something useful. It takes some of the risk out of startups in the very early stages. By contrast my employer in the UK at the time claimed that anything I invented while employed by them (eg new cat food) would be owned by them, no matter how unrelated and no employer equipment used.

<comment><USER3> Do you know what the legal basis for this is in the UK? I'm curious and google doesn't seem to be giving me anything useful.

I also don't see how this could practically apply to all intellectual property you create whilst employed otherwise you would be open to being sued for posting on a blog since you are distributing the companies IP (i.e the words you wrote) without the companies permission.

<comment><USER2> The employment contracts will include clauses to that effect. All the company has to do is wait till you do something that appears successful and then jump in. When I worked in the UK all employment contracts I was given also prohibited any work elsewhere without company permission - eg you couldn't also work part time at a local supermarket. That is something I have never seen in California employment contracts.

An example of California law working is that the founders of Hotmail were working for other companies when they wondered why you couldn't access email in a browser. eBay was a similar hobby project.

<comment><USER3> I'm curious how enforceable this clause would be in the UK since it is usually considered to have more employee-favoured legislation than the US.

<comment><USER4> You forget that we're comparing employment law in one US state versus the employment law in a whole nation.

<comment><USER3> Huh? I'm just asking a question.

</comment></comment></comment></comment></comment></comment><comment><USER5> I have to disagree with Terry's sentiment.

It's impudent to Vancouver's culture--and more generally the world--to insinuate that we're "blindly [competing] to build the next Silicon Valley". We're not. Canada's not. Vancouver's liberal lifestyle is innate, not superficial, not a failed attempt to clone Silicon Valley. And our immigration policy is definitely not to "bring immigrant entrepreneurs together"; it's the result of a small population, the demand for skilled workers[1], and the correction of a historically xenophobic foreign policy. This creates a large influx* of liberal and skilled immigrants--known risk takers. Hence the entrepreneurial honeypot (our social programs help). It's necessity that's bred Vancouver as a technological center, not ambition. Thus, similarities to Silicon Valley are purely coincidental, or are the result of correlated effects rising from the increasingly entrepreneurial working force.

As for investors? I don't know enough to comment.

[1]: [http://www.engineerscanada.ca/files/w_Engineering_Labour_Mar...](http://www.engineerscanada.ca/files/w_Engineering_Labour_Market_in_Canada_oct_2012.pdf) [2]: [http://www.gamedevmap.com/index.php?query=Vancouver](http://www.gamedevmap.com/index.php?query=Vancouver)

*: Immigration levels have been relatively low, recently

<comment><AUTHOR> Don't get me wrong. Vancouver is a much better city to live in. I love it here, and it's where I will eventually settle down.

My point is on the investors' side. Investors play a big role in the tech startup ecosystem.

When you have investors who don't get tech and who just want to get rich quickly, you run into serious problems on the road to build the next billion dollar company.

</comment></comment><comment><USER6> I'm originally from Vamcouver and spent the majority of my 20s there working in the Games Industry before switching more to web and mobile and then moving to the US for last 5 years. So I've obsessed and tracked this topic. I've lived in many States in the US as well as Montreal in Candada.

I think reading Steve Blank's Secret History of Silicon Valley gave me the best break through in understanding of why Silicon Valley is so dominant in tech. [http://steveblank.com/secret-history/](http://steveblank.com/secret- history/)

There's just been decades and decades and billions of even World War and Cold War money poured into into it's infrastructure. The shear amount of money and momentum of peak US effort seems nearly impossible to catch up to.

My best advice to other locations is to tie into SV as best as you can and of course focus on getting to scale by bringing in external to your local economy revenue and partnerships to bootstrap, but regardless it's gonna be a long haul. SV is the Holliwood of programmers and its best to acknowledge that. If you are an actor in Canada you know you are likely going to stay small time unless you go down North West for example and break out or stick to a niche.

<comment><USER7> Location was important some years ago, but I think it's less and less relevant now. I think you can create amazing technology anywhere (in Latin America, in Europe, in Asia etc.)

Skype is a great example of this: they created a billion dollar company in Europe; and most of the development was done in Estonia (a country of about 1.3 million people, much less than most bigger cities).

Asia, especially Taiwan and South Korea, have some amazing examples as well (like HTC, Samsung, Asus etc.)

<comment><USER8> Yes, but it was a big deal 10 years ago, and still is today.

And it may still be relevant because of face-to-face interactions. No, Hangouts won't cut it

And Github has probably done a lot for remote work, but there's still a gap

</comment></comment></comment><comment><USER9> > _Why Canada Has No Big Tech Companies_

Here's an explanation:

Because Canada prefers many more smaller companies, that actually employ people, instead of few billion dollar tech darlings with a sub par personel and even less taxes paid?

How about: why California is bankrupt, as a state, and with large swaths of the population in utter poverty, despite having the worlds largest tech companies?

<comment><USER10> California employees pay state income and sales taxes. If you broke up a large company employing 10,000 Californians into 100 small companies employing 100 Californians each, not much would change.

I refer you to historical growth of California revenues [http://www.dof.ca.gov/budgeting/budget_faqs/information/docu...](http://www.dof.ca.gov/budgeting/budget_faqs/information/documents/CHART-J.pdf) It's boom-driven, so you get revenue shortfalls during bust years, but on the aggregate the revenues are growing - the $97 billion of revenues in 2013-2014 budget years is still higher than 5 or 10 or 15 years ago.

Perhaps if your revenue is consistently growing, and you still cannot run a balanced budget, the problem might be on the spending side?

<comment><USER11> Yeah, the Liberal types like their social programs, and the Conservative types like their lower taxes, and no one has actually tried to reconcile those two opposing pulls.

I don't know why that obvious contradiction was never tackled. I would like to think it's because the Hollywood execs of SoCal and the ex-hippie/Silicon Valley combo of NorCal are so geographically far apart that they don't talk, but that's too simplistic, I'm sure.

<comment><USER12> Both Hollywood and Silicon Valley have what the economists call Cumulative Advantage. IOW, network effects with critical mass make them "the" destination for a people with a certain dream.

</comment></comment></comment></comment><comment><USER13> The fact that Canada doesn't have a bunch of over-valued VC funded firms doesn't mean we are unsuccessful in tech, or that we don't have any big tech companies.

Not sure what definition of 'big' the auther is using, but CGI has revenue of 10+ billion per year (more than double that of Yahoo), RIM also has revenues of over 10 billion (despite their recent troubles), and there are a whole bunch of fairly large tech companies that aren't well known but do a whole lot of revenue... [http://www.branham300.com/index.php?year=2011&listing=1](http://www.branham300.com/index.php?year=2011&listing=1)

The measure of economic benefit isn't just the creation of big firms, but also the amount of people employed, money put back into the economy, etc...

It is true that our investment community is far more conservative, but then again, we weathered the 'recession' better than most, and have one of the healthiest banking sectors in the world...

</comment><comment><USER14> This kind of collective hand wringing always gives me a chuckle. I'm from Vancouver and moved down to the valley in 1998. My rationale:

      - Vancouver has a high cost of living without commensurate salaries (and often no equity).
      - Because of the wealth of technology companies, it's easy to find a job here.
      - The weather (at least in the valley) is far better than sitting in the rain (Vancouver), or snow (rest of the country).
      - Quasi-reasonable immigration policy (TN-1 visas are easy to get, although have weird drawbacks)
      - A common language, and a fairly similar culture.
      - Proximity to home (it's only a 2 1/4 hour flight back to Vancouver with no time change -- can someone start flying out of SJC instead of only SFO?).

The start-up culture really fuels the tech industry here. Since moving in '98, I've been through two IPOs where both companies ended up having billion+ dollar valuations. I think the reason why it's so successful is because of reasons I (and others) have already mentioned, but also because of:

      - decent universities
      - former military/government technology jobs
      - easy access to capital

and probably most importantly, past success. The Bay Area has this unique ecosystem where companies have been bootstrapped from nothing except an idea, and that gives other people confidence to try their own hand at a startup. This feedback loop is what keeps the valley humming.

After having been so successful being an employee at two startups that did well, I started my own company a couple of weeks ago. It's absolutely amazing the amount of support you get here, and the network of people who you can tap to ask questions and help out in your venture.

Vancouver and Toronto both have parts of the equation, but they don't have the whole package. And neither of them have the kind of past success which breeds future success.

<comment><USER15> Can't speak to the VC angle.

I think a lot of the Bay Area power comes from having so many tech folks in one place, which is hard for Canada to manage anywhere given population. In the Bay Area, you can go for a coffee or a beer and run into a bunch of tech folks and something may come out of that. There's no where in Canada where tech has the density to make that happen in a random way (maybe Ottawa or Waterloo back in the day).

Immigration can help, for sure bringing smart minds in is never a bad thing. I've only lived in Ottawa and Toronto, I think creating the critical mass of tech folks is difficult in those cities which have other more dominant industries (government and financial/cpg respectively).

Agree that past success fuels the mentality that builds the future.

</comment></comment><comment><USER16> I've spoken with several start-up founders in Canada who have looked for investment. Many have moved to the US because they find that most investors here are only going to invest in something already making money. They are scared of market potential and helping to cultivate start-ups. It's a cultural thing and it won't change because we aren't American.

<comment><AUTHOR> So, my startup is actually ramen profitable at the moment. I spoke with some local investors. The deal was to owe 30% equity in exchange for 10 enterprise clients (around $100/month)! Guess what, these are investors coming out of mining industry... Unfortunately, they don't care about the company, they care about their piece of the pie.

It's a pity.

<comment><USER17> Why are you even talking to mining investors about your tech startup? I've never heard of a tech entrepreneur in Canada taking that angle before. Everyone else talks to tech focused investors. Have you tried that? Happy to help....

<comment><AUTHOR> Actually, I was not even raising money. I just had coffee with one of them without knowing they were investors. I haven't talked to any investors other than that. Just been focusing on building the startup. I will take on your offer for later though. My email is jerry-at-contentdj-dot-com. What's a good way to reach you?

</comment></comment></comment></comment><comment><USER18> If you eliminate mining, energy and banking Canada has essentially no internationally relevant big companies whatsoever. RIM and Bombardier are the only ones I see on the TSX 60 and the former is in its death throes. The future looks grim for Canadians.

[http://en.wikipedia.org/wiki/S%26P/TSX_60](http://en.wikipedia.org/wiki/S%26P/TSX_60)

<comment><USER19> Why discount those industries? If you eliminate legs and arms, I have essentially no limbs. But I get by...

<comment><USER20> I can't speak for OP, but I suggest that they're highlighting the fact that instead of a broad base of large companies in a variety of industries, Canada's big company wealth is highlighted in a narrow set of verticals.

This means that corporate investment might be more slanted towards that areas, and it also means a narrower set of potential customers for a given application.

<comment><USER19> I know what you mean, and I'm sure that's what the OP intended, but these "verticals" are energy, minerals and money. Literally everyone needs these things, which is the definition of a horizontal market.

Anyway, as a Canadian computer scientist I'd be very happy to see knowledge industry grow here.

</comment></comment></comment></comment><comment><USER21> This article is way off from what I thought was the consensus; there were a shit ton of grant dollars going into CA universities from the US govt, and silicon valley is where it is because Stanford (I'm simplifying a lot and ignoring other details, but to a first approximation I thought that was the consensus view).

Someone please correct me if I'm wrong, but the article's not convincing me. e.g. quotes like this, _" Do you think Google will be a billion dollar company had they license the technology to Yahoo?"_ Yes, since they did. They also would have sold to Yahoo IIRC but Yahoo didn't want to pay enough (cite: [http://www.paulgraham.com/googles.html](http://www.paulgraham.com/googles.html)).

<comment><USER22> I don't think that's the whole consensus, though it's certainly part of it.

Silicon Valley's success is commonly attributed to being within proximity of two major schools (Stanford and Berkeley) fueling the talent funnel. But that is far from a sufficient explanation.

Massive government investment in R&D helped birth the first semiconductor and aerospace companies that helped create the first critical-mass concentration of tech industry and talent.

And those were just the baby steps. The current behemoth of the Silicon Valley machinery is sustained in large part by the enormous amount of investment, as well as ease of access to said investment. Modern startups go to/stay in the Bay Area largely for funding reasons.

> _" They also would have sold to Yahoo IIRC but Yahoo didn't want to pay > enough"_

And therein lies the difference between Canadian tech and Silicon Valley tech. In Silicon Valley Google had enough funding to keep going and reject Yahoo's offer, and thereby growing by leaps and bounds into the giant company we see today.

If they were in Canada, they would almost certainly not have had the funding, and be pressured into an early sale for less, and Google today would probably be a sub-brand of some stodgy old behemoth of an enterprise-tech company.

Funding is, IMO, Canada's biggest problem. I've worked in the Toronto side of the software industry, and still know some people on that side. Canadian tech is dominated by either very large enterprise software firms, or slow-and- steady small businesses. There is no readily available investment source to perform the type of "grow fast, shoot for the moon" type of startups that the USA is known for (see: AirBnb, Square, etc, companies that took enormous amounts of funding very quickly and scaled just as quickly).

A startup in Canada means going for profitability very quickly, and being doomed to a slow-growth strategy, as large chunks of cash are nowhere to be found.

On a more sombre/cynical note: as a Canadian expat in the US tech industry, I basically have given up hope on Canadian tech. The first step is for the industry, government, and everyone to acknowledge that Canadian tech is fundamentally dysfunctional. And I just don't see this happening. Every opening of another satellite office that exploits the large salary gap is greeted with pomp and circumstance and speeches about how Canada's being recognized for its unique technological prowess.

Gag me with a spoon.

<comment><USER23> _Every opening of another satellite office that exploits the large salary gap..._

I was under the impression that the satellite offices aren't just to exploit the wage gap, it's also to set up a pipeline to get more foreign engineers to the SV based motherships through the TN-1 visa.

<comment><USER22> This is true. Some are there are glorified waiting rooms. Others are "legit" an employ actual Canadians - the latter type tend to pay dramatically less than their American counterparts, and exist largely to "insourcing" tasks to a cheaper locale.

I worked for one of them, was not fun. Everything we did was basically something management didn't want to pay a $120K Californian to do. Without the giant salary gap these satellite offices simply would stop existing.

</comment></comment></comment></comment><comment><USER24> I think something that a lot of people overlook in the rush to create the next silicon valley is the role the cities in/around these potential tech hubs play in their rise to prominence.

B2C tech startups cannot takeoff in places that don't have really high densities of people because places like that wind up having the people with the mentality to use technology to get ahead/make their lives simpler. Because of the high demand for access to pretty much everything in these kinds of cities, people there will be more likely to try new things to get an edge. Is it an accident that the big consumer startups tend to come from SF, NY, and Boston?

This doesn't seem to be a big deal, but as an example you can probably see how it helped foursquare(SF) pull ahead of Gowalla (Austin) in the location app shootout of a few years ago. Its the reason why Austin will probably not become a real startup powerhouse for another couple of years (as more and more people stream in here).

B2B is a little easier because businesses have more uniform needs that aren't usually dependent on city characteristics. But then again, a place with a higher concentration of businesses per capita will usually have that edge.

I think this is why you see smaller cities having startups that are more successful at B2B (Austin for example) but not so much in the B2C scene ... in fact the exact thing that the writer mentions in his article happens here where startups get bought out by their competition in Silicon Valley or other places.

I guess the point I'm making is for Canada to get a successful tech startup scene going, concentrate on high density cities (Toronto?) otherwise see what edge you can give companies that do B2B startups.

<comment><USER25> > B2C tech startups cannot takeoff in places that don't have really high > densities of people because places like that wind up having the people with > the mentality to use technology to get ahead/make their lives simpler.

One reason I find this unconvincing is that Toronto specifically has very similar size and density characteristics to the Bay Area. Toronto's metro area has a comparable population [1][2]; and before it was amalgamated with its suburbs, the city itself also had a very similar population and population density to San Francisco [3][4]. Toronto is also home to U Toronto which has one of the world's top CompSci departments. I suspect there is some sort of policy problem at work here rather than a lack of density, possibly as banal as drawing from a smaller talent pool.

[1] Toronto/Hamilton/Niagra area: 8.7 million [http://en.wikipedia.org/wiki/Golden_horseshoe](http://en.wikipedia.org/wiki/Golden_horseshoe)

[2] Combined San Jose/SF metro: 8.37 miilion [http://en.wikipedia.org/wiki/San_Jose-San_Francisco- Oakland,...](http://en.wikipedia.org/wiki/San_Jose-San_Francisco- Oakland,_CA_Combined_Statistical_Area)

[3] Old Toronto: Population 736k, density 19,600/mi^2 [http://en.wikipedia.org/wiki/Old_Toronto](http://en.wikipedia.org/wiki/Old_Toronto)

[4] San Francisco: Population 812k, density 17,620/mi^2 [http://en.wikipedia.org/wiki/San_francisco](http://en.wikipedia.org/wiki/San_francisco)

<comment><USER22> > _" I suspect there is some sort of policy problem at work here rather than a > lack of density, possibly as banal as drawing from a smaller talent pool."_

I'm a Canadian who grew up, went to school in Canada, and am now in the US. The problem is _very_ simple and can be summed as such:

A skilled software developer can make double to triple their salary _easily_ by moving to the USA. And Canada and the Us have a legally porous border when it comes to exchanging workers.

 _Double to triple_. I shit you not.

This is a _huge_ part of what holds Canadian tech back. What kind of talent pool are you looking at when the US pays so much more, and there are relatively few legal barriers to taking these opportunities?

<comment><USER25> My girlfriend is Canadian but this is exactly what prevents us from moving there, I love Canada as a country.

But something's missing from this equation.

If wages are low in Canada because there is a glut of workers relative to the number of jobs, then why doesn't the sector expand to take advantage of the low wages?

Contrarily, if the sector is small because high wages attract workers to the states, why can't Canadian companies pay as much as the American companies? There's nothing magical about America that allows its startups and companies to pay so much; Canada isn't particularly poor itself and its companies don't even have to pay for workers' health care.

Either way, there has to be a deeper reason.

<comment><USER26> Wage rates are less elastic than simple supply/demand until you get to macroeconomic scale.

I'm obviously not an expert on Canada, so I'll try to illustrate one way it might work, but please feel free to shoot this full of holes...

Say companies in Canada start by paying their employees half of a competitive wage. Not all employees will notice. The ones who are willing to move thousands of miles will eventually disappear but there will always be new hires, right? Thus the management gets away with low wages.

I _have_ seen this exact scenario play out in several locations in the US, but not Canada.

In this scenario, the company slowly accumulates B and C players who drag down the company's reputation: death by a thousand paper cuts. The company doesn't _die_ outright, but everyone just thinks, "Oh, not a Silicon Valley level company."

At that point the company will never make enough money and can't even dream of raising wages.

Only at that large scale (companies competing for talent and then trying to turn their talent into revenue) do you start to see the effects of their salary range.

<comment><AUTHOR> \- In this scenario, the company slowly accumulates B and C players who drag down the company's reputation: death by a thousand paper cuts. The company doesn't _die_ outright, but everyone just thinks, "Oh, not a Silicon Valley level company."

Interestingly, you just described what happened to RIM.

</comment></comment></comment></comment></comment></comment><comment><USER27> This is complete bullshit. The logic is: create entrepreneur culture to create huge companies. This is not how huge companies arise, rather a healthy small business culture is created. As it turns out, tech in Canada at this scale is vibrant. A single example: the number of mobile development companies in Toronto is staggering (a huge number of iOS apps are developed in Toronto).

<comment><USER28> I'll have to admit that is exactly how my family thrived. Parents with little to no education, survive by creating a small business when no one would give them a job.

</comment></comment><comment><USER29> I don't live there, so maybe I'm missing something, but is Silicon Valley really something to glamorize and try to replicate? I always thought that technology is supposed to be distributed rather than centralized. Centralizing something allows you to exploit economies of scale, but also invites parasites in to free-ride. And the Valley does seem to attract a lot of parasites.

<comment><USER30> >> I don't live there, so maybe I'm missing something, but is Silicon Valley really something to glamorize and try to replicate?

Nope not really but you're in HN and most people here tend to think that Silicon Valley is like Mt. Olympus or something. There are a lot of startups out there that are very successful and not in Silicon Valley.

<comment><AUTHOR> But the concentration is what counts here. After all, Silicon Valley is merely a region. You cannot compare it to the rest of the world.

</comment></comment></comment><comment><USER31> Here's an industry analysis I did on Vancouver a while back:

[http://vancouverdata.blogspot.ca/2010/09/what-is-work-of- dog...](http://vancouverdata.blogspot.ca/2010/09/what-is-work-of-dogs-in-this- city.html)

In Vancouver we have MDA, which makes satellites, PMC Sierra, PlentyOfFish, HootSuite, PhoneGap. Not huge, but substantial. Oh, and a dark horse named D-Wave.

And we had Creo and Flickr.

We don't have much of a military presence to help with R&D funding, hence Ottawa's slightly bigger scene. They almost got rid of the only army base on the West Coast a few years ago in fact.

There was an article on here a while back about what made a good startup city. We _do_ have some old wealth (mining cos), some great universities, and nice weather by Canadian standards.

Also doesn't help that we're a 2 hr flight from San Fran!

</comment><comment><USER32> If the right pieces fell into place, despite being a Bay Area native, I would consider Vancouver if I were starting a company. It would have to be one that didn't depend on bay area connections (VCs, etc). I've spent a lot of time in Vancouver, and yes, it has tech companies but for some reason has never become a technology hub. However, the blend of urban and amazing outdoors (yes, it rains, and I recall a July trying to get around during downpours and a bus strike) make it a tempting place for me.

It has great connectivity, cultural diversity, easy access to both Seattle and SF (a couple of hour drive/flight), a hub for asia, a great university in UBC.

There is a lot going on there that should make it more open to tech companies, but it has always been more of media than a tech town.

<comment><AUTHOR> \- There is a lot going on there that should make it more open to tech companies, but it has always been more of media than a tech town.

It's slowly changing now. Facebook, Twitter, Amazon and Microsoft all have their offices here.

<comment><USER32> It has been a little while since I last checked, but the Amazon and MSFT offices were more towards Richmond than Van proper, but still a good sign.

Though some of those offices were, from what I recall, a method to get around issues in dealing with US work visa issues for foreign talent...

</comment></comment></comment><comment><USER33> Yeah I'm an American who went to school here in Vancouver, started a company, doing well, but probably moving myself and the company back to the States soon as it's very difficult to get a VISA. The new startup VISA only applies to companies that are fundraising.

<comment><USER19> Just in case this is useful to you one day: A travel visa is a normal, uncapitalized noun "visa". The capital "VISA" is a trademark of the credit card company. Neither is an acronym.

<comment><USER34> Trivia: VISA is in fact a recursive acronym, much like GNU: Visa International Service Associaton.

<comment><USER35> Actually a recursive backronym, according to Wikipedia, but unfortunately {{citation needed}}.

</comment></comment></comment></comment><comment><USER36> I've worked in Vancouver at a startup, and to me it seems that the goals of a Canadian startup are just more conservative. No one ever expected to become a Facebook, or a Google or even Nortel or RIM for that matter. The philosophy has been mostly to create a profitable company, in the more traditional sense-- consistent revenue that can employ people. No one is looking for giant cash injections from VCs, nor are we throwing lavish parties and giving away Porsches at company picnics ( _cough_ Trilogy _cough_ ). We aim smaller than 'murica so of course we don't have any mega tech companies. And we're happy for it, at least I know I am.

<comment><AUTHOR> Thanks for sharing.

The philosophy has been mostly to create a profitable company, in the more traditional sense-- consistent revenue that can employ people. \- I share with this philosophy exactly.

The thing I am pointing out is that because of the VC gap, startups are dealing with the lack of cash infusion to really hit a homerun. As a result, Canadian tech companies stall after growing to a certain size. The options were taking VC money with bad terms or getting bought by US companies.

US companies are buying profitable Canadian businesses at a bargain price, reaping all the benefits of job creation and ambitious business goals.

</comment></comment><comment><USER37> Why Canada Has No Big ____ Companies would be a more interesting article/video. The biggest Canadian company seems to have an annual revenue of "just" 50 billion. On the list of largest Companies, Canada is not even present: [http://en.wikipedia.org/wiki/List_of_largest_companies_by_re...](http://en.wikipedia.org/wiki/List_of_largest_companies_by_revenue) I am not trying to bash Canada, but compared to others in the global arena, Canada isn't really known to be a player with large corporations.

<comment><USER38> I assume you meant billion, not million.

<comment><USER37> Ah yes. Corrected!

</comment></comment></comment><comment><USER17> Not even 10 years ago this same kind of post could have been written except the complaint back then wasn't that investors were boneheaded but that "Canada is full of entrepreneurs who don't think big enough and aren't aggressive enough!"

That narrative is, mostly, dead. Thankfully.

Now the entrepreneurs in this country have left the bad investors in their dust and the angel and VC community is playing catchup.

The author's point has some merit but it is hardly "the reason" we have so few billion $ companies.

The point worth making is: we are making progress. If we take the time to quantify it I'd guess that the ecosystem here is evolving more quickly than almost anywhere else in the world.

The other point being missed entirely is that there is no barrier for US investors to invest in Canada. Many (tempted to say most but I'm not sure) tech/web seed and A rounds in Canada now have some level of US (read: valley) participation. There are no legal or economic barriers to cross border investing anymore. The idea of a "Canadian investor" is becoming completely moot.

</comment><comment><USER39> > Not enough people have the gut and commitment to create or help create > something truly meaningful.

That's not the whole story by any means. No matter where you are the problems are almost always money and time. In this case, how much will it cost to lure people to Canada, which is not know for big tech? Google didn't happen overnight, but now that it exists, any new tech company is competing with Google in a way for top talent, if that is what they are after. So, not only would Canada need to grow a Google, they'd have to compete with Google. That is difficult. Throw a less friendly business climate than the U.S. into the mix, and that is just more money and time that would be required.

All of that said, sure Canada is spoiled and lazy, but that's no different than the U.S. We expect too much.

</comment><comment><USER40> There are potential big players but American companies come and buy them out when they get competitive size: Softimage, Discreet, Maya, ATI, Matrox _, ...

_ Matrox didn't get acquired but kinda changed their target markets.

</comment><comment><USER41> Just swap out Canada for Australia and you get a similar story.

While there are a few smaller tech companies here and there, the only larger home-grown one I can name at the moment is Atlassian (owners of BitBucket, Hip Chat etc). And they have international offices now I believe.

I remember reading a few years back, local startups were either moving to, or establishing a presence in the US to try to secure VC funding.

</comment><comment><USER42> I was wondering closer to home why Harvard and Stanford skate circles around my alma mater MIT when it comes to billionaire dollar tech IPOs. Having attended all the three, the tech culture is deepest at MIT. The business culture is deepest at Stanford.

This may change as MITs Drew Houstons Drop Box is monetized.

</comment><comment><USER43> While Silicon Valley is no doubt a unique place, it's odd to follow the quote:

"We don't have billion dollar Internet companies with the likes of Microsoft, Google, Facebook, and Amazon."

With a discussion only of Silicon Valley, given 2 of 4 are based in Seattle.

</comment><comment><USER44> I'm becoming more and more convince that this is a cultural thing and less about laws/taxes. Entrepreneurship requires risk-taking which (we) Canadians are less likely to do than our American cousins.

</comment><comment><USER45> Canada had Nortel and RIM - both were pretty big in their heydays

<comment><USER46> And ATI, and Matrox, Alias Systems, OpenText, and QNX... These may not be huge, but they did pretty well in their respective industries.

</comment></comment><comment><USER47> I saw this title hoping that the article was about how canada doesn't have any big tech conglomerates, and that it's a good thing.

</comment><comment><USER48> What's the best way for a young entrepreneur from Montreal to live the startup dream? Can I start a company in the US? Should I start my company here and move to the US? How does that work?

I don't have any measurable "unique skill", nor do I have millions to invest. Is there any way for me to move to SV and get proper funding?

</comment><comment><USER49> Theres opentext in Canada...

<comment><USER50> Yep and their market cap is almost as big as their neighbor, RIM.

</comment></comment><comment><USER51> Research In Motion is a pretty big tech company... Just saying.

<comment><USER52> Nortel was also huge, though screwed up big time.

</comment></comment><comment><USER53> canada has serious issues. I wanted to go for a conference there + meet a few startups. Turns out you need 2 months to get a tourist/business visa!

<comment><USER32> I find it hard to believe you couldn't attend a conference and visit a couple of startups on a normal entry from the US, unless you are not a US citizen?

I've been to Vancouver many times as a tourist, a few times for conferences / standards meetings, no problem, no visa required.

This doesn't sound right.

<comment><USER2> A visa is required for business visits, unless all you are doing is "meetings". However they'll usually sell you one at the airport.

<comment><USER54> So of course, everything becomes a "meeting"... ><

<comment><USER2> You get grilled at immigration. Of course the second time through you know the exact terminology to use!

</comment></comment></comment></comment></comment><comment><USER55> s/Canada/Australia/</comment>


7write - Write & Publish Your Book, Easily - <AUTHOR> http://www.7write.com

<comment><USER2> This looks like an interesting tool. I forwarded a link to my daughter who writes fiction for fun and maybe eventually for profit as well.</comment>


Visualisations of travel times and house prices - <AUTHOR> http://www.mysociety.org/2007/more-travel-maps/

<comment><USER2> Tufte-worthy!

<comment><USER3> definitely. also, i like the data that shows bicycling to be the most efficient form of urban transportation :)

</comment></comment><comment><USER4> I'm a sucker for pretty maps.</comment>