HNHacker News
TopNewBestAskShowJobs

yannickt

624 karma · joined November 12, 2010

submissionscomments
yannickt··on Hedge Fund Is Building an Algorithmic Model From Its Employees’ Brains
> see: https://www.principles.com/

This is a very, very good read. Thanks for sharing.

yannickt··on Silicon Valley Stumbles in World Beyond Software
Click on the "web" link below the HN thread headline. It will direct you to a search page for the article, and the top result will not be paywalled.
yannickt··on MacBook Pro is a lie
16 GB of RAM may not be enough for some classes of professionals - beyond video editing - in the future. Considering these laptops are not upgradable, I think it's legitimate to complain about a 16 GB cap.
yannickt··on Why does software development take so long?
The reason there are fewer decisions is because buildings are way better understood than software.

I think buildings are better understood in large part because they are not nearly as malleable. Because software is highly malleable by nature, the complexity and scope of decisions can grow much faster than in any other engineering discipline.

yannickt··on Why does software development take so long?
There is a great essay by Jack Reeves making a similar point.

What Is Software Design? http://www.developerdotstar.com/mag/articles/reeves_design.h...

FTA:

There is one consequence of considering code as software design that completely overwhelms all others. It is so important and so obvious that it is a total blind spot for most software organizations. This is the fact that software is cheap to build. It does not qualify as inexpensive; it is so cheap it is almost free. If source code is a software design, then actually building software is done by compilers and linkers.

yannickt··on Iran’s exceptional reaction to 9/11 attacks (2015)
I think the GP was saying KSA is Iran's enemy.

Edit: brain failure on my part.

yannickt··on John Carmack on Inlined Code (2014)
Brian Hook wrote about Carmack's productivity here: http://bookofhook.blogspot.ca/2013/03/smart-guy-productivity...

It's an interesting read. Previous HN discussion: https://news.ycombinator.com/item?id=5383650

yannickt··on Open Source Project – View 689 Salaries Posted on Hacker News, Share Yours
One of the tables has this important piece of information at the bottom:

"Amazon's vesting schedule is 5%, 15%, 40%, and 40% over the 4 years"

This is a significant deviation from the industry standard, which is to have a one year cliff, and have stock vest month-to-month afterwards. What happens if you leave in the middle of year 3?

yannickt··on Ask HN: How did you learn about stocks and the market?
Random Walk is great. My favourite books on personal investing are: - "The Four Pillars of Investing" by William Bernstein - "A Random Walk Down Wall Street" by Burton Malkiel - "All About Asset Allocation" by Rick Ferri

If I had to recommend _one_, it would be Four Pillars. The first part is a bit more intellectually "challenging" than Random Walk, but ultimately does a better job (IMO) at backing up the author's ideas on personal investing with data.

Random Walk covers all the major bubbles in history, and does an excellent job at breaking down asset allocation per age range in the later sections of the book.

All About Asset Allocation was very useful to me in developing a long term investment plan, and deciding what asset classes to include in my portfolio.

I refer to each book at least once a year.

yannickt··on Ask HN: Is any of Dave Cutler's code open source?
I have been wondering the same thing. Also, Larry Osterman had hinted that Gary Kimura (one of the core 12 who joined Microsoft with Cutler) had an interesting coding style, but I don't think he ever got around to writing about it. I have always been curious to know what was so interesting about it.

https://blogs.msdn.microsoft.com/larryosterman/2004/08/27/it...

yannickt··on Canada forgot to plan for its future by leaning on oil and the loonie
I am a naturalized Canadian. French is my first language, and I studied and lived in Montreal several years before moving to Toronto. I feel that Toronto, and Ontario in general, does a much better job at integrating immigrants and visible minorities, regardless of origin or native language, than Quebec. This is a huge factor if you want to attract talent in a global economy.
yannickt··on Ask HN: How do I learn about financial matters as a software engineer?
I don't know OP's country of residence, but I believe Vanguard mutual funds are not available in the US - they're not available in Canada at least. Even if one has access to the Vanguard retirement funds, it's still useful to understand why a portfolio works over the long term (or not). This can be particularly useful when the markets plunge, as they did very recently.

I've read both Four Pillars and Random Walk; I refer back to the former much more often than the latter. But both are great books.

yannickt··on OVH threatens to leave if latest French surveillance law passes
Why do you say that the Front National is racist?
yannickt··on Don't Call Yourself A Programmer, And Other Career Advice (2011)
I enjoyed Yosef Kreinin's take on this.

http://yosefk.com/blog/do-call-yourself-a-programmer-and-oth...

yannickt··on Renting vs. buying a home
"Which you will use to buy the latest gadgets, to pay the latest cool service, "

I think it is also wrong to generalize like that. There are renters who are disciplined enough to invest most of their "surplus of money" in appreciating assets. One can even invest in real estate without buying a home. Depending on location, a disciplined renter may well come out way ahead of the owner. IMO, that's a message that we should hear more often.

yannickt··on Former NBA Star Jamal Mashburn Launches Venture Capital Firm
Shaq is no slouch in terms of business savvy either.
yannickt··on Code May Work, But It Still Might Suck
FTA: "Kennedy said guides are common, but not to the clear and explicit length Carmack went in his guide, and that makes the difference."

In my experience, this is not uncommon, especially with C++ codebases. I've seen quite a few style guides that go in at least as much detail as Carmack's guide. Two publicly available guides that come to mind are the Google[1] and Webkit[2] style guides.

Maybe it's just me, but I don't find the Doom 3 code style that exemplary or exceptional.

[1] http://google-styleguide.googlecode.com/svn/trunk/cppguide.x...

[2] http://www.webkit.org/coding/coding-style.html

yannickt··on The Start-Up Trap
There are two things that I dislike about these articles.

The first is that they ignore or gloss over the fact that there is no shortage of world class software written without TDD. I also have yet to see any great programmer preach the virtues of TDD.

The second is that they blur the line between TDD and unit testing, maybe intentionally. I don't use TDD, but that doesn't mean I don't write unit tests. I just don't write unit tests all the time, and I don't write them first most of the time. In fact I think the advocates would have better success if they advocated plain unit testing instead of TDD.

What irritates me though is that several valid criticisms of TDD have been published (1), and in some cases the advocates (Uncle Bob included) were given an opportunity to respond, but did so poorly, or just didn't bother at all. This sends a message that they are trying to sell something.

TDD has its place, but it is not always the right tool, and it is certainly not a silver bullet.

(1) - Andrew Dalke's "Problems with TDD" may be the best criticism of TDD that I've read so far. The exchange between Dalke and Uncle Bob in the comments is also revealing. http://dalkescientific.blogspot.ca/2009/12/problems-with-tdd...

- Jacob Proffitt also wrote a classic (IMO) on the subject. http://theruntime.com/blogs/jacob/archive/2008/01/22/tdd-pro...

yannickt··on Halo Creator Unveils Its Next Masterpiece, a Persistent Online World
Game Developer Magazine runs a salary survey every year. The average game programmer salary in 2012 was a little north of $90,000. There are game programmers who make much more than that, but it is not the norm.

http://www.gamecareerguide.com/features/1108/game_developer_...

yannickt··on Halo Creator Unveils Its Next Masterpiece, a Persistent Online World
Bungie is not your average studio though. I suspect that their developer salaries are at least on par with the software industry average.
yannickt··on Duke Nukem 3D Code Review
My impression after reading "Masters of Doom" was that Carmack never really wanted to be in the licensing business. The main driver behind id's early licensing pursuits was Romero, and although Carmack went along, he did so without enthusiasm. After Romero got fired, there was no one at id pushing for the studio to do much besides making games. Epic Games, on the other hand, took engine licensing very seriously from the beginning. There is a feeling of "continuity" between iterations of their technology, and this is very important to toolkit licensees, and something that you don't get from id. I've always felt that Tim Sweeney has a lot more business acumen than most people would expect from a programmer.
yannickt··on Several out of work as Valve makes 'large decisions' about its future
I left it out because its release date hasn't been announced yet.
yannickt··on Several out of work as Valve makes 'large decisions' about its future
"Maybe 1 game per-year? For a company of around 400 with essentially zero effort/free publishing model that's pretty poor."

One game per year is actually pretty good for studio of Valve's stature, especially if you consider that many of those 400 work mostly, and maybe exclusively, on Steam. It is not uncommon for highly profitable studios to release just a few games each decade, especially if they are independent. So it is important to keep things in perspective. Half-Life 2 was released in 2004. Per Wikipedia, this is the list of games developed by id Software (200+ employees) since 2004:

- Wolfenstein 3D Classic (2009)

- Doom Classic (2009)

- Quake Live (2010)

- Rage HD (2010)

- Rage (2011)

- Doom 3 BFG Edition (2012)

Of those, probably only Rage sold a significant number of copies across all platforms. id Software also published the following games in the same time frame:

- Doom 3: Resurrection of Evil — Nerve Software (2005)

- Quake 4 — Raven Software (2005)

- Doom RPG — Fountainhead Entertainment (2005)

- Orcs & Elves — Fountainhead Entertainment (2006)

- Enemy Territory: Quake Wars — Splash Damage (2007)

- Wolfenstein RPG — Electronic Arts (2008)

- Doom Resurrection — Escalation Studios (2009)

- Wolfenstein — Raven Software (2009)

Of those, my guess is that only Quake 4, and maybe Wolfenstein, sold in significant amounts.

Since 2004, Valve has shipped HL2:EP1, HL2:EP2, Portal, Team Fortress 2, L4D 1, L4D 2, Portal 2, Alien Swarm and CS:GO. While none was the hit that HL2 was, few studios have achieved that level of success in the same time frame.

Or take a look at Blizzard. They have at least five, maybe ten times as many employees as Valve, but have released "only" five or six games since 2004, most of which were WoW extensions.

My point is that if Valve is not shipping games at a faster pace, it's because they can afford it. Steam is probably printing enough money that they can afford to spend as much time as they want iterating on their engines and games. I would be very surprised if you were right about the motivations for the layoff.

"Valve is going to build a new cross-platform engine [...] HL3 will be the showcase for this engine."

This isn't much of a prediction. HL2 was released on multiple platforms, and it is reasonable to assume that HL3 will follow suit.

Edit: Gabe Newell has addressed the speculations. http://mobile.theverge.com/2013/2/13/3986540/valves-gabe-new...

yannickt··on Ouya Android console up for pre-order on Amazon
It's not really about power though, it's more about exclusivity and uniqueness. For example, the Wii wasn't as powerful as the 360 or the PS3, but it had a unique control scheme, and exclusive games that took advantage of it at launch. No other platform offered even a remotely similar gameplay experience at the time. It has been said that some games were only possible on the PS3 (GoW 3). The Xbox 360 is best experienced with Xbox Live, which leaves other console gaming networks in the dust. The upcoming Steam Box will have Steam.

For the Ouya to "smoke" other consoles in sales, it will have to offer something unique, and that looks like a really tall order at this point.

yannickt··on Visual Studio and Team Foundation Server will have Git support
My 100 MLOC figure is incorrect. The blog post actually states: "With upwards of 50 million lines of code, broad changes to Visual Studio can take some time to fully incorporate."

Here's the link: http://blogs.msdn.com/b/visualstudio/archive/2012/06/20/the-...

yannickt··on Visual Studio and Team Foundation Server will have Git support
For what it's worth, I'm currently working on a number of C/C++ projects that amount to ~15MLOC. Visual Studio handles that load just fine.
yannickt··on Visual Studio and Team Foundation Server will have Git support
I'm pretty sure I've read on an msdn blog that visual studio was 100 million loc total. I would be very curious to know what kind of projects you're working on.
yannickt··on Apple stock down 10% after hours
I would probably go with AAPL. AMZN is currently trading at over 3,000 times earnings; their forward P/E is in the 150 range. They are mainly an online retailer, and retail and high profit margins usually don't go hand in hand. I expect them to grow, but it's hard for me to imagine a plausible scenario in which their growth matches their current valuation.

Also, Apple pays dividends, and they have enough cash to operate for 1-5 years on zero sales. They are better positioned (IMO) to reinvent themselves without being rushed, and at the same time minimize the potential negative impact of that reinvention to their shareholders.

yannickt··on Rule of Zero (C++)
In the OP example, "using" has the same semantics as "typedef". The new syntax emerged from the need for "template typedefs".

http://www.stroustrup.com/C++11FAQ.html#template-alias

yannickt··on A list of systems, applications, and libraries that are written in C++
Using your example let's assume myBar and myBaz are _owned_ by Foo. Before C++11 you would typically do this:

   class Foo {
   public:
      Foo() : myBar(0), myBaz(0)
      {
         myBar = new Bar;
         myBaz = new Baz;
      }
      ~Foo
      {
         if (myBar) delete myBar;
         if (myBaz) delete myBaz;
      }
   private:
      Bar *myBar;
      Baz *myBaz;
   };
In C++11, the above could be written like this:

   class Foo {
   public:
      Foo() : myBar(new Bar), myBaz(new Baz)
      {
      }
   private:
      std::unique_ptr<Bar> myBar;
      std::unique_ptr<Baz> myBaz;
   };
You don't need to call delete because the unique_ptr destructor will do it for you.

You would only need to use shared_ptr when ownership is shared among multiple objects. A shared_ptr holds a reference counter that is incremented every time it is copied, and decremented every time it is destroyed or re-assigned. When the reference counter reaches zero, the pointer is automatically deleted.

← PreviousPage 2 of 6Next →