Systemd 216 released including DNS resolver and full TTY stream parsing - <AUTHOR> http://lists.freedesktop.org/archives/systemd-devel/2014-August/022295.html <comment> vezzy-fnord I'm becoming convinced that systemd is an attempt to turn Linux into a sort of hybrid/quasi-microkernel, similar to NT. Move all sorts of things that were once in kernel space to user space.

libsystemd-terminal, the aforementioned TTY stream parser, is really just the prerequisite for David Herrmann to move kmscon (that's the Linux console replacement) from the Linux kernel to systemd.

The LLMNR and mDNS/DNS-SD thing seems to me like Lennart Poettering is trying to reimplement Avahi into systemd, possibly because he's dissatisfied not enough people use it? Or because he's tired of maintaining it and wants to integrate a zeroconf replacement with the systemd APIs, like he did with ConsoleKit/logind.

And the thing is, systemd doesn't even have any discernible direction. It's described as the "basic building block to make a Linux-based OS from", but when the guys try to market it to distros they variously call it an "init system", "service manager" or whatever. The idea being that if your initd doesn't come with a util-linux replacement, it's subpar. systemd is whatever the hell the authors want it to be, and they have yet to be able to convey a concise description of what it's meant to do.

Lennart hinted at a recent GNOME Asia talk that systemd is meant to be perpetually rolling, not dissimilar to the Linux kernel. It pretty much is a second kernel, and once again, I won't be surprised if in the future the concept of the Linux distribution becomes extinct and a Linux-based OS in practice will have a hybrid kernel approach.

<comment><USER2> It sounds more like they're trying to implement the *BSD userland in systemd so it's available on boot.

Coming soon to the systemd codebase: we'll be Katamari-ing all over busybox! When will we be big enough to absorb Wayland? Stay tuned!

</comment></comment><comment><USER3> I was wondering why they felt the need to add their own DNS resolver. From the changelog:

"Hostnames, addresses and arbitrary RRs may be resolved via systemd-resolved D-Bus APIs. In contrast to the glibc internal resolver systemd-resolved is aware of multi-homed system, and keeps DNS server and caches separate and per- interface. Queries are sent simultaneously on all interfaces that have DNS servers configured, in order to properly handle VPNs and local LANs which might resolve separate sets of domain names. systemd-resolved may acquire DNS server information from systemd-networkd automatically, which in turn might have discovered them via DHCP. A tool "systemd-resolve-host" has been added that may be used to query the DNS logic in resolved. systemd-resolved implements IDNA and automatically uses IDNA or UTF-8 encoding depending on whether classic DNS or LLMNR is used as transport. In the next releases we intend to add a DNSSEC and mDNS/DNS-SD implementation to systemd-resolved."

Nice features, but I don't understand if they have to be under the systemd umbrella. Here's hoping it can be broken out to be useful in other situations.

<comment><USER4> > DNS server and caches separate and per-interface

This is rather strange. I don't believe any glibc-based client will care to use the same interface for resolution and connection (can you even force an interface on gethostbyname()?)

If that's not the case, why would multi-homed-aware system be of any use to the client? I can imagine the cache split helps, because you can drop only part of the cache when one connection drops - but unless programs are written to deal with this issue from the start, they're unlikely to re-resolve the hostname, or even use any network state events.

So who gains something from this new crazy system? I also don't really get why they pull everything in - this sounds like a completely separate project... I hate the idea of Linux/systemd the world is heading for right now.

<comment> vezzy-fnord The idea, from what I'm deducing, is to migrate Avahi (a Linux implementation of Apple's Bonjour zeroconf protocol) into the systemd codebase.

<comment><USER4> Sure. But we've got nsswitch and Avahi already... and they work. If they have some bugs that cannot be worked around, I'd expect a comment like "we couldn't get Avahi to work, upstream bugs xxx and yyy forced us to rewrite it".

<comment><USER5> I would guess making DNS resolution follow connection paths means DNS-over-Tor becomes something that just happens automatically.

</comment></comment></comment></comment></comment><comment><USER6> There's nothing wrong with rolling your own version of existing Linux software and tying it all together with linked libs. It's similar to coreutils/util- linux/Busybox, but without pipes or shell scripts.

The reason systemd is so infuriating is that its creators are lying about its true purpose, which is to supplant existing Linux operating systems with its own new idealized model. It flies in the face of those people who have been working with existing operating systems for decades and really rather liked the way things used to work.

Even if your dns resolver is _better than the old one_ , if it requires a paradigm shift in the way it's used, it's fucking annoying and I don't want any part of it. Wake me when this supposed collection of tools becomes an actual collection of tools and not just one giant 'modular' extension of a brand new operating system.

</comment><comment><USER7> Having a TTY stream parser in systemd seems pretty odd until you read the reasoning why[1]: there's already one in the kernel, and having one in systemd means one less thing that has to be in the kernel. Which has some interesting implications.

If you're moving stuff out of the kernel into systemd, then the reason it was presumably in the kernel was because there was a need for it, and the kernel couldn't depend on anything else being around to maintain it. So while the kneejerk "systemd isn't complete until it can send mail" response is incorrect, there IS a very real concern for people who are against systemd here -- if kernel stuff is being moved into systemd, it's because it's viewed as nearly equal with the kernel in terms of being required in terms of Linux. That means eventually, nobody will be able to escape the pull of systemd. (This isn't the first time this has happened, either: a lot of the responsibility for managing cgroups is going to be falling on systemd[2].)

1) [http://lists.freedesktop.org/archives/systemd- devel/2013-Nov...](http://lists.freedesktop.org/archives/systemd- devel/2013-November/014808.html)

2) [http://lwn.net/Articles/555922/](http://lwn.net/Articles/555922/)

</comment><comment><USER8> Can't expect the time when you won't need libc or a shell, for that matter. Let's delete "bash" and replace it with a built-in do-it-all shell, let's call that "cmd", right ? Configuration should be done in binary-encoded files, with arborescent key-value pairs - I know, let's call that a registry, shall we ?

Package management should be done through a central place where application can be vetoed, like an app store, if you will. We could do away with silly editors like VI, we'll embed a powerful office suite right into the system libraries, shall we ?

Monolitic software is always better than small separate tools that do only one thing, right ?

<comment><USER9> Except systemd isn't monolithic at all. It's 70 bits under one umbrella project, and you only need three of them to replace init. But because it _can_ do something doesn't mean it _does_ that thing out of the box or even in the default configuration. Even on Fedora (or CoreOS), where systemd has the most uptake.

Why is it that every systemd critic doesn't know what systemd is or does?

<comment> vezzy-fnord Monolithic and modular aren't mutually exclusive.

<comment><USER9> Conflating the aims of everything underneath the systemd umbrella is misleading regardless of whether you think monolithic and modular aren't mutually exclusive (and hey! systemd isn't monolithic _or_ modular -- the additional bits run separately, they don't plug into systemd), akin to lumping everything in coreutils under the same "coreutils is trying to take over Linux!" argument.

<comment><USER4> > the additional bits run separately, they don't plug into systemd

What's the reason behind ubuntu running its own stub for logind instead of systemd-login? And how would you run systemd-journal without systemd? As far as I'm aware this is not possible and the internet doesn't seem to know anything about running them standalone.

</comment></comment></comment></comment></comment><comment><USER10> I have to agree with most points in here though: [http://boycottsystemd.org/](http://boycottsystemd.org/)

</comment><comment><USER11> Will version 217 make me tea and drive my car?

<comment><USER4> Realistically, I expect PAM-like system to be pulled in (with PAM becoming optional) and package management abstraction being integrated into systemd in the next couple of versions. Soon we'll talk about Systemd/Linux being the correct name ;)

<comment><USER11> Indeed. It's a damn shame Red Hat was able to expand the reach of their terrible technology from their distributions into the greater Linux ecosystem, but the BSD guys probably love it.

</comment></comment></comment><comment><USER12> been waiting for this release since 215 introduced a bug where systemd- networkd sends a broadcast dhcp request by default without the option to disable it, thus breaking dhcp on certain networks.

<comment><USER13> Don't worry, I'm sure the new features in this release will break something else. (After all, stable bugfix-only releases have no place in systemd, just like with PulseAudio.)

<comment><USER14> Systemd marks stable bugfixes in an easy way in their git repository so people can easily determine the bugfixes. I know because our systemd packager makes use of that to ensure those bugfixes are included in our systemd version. Because every packaging systemd that I know relies on tarballs, it is a bit messy. I do know that various Fedora packagers find it rather backwards to still be packaging based on tarball releases.

</comment></comment></comment><comment><USER15> systemd can just fuck off.

It's a pit of complexity from hell that I will not stand for. This change makes it worse again.

3 hours today trying to get timedatectl to enable an NTP server on CentOS 7. All I got was "Failed to issue method call" and 3 hours of taking it to bits to work out why the hell it wasn't working then it just started to work out of the blue.

systemd makes Linux feel like Windows does from an administrative perspective. Feels like stateful RPC/COM/WMI hell about to hit Unix.

Scrapped the whole damn thing and installed FreeBSD 10.0 in the end.

<comment><USER16> How is BSD less monolithic than systemd?

<comment><USER17> While BSD gives a complete system and source tree, the source tree is also designed such that you can use all or none of it and get a working system. Going into the subdirectories and just building the parts of the userland you want from the given source tree is entirely possible. Furthermore, after building everything, rc is designed as a script, with executables, arguments, etc, all being well documented and easy to override in rc.conf to your liking. For example, I don't like the built-in syslog, and prefer syslog-ng. Disabling the built-in syslog was a matter of adding these two lines:

        syslogd_enable="NO"
        syslog_ng_enable="YES"

and after that the included syslog doesn't run at all. There's no looping logs through the original syslog and out the other end, or any silliness like that. Similarly, the dhcp client, ntp client, etc, are all easily configurable as well. The problem isn't that systemd provides these bits and pieces, the problem is that it's a pain and a half when you need to turn them off.

</comment></comment></comment><comment><USER18> Since I have no plan to have anything to do with systemd, just hope that systemd will not become mandatory for linux system over time. Wish me luck.

<comment><USER18> for whoever down-voted me, any explanation? I honestly feel systemd is just too bizarre, thus veto it, will it carry x11 one day? do you only like words that praising this project?

</comment></comment><comment><USER19> Systemd henceforth considered harmful in many ways

</comment><comment><USER20> This seems just a bit excessive for an init system.

<comment><USER21> Good, because systemd isn't just an init system.

<comment><USER22> Too bad that's how it was sold.

2011: "Hey, check out this init system!"

2014: "Hey, it isn't just an init system! It's so much more!"

</comment></comment></comment><comment><USER23> systemd now includes its own april fools implementation which runs on 20th August.

</comment><comment><USER24> I'm putting this long list of "systemd myths" from Lennart's blog here: [http://0pointer.de/blog/projects/the-biggest- myths.html](http://0pointer.de/blog/projects/the-biggest-myths.html) before the discussion kicks off...

....and not to kick it off myself, especially as the devolution from reasoned argument to straight-up whining seems to happen often in discussion about systemd but: ugh, really? My init system now needs a DNS resolver - sorry, from the article "a caching DNS stub resolver and a complete LLMNR name resolution implementation" \- to be baked into it?

<comment><USER25> FYI, I used to think the same way you do, and I was very confused by systemd initially (and critical of it), but this is the way that someone explained it to me which made everything make sense.

> My init system now needs a DNS resolver

Don't think of systemd as 'an init system'. Systemd is a project that contains a number of low-level userland tools that do not belong in the kernel. The next logical place for them to go is in systemd. One of these is an init system, but systemd also contains other tools, most of which are independent.

Systemd in that way is sort of like coreutils - you don't need all of the tools, and you can use most of them independently of the rest. But some of them complement each other, so it makes sense for them to be maintained together, even if they can be compiled independently and distributed independently.

Or you can think of it like the Linux kernel - it's _crazy_ when you look at some of the obscure drivers make it into the mainline kernel, let alone some of the kernel modules available, but it's not that most people use or notice them (or even have them, as they may not be compiled by default in most distros).

<comment><USER24> Respectfully: that "independent tools packaged together" line is repeated often - and it's just so much bullsugar. I run systemd in prod, on many machines, and am way confused as to why anyone thinks this is true.

(The rest of this post isn't aimed at you, chimeracoder - but you've made an argument I've heard a few times, and I'd like to address it at length, because this is where systemd discussions usually devolve into namecalling instead of actual discussion.)

Thinking of systemd utilities like unused kernel drivers - just harmless bits occupying disk space and never used until loaded - is simply an incorrect analogy. A client of mine is running systemd in prod, and I'm managing their system - so when I tell you this, what I'm saying is "whoever explained either isn't running systemd in prod on multiple machines, or is having a wildly different experience than I am." Ask whoever explained this to you if they are running systemd in prod! I would love to be wrong about this!

I feel like I hear this explanation (excuse?) fairly often, so instead of setting up a straw man, lemme flip the script here:

Could someone - anyone! - please point out a single distro or OSS project that a) makes use of systemd and b) doesn't end up building the same exact monolithic init.d re-implementation as everyone else running systemd?

Systemd _could_ potentially be used as a suite of independent tools, kinda, I guess - but that's not what the devs are aiming for from what I can tell, and I've _never_ seen - or even heard discussion about - systemd being used in practice as anything besides a monolithic init.d replacement. Most arguments to the contrary fall apart really quickly, with a simple question:

"How and why would you actually build this theoretical pick-your-own-utils- totally-not-a-monolith thing you're describing? Please show your work. Extra credit: explain why no one else appears to have attempted this, outside of the thought experiment that I've just proposed to you".

My guess is, like it or not, I'm going to be stuck using systemd-resolve (the DNS resolver) and systemd-timesync (the NTPD replacement), I'm guessing, because I want to use systemd-network, and the best case scenario is that my old ntpd and nsd daemons are going to have some weird issue working properly with systemd-network. What weird issue? Well, those old daemons had some quirk or other that really should have been fixed for interoperability's sake, and mumble mumble DBus won't connect for some esoteric reason, so.... they'll still "work", but the systemd-* replacement we've written works so much more _cleanly_ and with less random flaky bugs , and using them will stop that weird hanging issue you're seeing, so....

Ugh.

(Again, sorry chimeracoder for the comment hijack. I have a lot of systemd angst, apparently.)

<comment><USER14> A lot of projects have dependencies on other projects. Systemd provides a lot of very useful functionality. So it's going to be depended upon. But actually it's pretty layered. Systemd provides things to activate NTP. That can either call timesync or any other daemon.

To me, these very simple daemons are for minimal install purposes. So "cloud" and embedded. Once the OS has systemd, it'll be easy to bootup (dhcp, ntp, etc all working for the simple cases).

Various parts of Linux do weird things. Workaround bugs from other projects. While we have the source and should just fix the bugs where they are.

As I mentioned in another comments, UNIX and BSD have everything in one repository. Develop things together, ensure that stuff works nicely together. That's how I see what systemd is starting to make happen.

<comment><USER26> You keep mentioning BSD as if it's a model to be aspired to. Many people disagree. For some reason, systemd proponents seem incapable of conceiving that people could disagree with them. If you could accept that, productive conversations might be had.

</comment></comment></comment></comment></comment><comment><USER27> On track to beat Pulseaudio's record!

</comment><comment><USER28> Awesome.</comment>


Show HN: Virwire – A Mobile friendly viral news stream - <AUTHOR> https://virwire.com <comment><AUTHOR> Hi everyone, founder here. I made Virwire because I wanted a better/mobile news experience with more relevant content. Virwire monitors tens of thousands of media sources and detects early viral signals based on forum posting, sharing, tweeting, voting, liking and commenting. By socially filtering every article only the best and most relevant stories get through. Enjoy!</comment>


North Carolina House passes bill banning community fiber infrastructure - <AUTHOR> http://www.dslreports.com/shownews/North-Carolina-House-Passes-AntiCommunity-Fiber-Bill-113433

<comment><USER2> A full list of the people who voted against the measure is presented here:

[http://stopthecap.com/2011/03/29/house-republicans-sell- out-...](http://stopthecap.com/2011/03/29/house-republicans-sell-out-north- carolina-broadband-future-to-big-telecom/)

If there is a concerted effort to fight this legislation to which people (including those of us outside the state) can donate, I haven't found it; if anyone does, please post!

</comment><comment><USER3> Flagged due to misleading, flamebait title. The bill in question does not ban community fiber, it just sets some constraints on it, to ensure that a taxpayer subsidized service doesn't compete with - and undercut - a private business. This is a Good Thing.

Also note that there is a specific exclusion to even these constraints, when it comes to serving a currently unserved geographical area.

[http://www.ncga.state.nc.us/Sessions/2011/Bills/House/HTML/H...](http://www.ncga.state.nc.us/Sessions/2011/Bills/House/HTML/H129v3.html)

<comment><USER4> The telecom companies are already themselves subsidized.

<comment><USER3> Yes, and that's a separate problem that needs to be addressed, no doubt. There are a lot of places where the relationship between the telecomms and the State is corrupt and needs to be fixed.

</comment></comment></comment><comment><USER5> If you are in North Carolina you can call or email your Senators and encourage them to vote against the bill.

[http://www.ncga.state.nc.us/gascripts/members/memberList.pl?...](http://www.ncga.state.nc.us/gascripts/members/memberList.pl?sChamber=Senate)

</comment><comment><USER6> Ars Technica article about the same bill: [http://arstechnica.com/tech- policy/news/2011/03/cable-backed...](http://arstechnica.com/tech- policy/news/2011/03/cable-backed-anti-muni-broadband-bill-advances-in-north- carolina.ars)

</comment><comment><USER7> Reading the bill, I'm not seeing where it bans community fiber; rather it seems to require local government to not use tax monies to subsidize the access, and to not abuse their position to hamper private competition. Both seem pretty reasonable to me. What am I missing?

<comment><USER8> Effectively makes it illegal, as far as I can tell, for a community to decide that internet access is similar to roads or water infrastructure and make it broadly available at low rates.

It depends if you think internet access should be treated as an infrastructural good. I personally think that makes a lot of sense. While I wouldn't want to see anyone make a law against private internet connectivity, if a town wants to pool their money and pay to build out infrastructure that should be legal.

<comment><USER9> "if a town wants to pool their money and pay to build out infrastructure that should be legal"

If people want to pool their own money together, they can. The only thing this bill prevents is the government from forcing an individual to pay for something.

Even if every individual was morally obligated to pay for something that the town wants (which is not the case), providing services is not the proper role of government.

<comment><USER6> Does that apply to police and firefighting as well?</comment></comment></comment></comment>


Business Idea Collector - <AUTHOR> http://ivanistheone.github.io/ideacollector/ <comment><USER2> This is pretty cool. Can I suggest that you either increase the time limit, or have a 'start' button (but not a stop button).

I ran into to problems. One, the first question ran down most of it's time while I was reading your intro ('before I noticed there was a timer). Two, I cut many of my answers short because 20 seconds just isn't enough time to read and type out the answer. I liked the time limitation, but kinda wish I didn't feel rushed.</comment>


Console Repairmen Explain Why Cockroaches Love PS4s - <AUTHOR> http://kotaku.com/console-repairmen-explain-why-cockroaches-love-ps4s-1794393470 <comment><USER2> I've never seen a cockroach in my whole life and never heard of anyone having problems with them. I only know about them from American movies and TV series (e.g. ALF).

<comment><USER3> It depends where you live. The technician in the article is from NYC, where cockroaches are prevalent (also a common setting for American sitcoms).

<comment><USER4> I haven't lived in NYC in over 40 years, but I still remember the roaches. It's not something you easily forget.

That's the problem with high density older apartments. Your neighbors' roaches are your roaches, your neighbors' mice are your mice. Etc.

About the worst I've had to deal with in suburbia was an invasion of carpenter ants. An eco-friendly exterminator easily took care of them.</comment></comment></comment>


On Learning Clojure - <AUTHOR> http://honza.ca/2012/08/on-learning-clojure

<comment><USER2> Nice, although it has no code samples =S For learning, this site is really awesome: <http://www.4clojure.com/problems>

</comment><comment><USER3> What would experienced Clojure coders recommended for a web framework? I'm partial to more minimalist approaches a la Flask.

<comment><AUTHOR> I'm not really much experienced, but I've played around with Noir and its really similar to Flask. You could try out Compojure too, on which Noir is based(even more minimalistic).

Right now, I'm following some Noir tutorials here: <http://yogthos.net/></comment></comment>


The Sumerian Game: The Most Important Video Game You've Never Heard Of - <AUTHOR> http://www.acriticalhit.com/sumerian-game-most-important-video-game-youve-never-heard/ <comment><USER2> Before Civilization by Sid Meier as well.</comment>


Ask HN: What is something simple you would pay for if it existed? - <AUTHOR>

In other words, what is something simple you are missing now?
It could be an app, a piece of hardware, a food, or anything else within the realm of simple and feasible - just not implemented yet.
Chances are it does exist already, but perhaps it has not been marketed aptly or the functionality is not up to par with what you think is minimally acceptable. <comment><USER2> FEASIBLE

A gamified experience (a website, app...) that teaches people of all ages the basics of farming. I don't know anything about seeds, moon cycles, tools... No matter the progress, at the bottom of the "Society stack" there are still simple techniques that the average man is not aware of.

UNFEASIBLE

Worldwide Sushi on demand. It's _not_ feasible, but I would love to just order sushi with an app and receive it at my doorstep, like pizza.

That said, It would be a nightmare to scale. You would need to educate the consumer on the quality of your fish and fight the bias "home delivery --> cheap".

<comment><USER3> Do you mean "farming" in terms of a large-scale farm where you make your living selling produce or in terms of subsistence farming for your own consumption (what some might call "gardening")?

Also, do apps like eat24hours, grubhub and seamlessweb have sushi delivery available?

<comment><USER4> a) Traditional, <£1m revenue farms. b) >£100m revenue mega automated farms (eg the dairy farm in UK news). c) Mini farm with modern tech (LEDs, hydroponics).

</comment></comment></comment><comment><USER5> Healthy food as a service. Getting food delivery is easy, but if you work out or want to lose weight you need to stick to a nutrition plan, and most of the stuff you can order is crap. Preparing meals is a pain. I'd pay to have 3-5 snall meals per day with predefined nutritional information prepared for me, ready to either eat at home or take with me. It can be the same meals every day, I don't care. I'm fine with giving the person/company keys to my home so they can put stuff into my fridge/freezer. Something like $200/week sounds like a reasonable amount to pay for that. Addon would be maid service.

<comment><USER6> +1. A socialist solution for this is to get a group of friends together and take it in turns to cook a container of food for everyone in the group. Cheap, reduces cooking, and ensures not only healthy food but exactly what you want e.g. low GI, Gluten free, or whatever else floats your boat.

</comment></comment><comment><USER7> Deliver me all my daily meals on the morning of the day, already cooked that morning, with an emphasis on it being healthy too.

Let me pick what I want for tomorrow in an app that sets out my choices.

<comment><USER8> Man, I'd be all over this. Personal chef as a service.

</comment></comment><comment><USER9> Calendar software that is actually better than a piece of paper.

<comment><USER10> Google calendar sends alerts to your Android device (and is available from anywhere). So that's one-upped paper already imo.

</comment></comment><comment><USER11> User friendly email that serves no ads and offers full privacy and encryption.

<comment><USER8> Fastmail.fm? It's as encrypted as webmail can be, and you can send gpg encrypted messages with a desktop client.

I've been using it for just over a year, and I'm very happy with it.

</comment></comment><comment><USER12> The ability to do my own plumbing, to learn simple household tasks, fixer upper projects, that would normally be sourced out to a specialist / technician

Include DIY cable/internet protocols for a special bonus!

<comment><USER13> You're willing to pay for the ability to not pay for tasks that you need to hire experts for?

Besides the obvious "paying to not pay", this already exists. Take a class to learn the basics of these jobs. Home Depot has classes like this all of the time, and I'm pretty sure they're free.

If you're lucky, you'll save some money. If you're not, you'll learn that you pay these professionals for their experience, not their basic knowledge. And you'll know how to correctly describe what you screwed up before you called them.

I'm a fix-it myself kind of guy, and the most valuable thing I know is how to tell when I need a pro. I did replace an ignitor on my furnace based on watching a youtube video once, which I was proud of. It was simpler than I expected.

<comment><USER14> I think a curated tutorial with step by step guides, and videos could be pretty useful. Something that covers basic home maintenance tasks that are easy enough that it doesn't make sense to outsource.

</comment></comment></comment><comment><USER15> PA as a service. Somebody needs to take care of all my shitty work like paying my bills on time, paying loans, managing my subscriptions. When i move the apartment, some body should take care of the whole end-end flow. I mean they need to search and select some apartments for me, they should plan a move, they come and pack things and ship to new home.

<comment><USER16> What's wrong with existing VA services like FancyHands?

</comment></comment><comment><USER17> Service that does it's best finds any service using personalized free-word described criteria.

If taken and satisfied - I'd happily pay finder's fee. Heck, i'd even leave escrow to cover for it.</comment>


Larry Wall's Perl 6 Release Talk [video] - <AUTHOR> https://www.youtube.com/watch?v=kwxHXgiLsFE <comment><USER2> Cool. I am glad there has been enough support and supporters over the years to push it to the finish. Compiled native executables, concurrency, async code blocks, and much more. I look forward to learning as soon as I get a chance. Hoping that companies adopt as well.

<comment><USER3> _compile native executables_

How does that work? is the moarvm bundled in the executable?

<comment><USER4> It doesn't, no idea where the OP got that idea from. 'Fakecutables' bundling interpreter and bytecode might arrive in the future, though.

<comment><USER2> I got it from here (page 33):

[http://www.liz.nl/C-DayIsComingYAPCEU.pdf](http://www.liz.nl/C-DayIsComingYAPCEU.pdf)

So probably not "native" executables, but compiling and optimizing nonetheless.

<comment><USER4> That refers to precompilation to MoarVM bytecode. You can do that manually right now, but eventually, a precompilation cache will be managed by Rakudo.

</comment></comment></comment></comment></comment><comment><USER5> I'm really interested in this. Perl6 is so jam packed with interesting novel features, that it serves as an amazing testbed for future languages. I always feel that Ruby was a language that came out of Perl; a subset of it's features, carefully selected and implemented with the knowledge of what did not go too well with Perl.

Thanks Larry and co!

</comment><comment><USER6> So, like probably many people, I was very hyped about Perl 6 in the early 2000s, followed the mailing lists and so forth, but became disappointed and stopped caring when it became painfully clear that there had been no net progress for a decade.

So please excuse my skepticism, because I'm still fascinated by Perl 6's ideas and potential. But is this another "Rakudo Star" where they just take whatever current mess they have and label it "release", or is Perl 6 really finally ready now?

<comment><USER7> I keep wondering the same, especially when perl.org mentions nothing about Perl 6. It would be really nice if they showed some sort of sign there about Perl 6. Instead all we get is Perl 5.

<comment><USER8> Perl 6 is mentioned on [http://dev.perl.org/](http://dev.perl.org/). I hope to get it to the perl.org front page after or on occasion of the release.

</comment></comment></comment><comment><USER9> I have to work with a legacy Perl codebase most weeks and I've been ignoring Perl 6 because upgrading our interpreter version is difficult for a bunch of reasons to boring to go into.

I'd been naively holding out a hope that Perl 6 would improve things so I clicked on the Perl 6 for Perl 5 programmers link from perl6.org.

They added code block interpolation to strings:

      #!/usr/bin/env perl6
      my $number = 3;
      say( "{ $number * 4 }" ); # prints 12

<comment><USER10> This is little different from something like:

      #!/usr/bin/env perl6
      my $number = 3;
      printf( "%s\n", $number * 4 ); # prints 12

What is your complaint?

<comment><USER11> Really? printf is cool and useful for it's own domain. But there is a reason that languages provide interpolation. And the simplest possible example above is not one of those reasons.

<comment><USER10> You imply, but fail to make any actual points or explanations.

<comment><USER11> I'm not going to bother convincing you that printf is not the highest form of string interpolation. Seems like you've got your bases covered pretty well.

<comment><USER10> I never said printf is the highest form, nor did i imply it. If you think i did imply that, and you consider it to be ridiculous, then it would behoove you to ask if i did mean to imply that or not; instead of assuming that your interpretation of my words is fact and i am being ridiculous.

I consider printf an acceptable form of string interpolation, nothing more.

</comment></comment></comment></comment></comment></comment><comment><USER12> How fast is Perl 6 nowadays?

<comment><USER13> Faster than Perl5 with Moose, but slower than similar languages with similar features. But there are not many with this impressive feature set.

<comment><USER14> With all these different implementations how hard is it to access C libraries and/or make modules that use C?

<comment><USER15> Not very (hard): [https://github.com/jnthn/zavolaj](https://github.com/jnthn/zavolaj)

</comment></comment></comment></comment><comment><USER16> So much good stuff. I really like the kernel+distribution idea and thinking about lexer/parser and "just adding stuff to that" like the example of adding Ruby ?! syntax.

</comment><comment><USER17> Where was this video a month ago? I looked all over for it when Perl 6 was released!

</comment><comment><USER18> When will a traditional interpreter written in C and running just about everywhere be available for Perl 6?

All of the successful scripting languages have one: Perl 5 and earlier, Python, Ruby, Tcl, Lua, PHP, and even UNIX shell scripts.

Yet when it comes to Perl 6, we just don't see that.

The Perl 6 community has spun its wheels time and time and time again with half-baked interpreters written in an obscure language like Haskell, or written in Perl 6 itself using half-baked Perl 6 to 5 converters, or targeting the .NET CLR or JVM, or targeting very obscure and limited VMs like Parrot or MoarVM.

It's no wonder that Perl 6 hasn't really gone anywhere after 15 years. They've done everything but the one thing they should be doing if they want success: implementing a traditional interpreter using C that runs just about everywhere!

<comment><USER19> I don't quite get your point. MoarVM was created specifically for Perl 6, it is written in C and just works. JVM support in Rakudo is just added bonus and you are free to ignore it (like most users do).

For 99% users "Perl 6" will mean just "Rakudo + MoarVM" which seems to be exactly what you're asking for.

Note that MoarVM is nothing like Parrot. Parrot was a failed project which intended to bring universal VM for all dynamic languages. Obviously, too wide project scope resulted in broken and unmaintainable implementation.

MoarVM is made just for Perl 6 and intends to avoid repeating its predecessor's mistakes.

<comment><USER18> I'd like to use Perl 6, but after 15 years of waiting there still isn't an implementation ready for production use.

Rakudo and MoarVM clearly aren't what we, as potential Perl 6 developers and users, want.

They look far too similar to the many other similar Perl 6 failures we've seen.

How are we to trust that Rakudo won't go the way of Pugs, or that MoarVM won't go the way of Parrot, leaving us in a lurch?

Even if they do remain viable, we don't want to have to deal with separate VMs, regardless of whether they're specific to Perl 6 or not.

We don't want to deal with the bugs and compatibility issues that invariably pop up when dealing with separate compilers and VMs.

Like I said, we want the Perl 5, Ruby, Python, Lua, and Tcl type of experience.

We want there to be one consistent implementation that's widely used and trusted.

We want something proven and familiar.

Unfortunately, we aren't getting that with Rakudo and MoarVM, nor from the many other unsuccessful attempts in the past.

<comment><USER20> _How are we to trust that Rakudo won 't go the way of Pugs, or that MoarVM won't go the way of Parrot, leaving us in a lurch?_

Some people will tell you to trust them. I, on the other hand, base my expectations on the history of the project and the actions of the people involved. I don't believe you can turn 15 years of disappointment and underperforming into something usable based on an arbitrary deadline enforced by yet another marketing announcement.

<comment><USER4> There obviously is some marketing involved, but in principle, this is less about Rakudo, and more about Larry freezing the 6.0 language version.

One can hope that development focus will then switch from semantics to things like stability, deployment and performance, ie the things you strongly advocated for years ago.

I guess we'll see if it's going to happen that way...

<comment><USER20> While it may be technically true that "Perl 6.0 released!" is an accurate headline if you define "Perl 6.0" as "the test suite for the 6.0 language version", I suspect that almost everyone reading that headline will expect to see a stable language implementation.

Given the reception to the past year's worth of discussion around "Get ready to party", it seems irresponsible to me to continue with these semantic distinctions, as they're lost on the intended audience.</comment></comment></comment></comment></comment></comment>


Help The Startup Genome Project Bring Silicon Valley To The Rest Of The World - <AUTHOR> http://startupgenome.cc/

<comment><USER2> God dammit, I _hate_ it when somebody does something I wanted to do, but has better execution.

<comment><USER3> that's pretty rockstar.

</comment></comment><comment><USER4> This is freaking awesome. I'm so excited to follow the progress of this project. Filled out the survey and "liked" all of it! =D

</comment><comment><USER5> Just filled out the survey to help them out and looking forward to seeing what they can bring to the table

</comment><comment><USER6> Great idea - finally some good benchmarking that isn't for large established companies!

</comment><comment><USER7> Just awesome! I can't tell you how much this initiative has sparked me to go on :-)

</comment><comment><USER8> Just completed survey. Great idea and looking forward to seeing the results.

</comment><comment><USER9> Sitting in Germany I can only say that the world needs such a thing!

<comment><AUTHOR> hehe thx lefti :)

</comment></comment><comment><USER10> very solid - Its important that this doesnt become SV-centric, or it will be flawed, given the immense startup activity in NY, CO, TX, WA, etc...

</comment><comment><USER11> Really excited to see what comes of this.

</comment><comment><USER12> Great job @maxmarmer and team

</comment><comment><USER13> Great idea, go for it!

</comment><comment><USER14> Awesome. Great idea

</comment><comment><USER15> Very cool idea!

</comment><comment><USER16> data-powered insights. love it.

</comment><comment><USER17> very much needed for the world!

</comment><comment><USER18> Great idea!

</comment><comment><USER19> Great idea!

</comment><comment><USER20> wishing you all the best

</comment><comment><USER21> Like it!

</comment><comment><USER22> go Startup Genome!

</comment><comment><USER23> go team!

<comment><USER24> Excellent group of advisors and some super smart talented teammates. Looking forward to seeing this as a success! go Bjoern and team!

</comment></comment><comment><USER3> awesome.</comment>


App.net: The Country Club of the Internet? - <AUTHOR> http://tessrinearson.com/blog/?p=516

<comment><USER2> > _It's [HN] also boring as hell. It's an echo chamber, a bubble._

Funny... the reason I like HN is because the comments are actually well- thought out and interesting.

I honestly can't understand how Twitter, with it's character limit and lack of threads, can provide more "interesting" "discussion".

<comment><USER3> I agree. I think that there are _a lot_ of situations where homogeneous interests/views can preclude interesting conversations, but I don't think HN is a place where this applies.

The reason is, while HN may be filled with all people who like startups--in fact, it may be primarily white males--so many people know so many different things, and have so many different perspectives, that I consistently fin conversations of a higher quality than anywhere else on the Internet.

I agree with the OP that we should try not to limit who can participate in a forum because of high barriers of entry, but I'm extremely skeptical that said limitations actively lower the quality of conversations on a site like HN.

<comment><USER4> _The reason is, while HN may be filled with all people who like startups--in fact, it may be primarily white males--so many people know so many different things, and have so many different perspectives, that I consistently fin conversations of a higher quality than anywhere else on the Internet._

I think this is true only with regards to sort of the 'classic' elements of HN; discussions of technical matters, startups, and overall just strong advice is wonderful and keeps me coming back to the overflowing well.

Discussions that include fanboyism of any kind (politics, education, and Apple v. MS v. Google chief among them) are aggravating. But bad parts don't negate good parts.

<comment><USER3> Agreed, but increasingly I find that HN actually does a pretty great job of limiting the number of posts that involve any sort of fanboyism that you mention. Many may get submitted, but the community doesn't seem interested in bringing _that_ many of those posts (compared to other news sites/communities) to the front page.

</comment></comment></comment></comment><comment><USER5> "I think that diversity of thought is more refreshing."

Given that Facebook (attempts to) model our existing social networks, and that the vast majority of people socialize with people of significantly similar cultural and socio-economic backgrounds, this diversity of thought is already (for the majority) a lie. We don't go to Facebook to see how the "other" lives -- we go there to get updates on friends that are comfortingly similar to ourselves.

The people that are willing to pay app.net's admission fee are going to largely be people who socialize with other folks who are willing to pay app.net's admission fee. It's no different than the clientele at a high end restaurant, and the existence of such restaurants hasn't precluded the existence or utility of lower end restaurants.

</comment><comment><USER6> Yes, HN is a special-interest group. I actually liked it better when it was even _more_ narrowly focused, back when it was mostly YC-funded companies and their friends, plus spies like myself. [1] It was probably even _more_ "boring" then, for people who were not me: There were fewer contributors and a lot more focus on a particular subset of startups. It was even called "Startup News".

But what of it? It is not the job of any one site on the web to represent the whole world. That's what the rest of the web is for. Use that navigation bar!

Meanwhile, of course Twitter is exactly as diverse as you want it to be: It's much bigger, which is balanced because you control the mix of who you read. You can tweak your follower list to be fun and interesting. On the flip side, it's quite possible to tune your Twitter experience to be far narrower than HN ever has been. It's up to you.

As for App.net, yes, here in its earliest stages it definitely excludes people who can't afford $4.25 a month. [2] And that is too bad. Perhaps even unjust. However, dare I point out that in the USA it's pretty darned low on the list of unjust things: I literally just spent more than $4.25 in _one day_ riding public transit, which suggests that Boston is, in a sense, at least 30 times more exclusive than App.net. [3] I'll reserve my supply of righteous anger for high rents, soaring medical costs, usurious check-cashing outfits, high broadband costs, and state university tuitions, I think.

(The biggest injustice of a $4.25 monthly fee is that it excludes people from places where US$4.25 is a lot of money. Here we must hold out hope that prices will fall over time. Which they almost certainly can do: It takes more money to invent a thing than to run it at scale.)

\---

[1] Flaw Number One of the "country club" analogy is that country clubs don't publish their internal discussions to globe-spanning message boards where anyone can read them, including those of us who aren't yet computer scientists and don't have YC startups.

[2] Flaw Number Two of the "country club" analogy is that country clubs are considered snobbish not merely because they cost a lot, but because you can't necessarily join one simply by paying the fee. They reserve the right not to admit you even if you pay. AFAIK App.net does not, although presumably they'll boot you for policy violations.

[3] Oh, you think you'll save money by driving? Have you priced the parking in Boston lately? Calculated the per-mile cost of operating your car?

</comment><comment><USER7> HN is a circle-jerky echo chamber? Really? I can't really disagree strongly enough with this.

Back when I was a reddit junkie, I found that my use of the site was actively making me unhappy. Sure, people came from more diverse backgrounds, but the structure of the community encourages rhetorical maneuvering and brutal riposte. The problem was that I was _good_ at it, and I was really addicted to the absurd emotional attachment that I had to watching people agree with me. Of course, that attachment went both ways, but as with most experiences, the negative experiences were more mentally prominent than the positive. The result was that I felt bitter a lot of the time, and when I channeled that bitterness into acerbic responses, I was _rewarded_. This is not good for the soul.

This, I think, illustrates two important points about exclusivity.

First, the cutthroat nature of high-karma commenting on reddit is in many ways a direct result of the site's laissez faire voting. Anyone can downvote anyone, and the exact total of those votes is then shown to everyone. I made this problem worse by writing Reddit Uppers and Downers, which shows the upvote and downvote counts separately. Two subtle but important ways that HN elevates the discourse are by reducing the information presented by voting, and by regulating the downvote privilege. One could decry this as "elitism", but I think the positive effect it has on discussion should not be underestimated.

Second, my problem became worse as the reddit community became less exclusive. Arguably, this could have been my own inability to cope with a broader variety of viewpoints, but I think the famed Eternal September problem was the larger issue.

The most rapid decline was in the use of downvotes. The guideline that it should be reserved for unproductive comments became ignored more and more with time. This effect was infectious even for established users, and the result was that the downvote button became a "dislike" button.

And more gradually, the level of discourse suffered as well. When I joined, reddit was a place where unusual and/or controversial opinions sparked interesting conversation. When I left, soon after the advent of the "sexual content relating to minors" rule, arguing that maybe the rule was a tad too broad would often get you labeled as a pedophile.

And the thing is, I still like seeing a comment get upvoted on HN. But what makes me _happy_ is when someone disagrees with me and is willing to put thought into telling me _why_ , and, if I'm lucky, actually _convinces me to change my position_.

If you want to maintain that scenario, you need to make sure that new members of the community are instated gradually enough that the community's principles aren't compromised. If that comes at the cost of a little intellectual diversity, then so be it.

</comment><comment><USER8> I think "gatekeeping" may be a bit of a strong term for what's happening here.

I get where she is coming from, and it is something that should be acknowledged by the users of the site. The key point here is that the GOAL of App.net is not to cater to a different market (those able and willing to pay $50 to have an ad-free real-time network with control over their data).

This is just the economic impact of charging something for a service - it will limit the audience that will buy/use the product.

In particular, I think the comparisons to Hacker News and Quora are exactly what it will be like. Quora is a fantastic Q/A site, and as much of a fan as I am, it still has not reached the completely 'mass market' that yahoo answers is used by. In the same sense, Hacker News has very different content on average than, say, Reddit.

So long as the content creators (users) of App.net realize their audience and the effects that have been created by the circumstances and economics of the network, then it will still make sense.

So perhaps the call here should be for people simply to realize that App.net will never be Twitter. And /maybe/ that's a good thing.

</comment><comment><USER9> Reading this made me wonder why so much concern about segregation due to 50 dollars as an entry fee. You already have segregation on an important part of the world population in terms of:

-access to electricity -access to a computer-like device -access to an internet connection' -free time to participate in social networks

as far as battles against segregation go there seems to be a considerable number of more important causes.

</comment><comment><USER10> "I'm sure that a post bashing HN will be very well received on HN."

Actually, she's right. HN is nothing if not constantly self-introspective, and in the wild fast-paced world of startups, there's no such thing as bad publicity. I'm almost certain that HN as a whole will appreciate the attention.

That said, the way the article brings up HN seems to be a red herring. The barrier of entry to HN is far lower than that of App.net.

<comment><AUTHOR> Hah, well, I was surprised to get even FOUR upvotes. Good to know, I guess...?

Anyways, I had meant to bring up HN as more of an example of a bubble--both because it has an exclusive attitude (which is exemplified in part by a non- zero barrier to entry) as well as a self-selecting user base.

<comment><USER11> I'll give you another one. Not sure I agree completely though. Most popular communities do deteriorate in the quality of the discussion over time (even this one, spend some time here, you'll see pretty quickly).

The truth is I think it is important for people to "choose" to be real consumers of the services (yes even content services) they feel provide value to them. Otherwise what's the incentive to do anything but pander to the masses to get "eyeballs". Most importantly, there is clearly room for both models, what your post suggests is a false dichotomy.

</comment></comment></comment><comment><USER12> Does this mean it's too late for me to get together my op-ed piece about App.net's "segregating" policies?

Seriously, though, do we know if the $50 upfront is only for this early stage or is that also the plan for when it goes live to the public? I would think there'd be a subscription option...

<comment><USER13> I hear the subscription price will be... $50 per year. But seriously, I would hope Dalton is open-minded about the future evolution of his business model.

<comment><USER12> Well, for the kickstarter-like campaign they ran, $50 in one lump sum makes sense. I would hope when it's live, they would also offer a monthly payment plan as well.

</comment></comment></comment><comment><USER14> Why the white male bashing? That is a very narrow minded view and I really hope that you can grow and see beyond race and gender. It is a big world out there and I recommend you go out and explore.

</comment><comment><USER15> The bottom line here is that almost everything has a cost. You can pay with money (App.net) or you can pay with freedom (Facebook / Twitter). Is there a third way besides pure charity?

<comment><USER16> I was about to say the same thing. I also don't understand some of the direction of the complaint. The people she knows who signed up were male, and that's unfortunate because? Her female friends were not being dicouraged from signing up, were they? I have no idea why the anecdotal self-selection would be bad. Would it be disappointing if most of her readers were female? Or would it be unfortunate if most poeople visiting substance-abuse support communities were substance abusers?

Ok, so it's unfortunate that as far as she knows males signed up. But then, it's also bad that there is a $50 cost to entry. It's a qualitatively bad site (it's all these self-selecting guys), but I'd like it to be easier (dollar- free) to join a site I thought was the wrong direction in social?

If app.net is successful, what would prevent others from creating their own interest-driven sites? It's not as if reddit, flickr, etc. have unified users sharing and seeing everything anyway. People who go to those sites generally spend their time in/with specific groups. Just because "it's open" and there is free access does not ensure that people from disparate groups within those sites interact and share ideas. People in many sites tend to gravitate towards like-minded people or at least similarly-interested people.

Diversity of thought is a great goal, but in practice, people seldom look for people to genuinely question their beliefs.

<comment><USER17> I'm reading a little between the lines here. But I think this is what her answers would be:

> The people she knows who signed up were male, and that's unfortunate > because?

A lack of diversity is a fundamental evil.

> Her female friends were not being di[s]couraged from signing up, were > th[e]y?

Females must equal males in all things. Otherwise it's DISCRIMINATION by the GRAND EVIL SEXIST PIG CONSPIRACY.

> Would it be disappointing if most of her readers were female?

No. A mostly-female community is empowering. A mostly-male community is a sexist boys' club. THIS RULE HOLDS REGARDLESS OF ALL FACTS, REASONS, AND MITIGATING CIRCUMSTANCES.

> But then, it's also bad that there is a $50 cost to entry.

CAPITALISM AND MAKING MONEY are evil under all circumstances. In the future, everyone will work for the government, and all will be sweetness and light. Despite the fact that this was tried and failed miserably, as anyone who knows anything about the past 100 years of world history can tell you.

> I'd like it to be easier (dollar-free) to join a site I thought was the > wrong direction in social?

The world owes me a handout. Obviously.

> If app.net is successful, what would prevent others from creating their own > interest-driven sites?

OH NOES MORE CAPITALISTS IT'S SPREADING

</comment></comment></comment><comment><USER18> If App.net is anything like HN then sign me up!</comment>


Ask HN: What are more books like "Masters of Doom" or "Showstoppers"? - <AUTHOR> I recently read "Masters of Doom" and found it to be far more motivating than any self help book. What books do you think are similar to it? <comment><USER3> The usual recommendations are: "Racing the Beam", "Where Wizards Stay Up Late", "The Idea Factory", "Soul of a New Machine", "The Tinkerings of Robert Noyce"

All fine reads. But I just want to remark how singular "Masters of Doom" is. It struck me just the other day. The entire id Software team was 18-19 years old. And each individually possessed 4-5 years of (bare-metal) computer game making experience by the time they joined!

I think about that a lot when I see high schoolers today crafting worlds so easily in Unity ;)

<comment><USER4> In my opinion, Masters of Doom (as an audiobook) went from good to exceptional because of Will Weaton's narration.

<comment><USER5> Entirely agree. I have been hearing this while running and I have never been so motivated to get out and run, just so I could hear another chapter.

</comment></comment></comment><comment><USER6> Computer history is one of my favorite topics, so I've read a lot over the years. Here's my list:

>> Classic computer history:

\- " _Hackers: Heroes of the Computer Revolution_ ", Steven Levy

\- " _The Innovators_ ", Walter Isaacson

\- " _Valley of Genius: The Uncensored History of Silicon Valley_ ", Adam Fisher [innovative format, tons of interesting tidbits after you get used to the style. Read only after the other two above]

\- " _The New New Thing: A Silicon Valley Story_ ", Michael Lewis

\- " _The Second Coming of Steve Jobs_ ", Alan Deutschman

\- " _Revolution in The Valley: The Insanely Great Story of How the Mac Was Made_ ", Andy Hertzfeld

\- " _Masters of Doom_ ", David Kushner

\- " _Idea Man_ ", Paul Allen

\- " _Where Wizards Stay Up Late_ ", Katie Hafner

>> Entertaining stories, but less historical value:

\- " _Ghost in the Wires_ ", Kevin Mitnick

\- " _Chaos Monkeys: Obscene Fortune and Random Failure in Silicon Valley_ ", Antonio Garcia Martinez

\- " _Hatching Twitter: A True Story of Money, Power, Friendship, and Betrayal_ ", Nick Bilton

>> On my to-read queue:

\- " _How the Internet Happened_ ", Brian McCullough [just started; very promising]

\- " _Troublemakers: Silicon Valley 's Coming of Age_", Leslie Berlin

\- " _Code Girls: The Untold Story of the American Women Code Breakers of WWII_ ", Liza Mundy

\- " _Fire in the Valley: The Making of The Personal Computer_ ", Paul Freiberger / Michael Swaine

>> Others worth mentioning (but just read a few chapters):

\- " _The Supermen: The Story of Seymour Cray_ ", Charles Murray [about Cray Computers]

\- " _Racing the Beam_ " [about Atari]

\- " _Commodore: A Company on the Edge_ " [about Commodore]

>> Bonus:

\- " _Art of Atari_ ", Tim Lapetino [great as a coffee table book, particularly if you grew up in the 80's :) ]

<comment><USER7> Accidental Empires by Robert X Cringely is worth a read.

[https://en.wikipedia.org/wiki/Accidental_Empires](https://en.wikipedia.org/wiki/Accidental_Empires)

<comment><USER8> Accidental Empires is probably THE classic, absolutely worth a read.

I also enjoyed "Dealers of Lightning: Xerox PARC and the Dawn of the Computer Age" by Michael Hiltzik and "Showstopper! The Breakneck Race to Create Windows NT and the Next Generation at Microsoft" by G. Pascal Zachary

</comment></comment></comment><comment><USER9> Jordan Mechner's Prince of Persia journal [1]. I also have "Blood, sweat and pixels" on my reading list [2].

1: [https://www.jordanmechner.com/store/the-making-of-prince- of-...](https://www.jordanmechner.com/store/the-making-of-prince-of-persia/)

2: [https://www.harpercollins.com/9780062651235/blood-sweat- and-...](https://www.harpercollins.com/9780062651235/blood-sweat-and-pixels/)

<comment> sunny--tech I read both Blood, Sweat and Pixels and Masters of Doom over the holidays. Definitely recommend BSP

</comment></comment><comment><USER10> The Cuckoo's Egg by Cliff Stoll is a great book... Hackers, Cold War intrigue, the CIA, the KGB, actual shell scripts, it has it all!

<comment><USER11> Is there an audiobook version of this book? I can't seem to find one.

<comment><USER10> I'm not aware of any, but I don't listen to many audiobooks. It seems like audible doesn't have one, so there's probably not one out there.

</comment></comment></comment><comment><USER12> Edward Snowden's book is so good. It really described my life growing up with computers and the advent of the Internet. I'm not sure it fits MoD or showstoppers, but it certainly fits into the category of books listed here.

</comment><comment><USER13> "Hackers: Heroes of the Computer Revolution" by Steven Levy. I found this one very motivating, covering MIT hacker heroes of old, early game developers, and the Homebrew Computer Club.

<comment><USER14> Seconding this recommendation, great book.

The Cuckoo's Egg is not quite similar to Masters of Doom, Where Wizards Stay Up Late, or Hackers, but it's an extremely good book about tracking hackers and Berkeley Unix (BSD). It's motivating in a similar way though :)

</comment></comment><comment><USER15> A rather obscure (but I think worthy) entry is Bob Pape's "It's Behind You".

Pape was a programmer who wrote games on the 1980s British 8-bit Sinclair Spectrum computer and in this book he talks about his experiences both with the gaming industry at the time and how to program on such a limited machine. It's free on his website ([http://itsbehindyou.atwebpages.com/download.html](http://itsbehindyou.atwebpages.com/download.html))

<comment><USER16> The Spectrum version of R-Type was legendary. This book is well worth a read. Especially for the insights as to how badly young game devs were treated by some of the companies back in the day.

</comment></comment><comment><USER17> Game Over by David Sheff. An older book about the early days of Nintendo and specifically focused on how Nintendo came to the U.S. with the N.E.S. Lots of interesting anecdotes and well told. I am always surprised more people haven't read this one!

<comment><USER18> Wow. I read that when I was like 16-18. I'll never forget the green cover with Mario on it.

</comment></comment><comment><USER5> Great timing for this question, I just completed the audiobook and was also looking for something similar.

Masters of Doom is probably the best book I have ever consumed. It was extremely motivating, the description of everything made me wish I could go back in time and be there so badly.

Think of having a goal you are so passionate about reaching, that you don't care about food, baths or anything else, you just want to work on this 20 hours a day. Must have been amazing.

Myself, I definitely will have a look at the Wolfenstein 3D and Doom "Game Engine Black Book" by Fabien Sanglard.

</comment><comment><USER19> "What the Dormouse Said" is a classic, highly recommended.

Much more niche is "Race for a New Game Machine," highlighting the IBM design team responsible for the chips powering the Xbox 360 and PS3.

</comment><comment><USER4> Some interesting (audio) books that sort of deal with the story and people behind technology that I liked:

 _" King of Hearts: The True Story of the Maverick Who Pioneered Open Heart Surgery"_ \- Medicine is a technology too, but how innovation happens there is fascinating (and a little mind boggling)

 _" Schiit Happened"_ \- small hardware startup by a few guys (they make their own headphone amps/dacs in the US)

 _" Elon Musk"_

 _" iWoz"_

</comment><comment><USER20> Really enjoyed "The Idea Factory". I'm currently reading "Sandworm" \- more cybersecurity related, but it's really good so far.

</comment><comment><USER21> Does 'Showstoppers' refer to 'Show-Stopper!: The Breakneck Race to Create Windows NT' by G. Pascal Zachary? I did enjoy that.

<comment><AUTHOR> Yes yes. I remember the book by the name Showstoppers only, as the word somehow has got stuck in my brain.

</comment></comment><comment><USER22> I have a category on my bookshelf of semi humourous memoirs of engineering projects.

The two classics are:

Surely You're Joking Mr. Feynman, about the Manhattan project and other places he ended up.

And Tracy Kidder's The Soul of a New Machine, about the engineering effort behind the Data General Nova. This one literally has a Pulitzer.

I also enjoyed The Race for a New Game Machine, but not as much as the above books.

<comment><USER4> I second Surely You're Joking. There's a second Feynmann book - "What do you care what other people think"

</comment></comment><comment><USER23> Not gaming related but if you want to know the origins of where everything in computation came from, George Dyson's "Turing's Cathedral" is a revelation. It's the story of computer, told by interviews of the folks who created the architecture of it all. It's incredible history

</comment><comment><USER24> All good recs so far. Here's a few I haven't seen mentioned yet -

Computing in the Middle Ages: A View From the Trenches 1955-1983 - <USER2> Ornstein

Early British Computers - Simon Lavington

Geeks Bearing Gifts - Ted Nelson (and also Computer Lib/Dream Machines)

more recently - UNIX: A History and a Memoir by Brian Kernighan

</comment><comment><USER25> _Dreaming in Code: Two Dozen Programmers, Three Years, 4,732 Bugs, and One Quest for Transcendent Software_

This book really captures what software development is like. Highly recommended for non-tech folks who want to understand what programmers do all day.

</comment><comment><USER26> Not game-related, but "Almost Perfect", the story of WordPerfect the company.

[https://www.wordplace.com/ap/](https://www.wordplace.com/ap/)

As well as "The Perfect Store", the story of eBay

</comment><comment><USER27> "Stay Awhile and Listen" is a great book covering the founding story of Blizzard North, creators of Diablo 1 & 2\. While not as great as Masters of Doom, it reminded me quite a bit of it.

</comment><comment><USER28> Flash Boys by Michael Lewis is tangentially related.

It has some programming related themes. Listened to it while I was working for a FinTech client in the online trading industry.

</comment><comment><USER29> Not about the gaming/IT industry but "Shoe Dog: A Memoir by the Creator of Nike" is another incredibly motivating founding story

</comment><comment><USER30> Exploding the Phone by Phil Lapsley is good and covers the years of phone phreaking.

</comment><comment><USER31> Stay awhile and listen. It's a book about Blizzard.

</comment><comment><USER32> The Codebreakers, David Kahn.

</comment><comment><USER33> Dreaming in code!</comment>


Running MemSQL's 107 Node Test Infrastructure on CoreOS [video] - <AUTHOR> http://blog.memsql.com/running-memsqls-107-node-test-infrastructure-on-coreos/

<comment><USER2> "At a recent CoreOS meetup, I gave a presentation on the design and implementation of Psyduck, which is the name for MemSQL's test infrastructure."

So does the test infrastructure get exponentially more powerful when under pressure, or what?

<comment><USER3> Interestingly enough, in some ways it does. For example, during our nightly stress runs the fact that the system is under so much pressure helps induce race conditions that are otherwise pretty much impossible to reproduce.

</comment></comment><comment><USER4> Awesome! I wish I had the opportunity to work with a large scale docker/coreos deployment like this. I really perked up when you started talking about PXE booting, I wanted to see what you guys were doing to manage updates.

I'm trying to make automated updates when using PXE[0].

When installed to disk, CoreOS's update manager automatically polls for updates and downloads them in the background. On next reboot, the new version is shifted into place. This is unfortunately unavailable when booting with PXE.

<comment><AUTHOR> Working on large server deployments is a blast! And CoreOS makes it even more fun via its read-only focus.

In our system we don't do automated updates since we don't need that functionality. In order to send out an update I download the image that I want to deploy, patch it with CPIO (with my custom initialization code) and then register it with DNSMasq (put it in a directory). At that point any machine that reboots will start up with the new image rather than the old one. I usually test one/two machines and then if they look good a script reboots the rest.

If you wanted to do automated deployments, you could basically do the same thing provided you have a server to manage the process. The master server would simply poll CoreOS for new releases, and then do the same steps as above to roll out the image. Incremental updates are trivial as well since you are just rebooting the machines.

One thing to consider is running CoreOS out of memory rather than installing it to disk. I find this is one of the best features of CoreOS since it makes it even harder to think of a machine as any more than a temporary computing resource.

Hope that helps! Good luck!

<comment><USER4> My thought was to have CoreOS run the systemd cron job for update_engine even when booting off of PXE, but to proxy[0] through corepxe (the jawn I'm trying to write). This way I can MITM the request and make the request on behalf of the host from corepxe, and take advantage of how omaha[1] works by returning the appropriate status code and downloading in the background.

[0][https://coreos.com/docs/cluster-management/setup/update- stra...](https://coreos.com/docs/cluster-management/setup/update- strategies/#updating-behind-a-proxy) [1][https://code.google.com/p/omaha/](https://code.google.com/p/omaha/)

<comment><AUTHOR> That seems reasonable, however I am not super familiar with how update_engine works. Likely your solution will work provided you setup your image to install itself to disk and boot from there.</comment></comment></comment></comment>


Berkeley and 2U to launch online data science degree - <AUTHOR> http://www.ft.com/intl/cms/s/2/b93503a4-ed4c-11e2-ad6e-00144feabdc0.html?ftcamp=published_links%2Frss%2Fbusiness-education%2Ffeed%2F%2Fproduct#axzz2ZJYmKzAh

<comment><USER2> Wait a second, $60,000 for a one-year program?! Wasn't online education supposed to be cheaper to deliver, more efficient? They claim class sizes of no more than 20, but this is a graduate program, small class sizes are the norm in graduate school, so that's not really anything terribly impressive. I'd really like to hear someone explain why this program is so expensive...

<comment><USER3> It also looks like the other 2U online college program (MBA@UNC) is about $93,500[1] over the course of the degree.

[1] [http://onlinemba.unc.edu/admissions/tuition-financial- aid/](http://onlinemba.unc.edu/admissions/tuition-financial-aid/)

<comment><USER4> IMO This is not targeted towards individuals applying on their own.

I went to a walkabout of a similar online education company's office and asked them about the high cost for an online degree. The answer I received was

1\. there is demand for this and

2\. Most of the demand comes from people in the military serving in remote locations or people working inside other large organizations which foot the cost. and

3\. They provide online infrastructure to courses of schools like UC-B, UNC etc and the colleges set the price so as not to dilute their "brand" because the online degree does not mention the fact that the degree was obtained online (this could have changed).

All in all, my initial shock was a bit tempered after hearing the realities involving all 3 parties : the school, the student and the online enabler.

</comment></comment></comment><comment><USER5> _which has tuition fees of $60,000_

Uhm, looks like they did get something wrong about the internet-degree thing.</comment>


AP: Hilary Clinton ran own email servers for private address - <AUTHOR> http://bigstory.ap.org/article/b78ba433af3a45209668f745158d994c/clinton-ran-homebrew-computer-system-official-emails

<comment><AUTHOR> Maybe transparency-adverse public officials are the target market for ownCloud?</comment>


Httpoxy – A CGI application vulnerability - <AUTHOR> https://httpoxy.org/ <comment><USER2> Phusion Passenger author here. Ruby and Python apps deployed through Passenger are _not_ vulnerable to this issue, despite Rack and WSGI using CGI-style names. That's because Passenger does not actually set OS environment variables. It merely passes a hash table/dictionary to the application with CGI-style keys.

<comment><USER3> I must say I really appreciate your hard work FooBarWidget. It seems, to me, that anytime something like this gets brought up, you've already addressed/fixed the problem or never even had it in the first place.

I've deployed a few large apps using Phusion Passenger, that years later are still running with incredible stability. Thank you!

</comment></comment><comment><USER4> Another fancy bug website for the list! [https://github.com/KeenRivals/Bugsite- Index](https://github.com/KeenRivals/Bugsite-Index)

</comment><comment><USER5> Perl CGI applications using Taint mode would be unaffected (unless they intentionally break the tainted variables). I've always wondered why other languages never implemented a similar "security" feature. [http://perldoc.perl.org/perlsec.html#Taint- mode](http://perldoc.perl.org/perlsec.html#Taint-mode)

<comment><USER6> libwww-perl has been unaffected since 2001

</comment></comment><comment><USER7> [https://groups.google.com/forum/m/#!topic/golang- announce/7J...](https://groups.google.com/forum/m/#!topic/golang- announce/7JTsd70ZAT0)

1.6.3 will include [https://github.com/golang/go/commit/fad2bbdc6a686a20174d2e73...](https://github.com/golang/go/commit/fad2bbdc6a686a20174d2e73cf78f1659722bb39) in addition to the security fix.

<comment><USER8> That's pretty crazy assembly syntax... It looks like "AX" actually references "EAX" (in 32bit mode) and "RAX" (in 64bit mode), so neither Intel nor AT&T syntax. Wonder when we'll see the first crypto bug in ported code that mixed up AX/EAX/RAX...

<comment><USER9> > That's pretty crazy assembly syntax... It looks like "AX" actually > references "EAX" (in 32bit mode) and "RAX" (in 64bit mode), so neither Intel > nor AT&T syntax.

Yeah it's plan9 assembly which is its own thing (just as plan9 "C" was its own thing): [http://plan9.bell-labs.com/sys/doc/asm.html](http://plan9.bell- labs.com/sys/doc/asm.html)

<comment><USER10> AX, is just the lower 16 bits of EAX, so all correct. This is GAS / AT&T syntax

<comment><USER11> From the context it's obvious that 0x0 is right. AX must be 32 bits (or 64 bits) wide.

[https://github.com/golang/go/blob/fad2bbdc6a686a20174d2e73cf...](https://github.com/golang/go/blob/fad2bbdc6a686a20174d2e73cf78f1659722bb39/src/runtime/sys_darwin_386.s)

</comment></comment></comment></comment></comment><comment><USER12> > RFC 3875 (CGI) puts the HTTP Proxy header from a request into the > environment variables as HTTP_PROXY

I don't get it, so if I use CGI, and from my code, I query the env variable named 'HTTP_PROXY' , I will get what was set by the request header PROXY and not an environment variable 'HTTP_PROXY' as defined by the system the cgi executable is running on ?

edit :

I looked at CGI

[https://en.wikipedia.org/wiki/Common_Gateway_Interface](https://en.wikipedia.org/wiki/Common_Gateway_Interface)

I don't understand why this protocol just doesn't pass informations as an argument for the cgi script, why does it have to use environment variables ?

<comment><USER13> If your question is regarding the precedence of the Proxy header vs. an environment variable, I'm not sure which of the two would win, but even if it's the latter, anyone who doesn't set it (which is probably the majority) would still be vulnerable.

<comment><USER14> CGI implementations will take the value of the Proxy header and clobber whatever might have originally been set in the environment at HTTP_PROXY.

</comment></comment></comment><comment><USER15> A good non-technical explainer: [https://medium.com/@nzdominic/what-is- httpoxy-65a33a8a1f4d#....](https://medium.com/@nzdominic/what-is- httpoxy-65a33a8a1f4d#.qqum4q5qa)

<comment><USER16> It says that API requests using TLS are not vulnerable. However, many applications won't do the appropriate certificate checking. If HTTP_PROXY is set to a mitm proxy, it can succeed.

<comment><USER17> The reason why they aren't affected is that you need to set HTTPS_PROXY for [https://](https://)

<comment><USER18> I could imagine not all applications doing that, though.

</comment></comment></comment></comment><comment><USER19> Same vulnerability as [https://marc.info/?l=apache-httpd- dev&m=142277799425452&w=2](https://marc.info/?l=apache-httpd- dev&m=142277799425452&w=2)

<comment><USER20> You can go even further back to 2001 when this was first noticed:

[http://www.nntp.perl.org/group/perl.libwww/2001/03/msg2249.h...](http://www.nntp.perl.org/group/perl.libwww/2001/03/msg2249.html)

</comment></comment><comment><USER21> WPEngine with a not-so reassuring response: "We're aware of it, but no posts have been made thus far. We will update our blog or email customers if we feel that there's anything to be concerned about."

(To be fair, this was probably a low-level support engineer, so probably not that "official" of a response)

</comment><comment><USER22> I always wondered why proxy configuration env variable is usually http_proxy, not HTTP_PROXY, despite env variables are usually uppercase. It made me clear why.

Moreover, curl has http_proxy, but also HTTPS_PROXY, FTP_PROXY, ..._PROXY, ALL_PROXY and NO_PROXY.

<comment><USER23> Yeah. But the really interesting thing for me was seeing that when Curl originally fixed it in 2001, they admitted the fix might not work for "Windows NT" (where environment variables are case-insensitive).

From our testing, we could get getenv in mod_php to return HTTP_PROXY when you ask for getenv('http_proxy') (seems to happen in the apr stuff?) - but that didn't affect PHP's libcurl extension, which made it a whole lot less interesting.

But yeah, if you're running curl itself under CGI with case-insensitive env vars you might still be in trouble.

</comment></comment><comment><USER24> The real lesson here is that environment variables can't be blindly trusted and that they can be controlled by an attacker unless proven otherwise. They should be treated as untrusted input that needs to be validated.

If you start a new process, always be explicit about the environment variables you want to pass on. Don't just let the subprocess inherit your environment variables.

If you write a library, do not rely on environment variables unless the user of the library has explicitly opted-in to that.

<comment><AUTHOR> CGI prefixes environment variables with "HTTP_" (for HTTP headers), the problem is this prefix is not unique.

</comment></comment><comment><USER25> Hah, I've found that on my development machine I have to set `http_proxy`, `HTTP_PROXY`, `https_proxy` _and_ `HTTPS_PROXY` for everything to work right.

This issue is pretty bad though.

</comment><comment><USER26> Somewhat related, but not security-related: Quite a few HTTP libraries take the HTTP_USER_AGENT environment variable and insert it as the User-Agent header on outgoing requests. When used in a CGI script, this results in the upstream User-Agent header being forwarded, which is probably not what was intended.

</comment><comment><USER27> This must be the most elegant vulnerability I've seen in ages. It almost feels like the pieces are interacting as designed. You politely ask the server to use a proxy -- and it does!

</comment><comment><USER28> An extra problem here is many app-embedded HTTP clients are configured to ignore HTTPS certificate validation.

<comment><USER29> Not sure this is an issue as you don't make http requests TO the app.

</comment></comment><comment><USER30> Off-topic but this site should enable gzip encoding for CSS; this would save 83% on the 113 kB main.css…

<comment><USER31> How on Earth does somebody even have 113 KB of CSS?

<comment><USER32> I removed the stylesheed from devtools, and the site was way more readable, and basically the same in terms of organisation.

<comment><USER33> How do you remove an asset file for a web page via Chrome dev tools?

<comment><USER31> Deleting the `link` tag is one way to do it.</comment></comment></comment></comment></comment>


Ray Dalio's radical truth - <AUTHOR> http://www.institutionalinvestor.com/Popups/PrintArticle.aspx?ArticleID=2775995

<comment><USER2> Here's the link to Dalio's book on principles. I highly recommend it.

[http://www.bwater.com/Uploads/FileManager/Principles/Bridgew...](http://www.bwater.com/Uploads/FileManager/Principles/Bridgewater- Associates-Ray-Dalio-Principles.pdf)</comment>


Books for tech leads - <AUTHOR> Which books would you recommend a Tech Lead to read? I am looking for books related to people/team management etc <comment><USER2> Management Books

The Five Dysfunctions of a Team - What makes your team not work?

Radical Candor - how to treat people without being a jerk or pushhover

Tech Books

Mythical Man Month - The classic on tech management

Phoenix Project - this book is best described as management porn. But it has a focus on dev ops.</comment>