Pro drivers are competing with gamers after F1 and Nascar canceled races - <AUTHOR> https://www.theverge.com/2020/3/22/21184192/sim-racing-coronavirus-f1-nascar-iracing-veloce-esports-max-verstappen-lando-norris <comment><USER2> I've tracked my car for 5 years, then started racing for the past 5 years, and moved up to pro racing two years ago competing in Pirelli World Challenge and MX-5 Cup.

The simulators today are fantastic. The skills you learn in the simulator are 100% transferable to real life, and they happen without you having to think.

I went 9 years without using a sim and then two years ago started using it.

What gets transferred immediately are how you turn the steering wheel, catching the car in slides, and your gas pedal application while this is happening.

People often forget that our bodies are complex operating systems and they are operating distinctly. There is plenty of documentation that shows mirroring for knowledge transfer works, and when you use a sim the habits that you develop are available subconciously to you.

I'll give you two examples, the first is at my last race in Global MX-5 Cup at Laguna Seca. At the start of the race on the opening lap I was going through the corkscrew and got hit at the apex of the right hand corner. The car immediately went into a large slide because of how much steering input I had. I immediately started to correct with both steering input and gas pedal application. I had to correct the two slides to save the car. Immediately upon impact my body was doing what I needed to do, it was completely subconscious, so much so that the only conscious thought I had was, wowee fun, just like the simulator. There was no fear, despite the fact that the slide was massive and I was likely to hit the wall if I didn't catch it.

The second happened a couple of months earlier. I was testing at Sonoma in my BMW m235ir for a Pirelli race. I was going out on old tires, that we were going to swap for fresh ones at the next session. Going through the double right hair pin, I applied a bit too much throttle, car started to slide, I was correcting, but under corrected and went back to full throttle too soon. The car spun, hit the wall, caused $10,000 in damage. The reason that happened was whenever I played the sim I always kept my foot in the gas. Just trying to save the car and have fun. Then I realized, that when I use the simulator I can't approach it from a "fun" mentality, because my brain is remembering what I'm doing. I have to treat it like real life, or I will do something stupid in the car.

There are certainly differences between how a real car handles and a simulator handles, but the skills are the same and what you are really honing is the ability to control the car which is completely transferable. The brake points are very transferrable so it is a great way to push yourself in a simulated practice to get ready for a real race. Learning the track is obviously a benefit.

iRacing has done a fantastic job at all of the above. Coming from a tech background I'm actually blown away by the realism and how much it teaches you transferrable skills.

If you take one of the top 5 people in iRacing that's never been in a car before and put them into a race car they will be quick. This is because everything that will be happening they have already trained for. They won't have fear because everything will feel the same. As long as you don't have fear, and have the underlying skill, subconsciously you will do what you need to.

The reverse isn't as true. Being quick in real life doesn't mean that you will be fast in the simulator. This is simply because it can't replicate the physics 100%. In iRacing it is very sensitive to understeer as you enter a corner, where in real life you can get the car to slide a bit more with some hard inputs into the steering wheel.

But overall I would say it is a 90%+ effective tool, so much so, that anyone who isn't using one in pro racing today, is really at a disadvantage.

The other thing that is critical to racing is practice. Any sport you take seriously the more time you spend doing it the better you will be. Unfortunately racing is extremely expensive, and so no one but the absolute pros can spend as much time as they would like in a race car. Being able to hop on the simulator, at any time, is amazing to help you continue your training and stay sharp during the offseason, or at times like this when all racing is pretty much cancelled.

Anyone who is saying that this isn't transferrable is simply incorrect. They've already taken pure sim racers and put them behind the wheel of real race cars and those people did phenomenally well.

There is more strain physically in a real car, g-forces, breathing, pulse will be higher, but these things are much easier to train for.

There is a reduced amount of feedback certainly, one of the biggest issues for me is not getting a great feel for the brake pedal, but this is where muscle memory comes in, you keep doing laps and refining and your muscles will recognize what inputs you need even though the g-forces aren't there.

Furthermore I tried VR iRacing for the first time and it was insane how amazing the VR is. It is completely life like, just missing the rush of air around me.

I was at Road Atlanta doing laps and went through the last corner on my first lap. You come down a massive hill, hit the compression, and turn right into the fastest corner of the track where you also have walls on both sides that are very close. This is not the corner to fuck up. There is tremendous g-forces in this corner in real life. On the way down the hill I feel fine in VR. The second I hit the compression I get dizzy. This is because my eyes and everything around me is recognizing this part of the track and my body is tensing because it remembers real life. But my body isn't feeling the compression. So the difference between what my eyes see, my brain interrupts, and the lack of sensation in my body is making my brain go haywire and makes me dizzy.

The first time I just thought it was odd. The second lap same exact thing happens. The third lap again. It happened every time I had to take the VR off because I started getting a headache.

Anyway those are my real life stories. If there is anyone on here racing or tracking their car I highly recommend they get a great sim and install it in their house. It will be a lot cheaper than tracking and infinitely less expensive than racing and it will tremendously improve your skills.

This is probably less relevant for top of the sport racers, but if you watch today's youngest F1 athletes all of them do sim racing and all of them are extremely quick. Specifically Lando Norris and Max Verstappen.

<comment><USER3> Do you have a recommendation for a beginner VR setup?

<comment><USER4> 2nd this. Sounds very interesting.

<comment><USER5> I did this recently and am extremely satisfied. For years now now I kept on buying games that I never played because I just couldn't get into it them like I did when I was young.

I recently put together a rig with fanatec csw 2.5 wheel, formula v2 wheel, csl elite pedals, the simlab tr1 frame, and an NRG innovations seat I bought off amazon for 200$. All in all probably set me back around 1600$.

I'm having a grand old time getting into iracing.

Best investment I've made in ages. Also a great coronavirus shut-in hobby.

<comment><USER6> Though it should be noted that you _really_ don't need to spend that much. You could start off with something like a Logitech G29 for $250, which would clamp to your desk.

</comment></comment></comment></comment></comment><comment><USER7> It's definitely not circuit racing, but I had some experience in Rally driving for about 10 years. Did mostly gravel stuff, and did the UK WRC round 4 times in a self built car. Definitely low budget (and low talent!) stuff, but I think I have some experience and know how a car should handle on a loose surface.

I've never found a rally driving game that handles like a real car. The physics always seems off - in Dirt Rally (the last one I tried seriously, and the one that everyone raved about), the car still seems to have the old physics of pivoting around the centre of the car, but whatever, it's miles off. The mini cooper in there is about the same power and weight as the Skoda Felicia that I drove, but it behaves nothing like it. I wish it did, as I no longer have the money or time to do anything like this, and if it felt anything like the real thing I'd have a fun hobby to take part it. But I always get hugely frustrated when I can't get anywhere near what I used to be able to do - place the car with precision on the road, get a good rhythm up and start to flow, and don't seem to be able to adjust to the way the cars handle in these games. I'm sure some of it is that you can't feel what's going on - through the seat, steering wheel and pedals - in the way that you can in the real thing, but I think there's more to it than that.

Forza was pretty different - even playing it using just controllers showed that it was handling much like a car would on track (I've done some tarmac rallying as well, so I'm used to the limit on tarmac as well as gravel), but I'm not really interested in circuit racing, alas!

<comment><USER8> The biggest missing factor in sim drifting versus real drifting, which I suspect is part of the issue in rally too, is not being able to detect that moment just before countersteer is required, as you can't feel when the rear of the car starts coming around. It means you have to preempt from experience when it happens rather than actually feeling it. With practice people get good at it, but sim drifters will often end up over rotating in a real car at first. They tend to hold onto the wheel too long while letting the rear of the car come around.

For what it's worth, my real car pivots pretty much where my seat is positioned, it feels surreal sometimes, ironically like I am in a video game.

<comment><USER9> I think it comes down to equipment. A good racing wheel can already give you a feeling of understeering. I just got started with entry-level stuff, but supposedly a Fanatec wheel + good seat + buttkicker (vibration generator) can get you a long way. Then you have motion platforms at €3k+ to get to the next level :)

</comment></comment></comment><comment> W-Stool As someone who has raced formula race cars and who has been an enthusiastic participant in racing simulations since way back in the old days of Grand Prix Legends let me assure you - a simulated race car has almost nothing in common with the real experience other than your hands are turning a wheel and your feet push pedals. The sensations in a real race car are simply overwhelming - the noise, g forces, heat, and the lack of being able to see much other than straight ahead. Grand Prix Legends and iRacing were/are both tremendous fun and a real achievement - but they are nothing like the real thing.

<comment><USER10> On the contrary: there is probably no sport where the sim is so close to the real thing. Being good at FIFA 19 in no way will make you good at real football. But if you put a decent sim racer in a real race car, they are often able to put together a decent lap pretty quickly. See for instance some of Jimmy Broadbent's recent adventures in real-life racing. Conversely, real-life drivers tend to be good at simracing (e.g. Max Verstappen or Lando Norris in iRacing) because so many of the skills carry over. By contrast I wouldn't expect Lionel Messi to be any good at FIFA 19.

<comment><USER11> FIFA is a football simulator as much as Mortal Kombat is fighting simulator.

FIFA is a game.

The difference is simulator's main focus is reality, games' main focus is fun.

If FIFA was for reality it would be closer to first person QWOP than isometric view of half of field where you have perfect information and you press a key and your player does whatever trick the key was designated to perform.

The substance of the game is lost and only visuals are left.

<comment><USER12> Cars have artificial controls that are relatively easy to simulate. Any sport where the primary impact is full human body mechanics is not likely to have a sim with transferable skills.

<comment><USER11> Car racing. In car racing as a driver you typically get your input through your seat and steering wheel. Due to lack of g-forces in typical simulator this is all compressed to force feedback in steering wheel. There are really powerful steering wheels that have very high definition of vibration and forces they can transfer and this gives a lot of information about how the car is doing on the track, whether you are loosing or already lost the grip.

<comment><USER12> I'm not saying a sim is like real racing. I'm saying that human-car interface allows for play-control that maps to the real activity in a way a soccer or snowboarding game never can.

</comment></comment></comment></comment></comment></comment><comment><USER13> An online tournament of FIFA 20 (soccer game by EA Sports) just finished between the 20 teams from "la liga", spanish league.. Each team sent their best player and it was streamed at twitch.tv

At some point I think it had over 50k viewers

Heres the link of the channel of the one behind the idea:

[https://www.twitch.tv/ibai](https://www.twitch.tv/ibai)

I think its worth to mention that all the profits of the stream and donations are going to charity

It was casted by actual tv commentators and it had media coverage from major sport newspapers: [https://www.marca.com/esports/fifa/2020/03/21/5e763cd522601d...](https://www.marca.com/esports/fifa/2020/03/21/5e763cd522601d26358b4578.html) [https://esports.as.com/fifa/Torneo-FIFA-20-Ibai-LaLiga- Chall...](https://esports.as.com/fifa/Torneo-FIFA-20-Ibai-LaLiga- Challenge_0_1338766120.html)

</comment><comment><USER14> This reminds me of the time they got bands to play Rock Band with their own songs. They put them on expert mode and some of them failed.

The best was when the singer failed despite sounding identical to the track, since he was singing over himself.

I wish I could find that video.

<comment><USER15> Rock Band is really nothing like playing the actual instruments though. Wonder how the guitar and bass players would fare in Rocksmith, however.

<comment><USER16> Only to an extent. Rock Band 3 added a "Pro Mode" which, on the highest difficulty, required playing the song note-for-note. The pro mode keyboard and guitar peripherals double as actual MIDI controllers.

</comment></comment></comment><comment><USER17> Correction, it's not the only e-sport that translates well. Much smaller scale but FPV Drone racing is heavily practiced on simulators as well and skillsets translate to one another pretty well.

<comment><USER18> Any sport involving any sort of physical contact is really difficult. The sports without are pretty easy to do while following CDC recommendations: poker, chess, golf, bowling, racing, biking.

Sports like track & field are somewhat in the middle but they're just timed. It would be feasible to just have people do these alone in standardized conditions with a single moderator.

<comment><USER19> Don't you think to be considered a "sport" there needs to be an element of physical aptitude? Poker and chess are both games of skill, but I wouldn't call them sports.

<comment><USER20> In a this ESPN article on Fabiano Caruana, they noted "In October 2018, Polar, a U.S.-based company that tracks heart rates, monitored chess players during a tournament and found that 21-year-old Russian grandmaster Mikhail Antipov had burned 560 calories in two hours of sitting and playing chess -- or roughly what Roger Federer would burn in an hour of singles tennis."

[https://www.espn.com/espn/story/_/id/27593253/why- grandmaste...](https://www.espn.com/espn/story/_/id/27593253/why-grandmasters- magnus-carlsen-fabiano-caruana-lose-weight-playing-chess)

[https://en.wikipedia.org/wiki/Chess#1873%E2%80%931945:_Birth...](https://en.wikipedia.org/wiki/Chess#1873%E2%80%931945:_Birth_of_a_sport)

<comment><USER21> That doesn't address OP's point at all.

</comment></comment></comment></comment></comment><comment><USER22> My daughter immediately asked: who's winning? Darn good question, and I didn't find an answer in the article (though admittedly I skimmed a bit).

<comment><USER23> The gamers are generally faster because the games are not perfect simulations of reality.

<comment><USER24> Or even if they were, the "real" drivers are trained to respond to a completely different set of sensations. The simulation can be perfect, but when you're sitting still, you don't feel things such as whether the simulated car is slipping at all (just an example, there are of course a thousand other things).

<comment><USER25> Well, you feel it but in a different way. People spend a lot of money on Force Feedback wheels, with the fancier ones running into 4 figures.

Through the wheel, you're expected to feel everything including tyre grip, slip, road conditions, etc.

<comment><USER26> > _Through the wheel, you 're expected to feel everything including tyre grip, > slip, road conditions, etc. _

Well, there are other solutions for that as well, but that's beyond most mortals.

</comment></comment></comment></comment></comment><comment><USER27> As a viewer I dont really feel (and defiantly do not see) the difference between how physically prepared e-sports or real life drivers are. I see track, cars, racing lines, overtakes. So I really enjoy watching e-racing. Only complain is that e-racing spectating camera work needs improvements. There is huge untapped potential in how e-racing is presented. I hope games will experiment more in this (spectating) direction.

<comment><USER28> Camera work is a really underappreciated feature. Most sims do not have realistic looking cameras and this makes them look worse on TV. Usually camera is centered on a single car while in real life camera operator usually focuses on a group of cars (for example if there are two cars fighting, he is aiming between the cars, not at one of the cars).

This is a feature I'd love for sims to better develop. It shouldn't be massively difficult to do so hopefully we get it sooner than later.

<comment><USER29> Depends if we want an automatic solution, that is filming and directing automatically, or if we want to have the facilities for people to come in and control the cameras individually (and direct the resulting feed). The labour intensive approach is probably simple enough in terms of tech.

</comment></comment></comment><comment><USER30> After reading the article I'm not entirely sure all these drivers did participate in the race using their own setups _while staying home._ Especially after this part: _" [Pike] and Majors tried to fill up a field that reflected this big tent, letting in fellow NASCAR crew members, as well as some public relations and social media specialists."_

Can someone please tell me they did not turn a strong recommendation to avoid public events (which lead to the competition being cancelled) into an opportunity to gather tens of people at one place?

<comment><USER31> Metaphorically, "field" means the group of people competing, and "big tent" means an inclusive group. So there's a natural interpretation that doesn't mean they all gathered in one place.

<comment><USER30> Ah thanks, I suspected something like that but wasn't sure how to read this.

</comment></comment></comment><comment><USER32> I enjoyed many hours of GPL before I had a family. Now that they're a bit older... any steering wheel recommendations? ;)

<comment><USER33> [https://www.reddit.com/r/simracing/wiki/buyingguide](https://www.reddit.com/r/simracing/wiki/buyingguide)

</comment></comment><comment><USER34> Wow, this is nice. I hope there are more events and platforms like this.

Let's face it, most of the Olympic games are boring. If we can model things in the virtual world good enough, the Roman-style arena games would be more popular than the Olympic games.

<comment><USER32> Winter Olympics are not better "virtually"

</comment></comment><comment><USER35> I've been thinking about getting my sports-starved friends and family into watching CS:GO tournament play. It would have never crossed my mind before, but we live in a different world now and that is among the best esports has to offer.

<comment><USER29> It must have some pretty accessible commentary to engage with non-gamers.

</comment></comment><comment><USER36> I love the initiative, but I disagree with the paragraph saying: "That's obviously not the case with other sports." Esports cyclist racing is growing and it translates almost 1:1 real-life skills.

<comment><USER37> That's hard to compare with but honestly difficult to even call that an e-sport. It's more like a remote sport?

</comment></comment><comment><USER38> Well, NASCAR driver have been using computer games to practice for tracks for a while. [https://expmag.com/2020/03/these-hyper-realistic-video- games...](https://expmag.com/2020/03/these-hyper-realistic-video-games-help- nascar-drivers-on-real-speedways/) There is a video of Dale Jr and Martin Truex Jr talking about using a networked video game to test a strategy at one track.

<comment><USER39> Dale Jr was well known (at least in the community) for playing/practicing heavily with the Sierra/Papyrus NASCAR Racing series even in the late 90s. AFAIK, he was one of the first big time names who attributed some of his success to the game.

</comment></comment><comment><USER40> You guys should check out "Le Mans: Racing is Everything (2017)" on Amazon prime.

In it, Nissan has a driver that was a gamer, and converted him to a professional driver!

</comment><comment><USER41> This was an invitational. I suspect without any supporting evidence that they tried to keep this to to Nascar participants # 1 for the familiarity it brings the fans (Go Jr!) but also because I doubt a 'real' racer would have won the race had the best of the online only competition been allowed to complete. And after watching the race it was sadly just as good as a real race. They have become quite boring the last few years.

<comment><USER42> At a recent sim competition in Miami ("Miami's Fastest Gamer") in which various real-world drivers competed with sim racers, the top three spots were real-world drivers -- Juan Pablo Montoya, Ed Jones, and Eduardo Barrichello. However, the best sim racers can definitely hold their own (eg James Baldwin came in fourth) and perhaps some of this boiled down to experience more than anything else. Although there's definitely a _lot_ of differences, the skills between e-racing and real-world racing seem somewhat more compatible with each other than other e-sports.

Reference: [https://wtf1.com/post/juan-pablo-montoya-won-a-sim-racing- co...](https://wtf1.com/post/juan-pablo-montoya-won-a-sim-racing-competition- in-miami/) [https://www.essentiallysports.com/f1-news-juan-pablo- montoya...](https://www.essentiallysports.com/f1-news-juan-pablo-montoya- impresses-everyone-by-beating-many-youngsters-to-win-miami-e-sports-crown/)

<comment><USER43> Its worth noting that real world drivers do put incredible amounts of hours into these consumer simulators. It's not like they're winning on their real- world experience alone.

</comment></comment></comment><comment><USER44> These comments all say "x hours ago" but I swear I saw this thread and the exact same comments a few days ago. What twilight zone am I in? @dang

</comment><comment><USER45> I'm suprised that they don't explore VR telepresence, where they could drive a real F1 car, or a miniature version while sitting in a simulator. What's hard to simulate in virtual simulators besides gforces are the tyre models, it's basically the main interface between car and environment.

<comment><USER29> Something along those lines might open up venues for new sports that aren't constrained by danger to crew. FPV drones are a version of that, though I was imagining something more grandiose.

</comment></comment><comment><USER46> Soccer clubs are arranging matchups between pro players who now have no real matches to play. Could be a big thing for eSports.

It's well known that a lot of pro soccer players spend a lot of time on consoles, to the point where they complain if they feel their virtual stats are too low.

</comment><comment><USER47> Watching an e-sports race is as boring as watching a real F1 race. The interesting part of e-sports is actually playing it and not watching another bunch of dudes having fun. I think F1 is completely missing the point here.

<comment><USER9> Presumably people who enjoy watching real F1 will enjoy it too then? Pro racing is already a lot more interesting on TV than in person (besides the experience aspect).

</comment></comment><comment><USER48> I beat Paul Tracy in a mountain bike race when I was a teenager. I can only imagine the thrill of beating a pro driver in a driving game

</comment><comment><USER49> I went in a big expensive F1 simulator that one of the big oil companies was showing off with at the tennis tournament in Qatar about 9 years ago. The guy to go in it before me was Rafael Nadal, so it wasn't a toy. Three screens, the entire machine moves to simulate acceleration and braking, the lot.

It was less intimidating than a child's go-kart.

</comment><comment><USER50> I wish other athletes from other sports did the same!

</comment><comment><USER51> Pretty curious how the "real drivers" are going to do for gaming driving. My family had a stock car growing up, and afaik the simulated races have almost nothing in common with the real experience. Yeah there might be a wheel to turn and even in fancy driving games feet pedals, but the other sensations in a real race car are simply overwhelming - the noise, g forces, heat, and the lack of being able to see much other than straight ahead.

Will be pretty fun to watch how these drivers play out in the simulated races! imo they are probably going to get pwnd.</comment>


Ask HN: What are day to day "problems" that have verified solutions? - <AUTHOR>
 Especially interested in those things that keep coming up at workplaces, at home, or anywhere between.
Maybe the people with these problems have not (yet) been exposed to the solution, or maybe it runs counter to intuition and doesn't 'stick', but our collective knowledge knows. And you know. It might even drive you a little crazy that it keeps coming up.
Some examples: Date formatting ( https://xkcd.com/1179/ ) and data integrity (Reed–Solomon error correction), or even more "mundane" things like how to fairly split something up between two people (one splits, the other chooses). <comment><USER2> You posted this 12 days ago and 13 days ago. So my answer would be "system that can identify duplicate submissions."

<comment><AUTHOR> I'm flattered that you noticed that I posted this before.

Like muzani (who commented on the first posting on this) "I'm disappointed this hasn't received more attention.". I know HN moves fast so I followed the repost guidelines from [https://news.ycombinator.com/newsfaq.html](https://news.ycombinator.com/newsfaq.html)

As this is the third time, and it's not the charm, this will probably by my last repost.

If you have suggestions for how to approach this in a better way, I'm all ears!

<comment><USER3> I too would be interested in answers to this, and I found the question itself thought-provoking. This is the first time I've seen this.</comment></comment></comment>


Ask HN: Why Intel and AMD share the same design flaw? - <AUTHOR> <comment><USER2> Because they are good ideas if you want your CPU to run fast.

The combination of features involved: caching, branch prediction and out of order execution are all very valuable. Both individually and in combination.

What has been discovered is that, under certain circumstances, they combine in ways that can leak sensitive information. This is a very bad thing and needs mitigation/fixing.

However, it doesn't mean that the underlying features are inherently bad. Just that they have complex interactions that aren't as well understood as, perhaps, was thought.

When this all settles down, I wouldn't expect these features to be removed. Rather they will be constrained such that they retain as much performance as possible but without the security implications.

</comment><comment><USER3> Its how processors are designed. If you take a computer architecture class which I am pretty sure most compsci people have done you learn about most of this stuff. If you don't do caching, branch prediction, pre fetching, out of order execution your processor won't be as fast. Someone just figured a way to exploit the fact that processor are already loading data that it needs to process.

If you are doing a laundry cycle and you have to wait for the dryer to to finish before you load the washer its going to take lot longer to do the laundry.

<comment><USER4> >If you are doing a laundry cycle and you have to wait for the dryer to to finish before you load the washer its going to take lot longer to do the laundry.

Reminds me of that lecture notes slides from MIT OpenCourseWare on digital electronics

</comment></comment><comment><USER5> I was under the impression that AMD chips weren't vulnerable to Meltdown or variant 1 of Spectre. Only variant 2, Bounds Check Bypass, could be achieved on an AMD chip.

Is that an incorrect impression?

</comment><comment><USER6> Essentially because it isn't a bug in the usual sense. It's a vulnerability that is present even though the processors are doing their primary job correctly.

</comment><comment><USER7> Was wondering the same thing! Experts please jump in.</comment>


GM: We'll Lose Our Shirts on the Volt, But That's OK - <AUTHOR> http://blog.wired.com/cars/2008/03/gm-well-lose-ou.html <comment><USER2> Aren't these the same guys who developed, built, and leased a fully electric car, only to repossess and crush them all, to the dismay of the otherwise- happy owners?

<http://en.wikipedia.org/wiki/Who_killed_the_electric_car>

They already have a design that they know works and will be popular... It seems that they are putting up this "we'll lose our shirts" argument as a possible escape route if the back-room politics don't play out correctly again.

<comment><USER3> They're not really saying they're going to "lose their shirts", those are the journalist's words.

What GM actually says is that the Volt won't be profitable for the first few years, which is no surprise to anybody, and no different from what Toyota did with the Prius.

If you really want an electric car you can go buy a Zap Xebra for ten grand right now, but don't be surprised if it sucks. (<http://www.thetruthaboutcars.com/2008-zap-xebra-review/>)

</comment></comment><comment><USER4> Global warming = less need for shirts. ;-)</comment>


EBay under pressure as hacks continue - <AUTHOR> http://www.bbc.co.uk/news/technology-29310042 <comment><USER2> > The vulnerability centres around users' ability to place custom Javascript > and Flash content into their listings pages.

Wait, what? Is that true? If so, how could anybody think that allowing the user to place custom Javascript in their listing pages is a good idea in this day and age?

<comment><USER3> It was common before facebook, and at this point businesses are built on it.

</comment></comment><comment><USER4> Why is eBay not using sandboxed iframes for the auction description/content?

You dont need JS to make amazing looking listings. Just look at all the customized subreddits with crazy stuff going on utilizing just CSS/HTML. All the 'tracking' needed for ebay listings could easily be done with a pixel as well.

<comment><USER5> I was just about to comment that sandboxed iframes aren't really well supported but it seems like I'm completely wrong, they're much better supported than I expected [http://caniuse.com/#feat=iframe- sandbox](http://caniuse.com/#feat=iframe-sandbox)

Still it would leave a fair chunk of users with IE 9 or older no better than they are right now.

</comment></comment><comment><USER6> Does anyone else remember when Flash could execute arbitrary Javascript in the containing page? That was super fun.

Attempting to sandbox user-supplied Javascript just seems like an exercise in futility.

<comment><USER7> > Attempting to sandbox user-supplied Javascript just seems like an exercise > in futility.

You just need to run the javascript in a interpreter written in javascript /sarcasm

>> EDIT: oh god it's real [https://github.com/mozilla/narcissus](https://github.com/mozilla/narcissus)

<comment><USER8> Wait what? Wouldn't a js2js interpreter just be eval()??? How is this more than a joke project?

<comment><USER6> eval() calls the interpreter that's running the current code with some arbitrary string. The code that's interpreting it is not Javascript; you can't poke around and change it without recompiling whatever binary it is. Implementing Javascript in Javascript lets you quickly play with new features: you can add features to the toy interpreter more easily than nodejs.

There's a long tradition of self-hosting compilers: C is compiled with programs that were written in C. PyPy is a Python interpreter written in Python (actually RPython but it's a subset of Python).

[http://en.wikipedia.org/wiki/History_of_compiler_constructio...](http://en.wikipedia.org/wiki/History_of_compiler_construction#Self- hosting_compilers)

</comment></comment></comment></comment><comment><USER9> The previous bbc article regarding this never stated that ebay allows users to embed javascript and flash into listings. No wonder they are having issues with xss.

<comment><USER10> As far as I can tell they're not having problems with XSS. The listing description is actually an iframe served from a different domain with no access to anything on the eBay website. This appears to be a straightforward phishing attack.

<comment><USER11> So, if I were to go to such a site with noscript activated, I would be okay? I mean, noscipt would probably set up to allow ebay.com so the site actually works, but this different domain will most likely be blocked, yes?

</comment></comment></comment><comment><USER12> Yea, it is funny that PayPal has a security bug bounty program but eBay don't. I think you can thank David Marcus and Bill Scott of PayPal for that.

</comment><comment><USER13> "When customers clicked on a listing that had been compromised, they were brought to a sophisticated, official-looking site that asked victims to log in and share bank account details." Please. One glance at the URL ("vip- ohota.com.ua") and the fact that it's not SSL reveals that something fishy is going on. This is very, very basic, even non-tech people should look at the URL when they enter their information. You wouldn't tell a stranger your credit card number, you'd make sure you're talking to the right person.

<comment><USER14> It's unreasonable to expect that of people. URLs are maddeningly maddling to parse even if you know what is going on, if you don't it's almost impossible to explain it. Why is ebay.com.au different to ebay.com.au.edgesuite.net, should I worry if I see that? Why is edgesuite alright for hosting the images on? It's a rabbit warren of edge cases and exceptions that defied all normal levels of explanations.

<comment><USER13> If it's unreasonable to expect that of people, it's unreasonable of people to expect security.

<comment><USER15> Disagree.

We technical people instinctively know there's a fundamental difference between those 2 domains. Normal people don't. And why should they?

We (tech people) have to get the situation to a point where we don't expect normal people to have to know all these silly details.

I'm not doing anything to help achieve this, I'm hoping other people are :)

<comment><USER16> I really, truly don't see how this is a "silly detail" any more than ensuring the person who collects your credit card information in a retail setting, in person, actually represents the company they claim to, by looking for a uniform, nametag, or other immediately obvious information that identifies someone as working for someone else.

We've been trying to drill it into people to look for the lock icon before entering anything personal for decades and it's kinda starting to stick.

Is it really that much more to ask that you double check to see if the URL you're putting your sensitive information on matches what it claims to be?

It's literally _right there_. A glance upwards. No clicks or any special arcane knowledge required.

<comment><USER17> I think if a conman could get behind the counter in a retail setting, people would give their credit cards over as easily as they do online. No one is looking at the cashier to make sure that they are legitimate, and that's because they don't have to: no retail business could survive news reports of people getting scammed in this way. Honestly the same is true online. There's no expectation that if you started out on Nordstroms.com that your purchase information will be stolen by an imposter. Since Nordstrom's controls the content on that site, it's very difficult for an attack like that to occur.</comment></comment></comment></comment></comment></comment>


Fountains in King's Cross's Granary Square Are a Giant Playable Version of Snake - <AUTHOR> http://now-here-this.timeout.com/2015/03/10/the-fountains-in-kings-crosss-granary-square-are-secretly-a-giant-playable-version-of-snake/

<comment><USER2> Funny the author calls snake "the game from your Nokia 3210". The first version of snake I played was nibbles, that came with DOS.

<comment><USER3> Gorilla.bas!

<comment><USER2> Right :-)

ftp.microsoft.com/services/technet/windows/msdos/RESKIT/SUPPDISK/NIBBLES.BAS

ftp.microsoft.com/services/technet/windows/msdos/RESKIT/SUPPDISK/GORILLA.BAS

</comment></comment></comment><comment><USER4> I wonder why it's only playable during certain hours.

<comment><USER5> It could be to avoid crowding at peak times.

</comment></comment><comment><USER6> Isnt this more tron than snake? Blue and orange? Two of them at once... no apples to nibble on.. no growth...

</comment><comment><USER7> I think it would have been better with buttons to move rather than gyro. Otherwise, cool idea.</comment>


Memo From the Monastery - <AUTHOR> http://steveblank.com/2010/02/04/memo-from-the-monastery/

<comment><USER2> Funny. A couple things to add about this:

\- Gutenberg basically tried to mimic illuminated manuscripts with his creation, in terms of the lettering and the use of hand-painted letters at the beginnings of new sections. He did not immediately see the potential of his application for new styles of books and new uses of printing.

\- Printing presses caught on very quickly in Europe. Once they did, there were very few people who believed illuminated manuscripts were better. Certainly, the Church didn't like losing control over information, but even it recognized that the technology was superior and could serve its own ends (see Elizabeth Eisenstein's _The Printing Press as an Agent of Change_ for more about this, as well as the impact of printing on many aspects of society)

\- Illuminated manuscripts held on through the early 1600s (see [http://www.bodley.ox.ac.uk/dept/scwmss/wmss/medieval/browse....](http://www.bodley.ox.ac.uk/dept/scwmss/wmss/medieval/browse.htm)). Of course, by then their impact was negligible compared to books and other printed works.

</comment><comment><USER3> To play joke explainer in case anyone didn't get it, Aldus is a double reference to early Venetion printer Aldus Manutius and Aldus corp, creator of pagemaker, which merged with Adobe in 1994.

</comment><comment><USER4> In 16th century England, after a book had been printed, someone would go in and draw pencil drafting lines marking the text area and the text baseline as was done before hand-writing a manuscript.

</comment><comment><USER5> Illuminated manuscripts are orchestral music. Printed books are rock 'n' roll. Rock 'n' roll wins:

[http://www.locusmag.com/Perspectives/2010/01/cory- doctorow-c...](http://www.locusmag.com/Perspectives/2010/01/cory-doctorow- close-enough-for-rock-n.html)</comment>


SEC Halts a Real Initial Coin Offering - <AUTHOR> https://www.bloomberg.com/view/articles/2017-12-12/sec-halts-a-real-initial-coin-offering <comment><USER2> Most of the SEC's concerns about ICOs are related to marketing promises (amazing returns, we won't just steal your money and run away, etc etc.), and justifiably so.

I'm actually impressed with how well the SEC has been able to differentiate between legitimate cryptocurrencies and scam projects.

<comment><USER3> I suggest you read the article. The point of it is that, in this case, the SEC does not object to marketing promises (though they probably could have).

The SEC objects that this ICO has an investment component. That is, that it is sold to people hoping to make money from it.

Basically they are enforcing that if there is an investment component, the coin is a security and needs to comply with security offering law.

<comment><USER4> It sounds like the basis for claiming this ICO has an investment component was that Munchee made marketing promises about how much money you'd stand to gain from participating.

</comment></comment></comment><comment><USER5> _The SAFT lets you sell tokens to speculative investors, without having the tokens themselves be securities: You wrap the tokens in securities for the speculators, and then unwrap them for the eventual users.

There are still open questions about whether and how that or other approaches will work.

...But for a long time now, I and a lot of other people have thought that the basic strategy of a lot of ICO issuers -- issue tokens for money, call them "utility tokens," hype their speculative benefits, and watch the money roll in -- was obviously illegal, and the SEC didn't seem to be paying attention. Now we know it is._

</comment><comment><USER6> Discussed earlier here: [https://news.ycombinator.com/item?id=15906305](https://news.ycombinator.com/item?id=15906305)

</comment><comment><USER7> For the SEC looks like there's a clear difference between pure crypto-for-its- value and as utility to run a network (like ETH or BTC) and tokens which are sold in some ICO with the promise of gains in return (or shares in some structure), even if the second kind of token also has some utility.

[https://techcrunch.com/2017/12/11/with-markets-going- crypto-...](https://techcrunch.com/2017/12/11/with-markets-going-crypto-crazy- sec-chairman-weighs-in/)

<comment><USER8> I'm very impressed with this stance by SEC. It's very well informed and it reflects the practical reality and nature of those crypto tokens. They move in to regulate what needs to be regulated (tokens susceptible to scams against naive users), and leave what doesn't need to be regulated alone.

</comment></comment><comment><USER9> good job SEC.

<comment><USER10> Yes, thanks SEC for preventing free people from entering into voluntary transactions.

<comment><USER11> > Yes, thanks SEC for preventing free people from entering into voluntary > transactions.

Allowing free people to enter into whatever voluntary transactions they would like is basically the definition of anarchism. It's surprising to see people advocating for anarchism on HN this often, especially in obscured fashions like this rather than explicitly. Anarchy was never the vision for our society and is not generally seen as a desirable end goal.

[Edited for clarity.]

<comment><USER12> _Anarchy was never the vision for our society and is not generally seen as a desirable end goal._

According to who? There are two or three of us who absolutely see anarchy as a desirable end goal. In the case of a lot of hackers, it's more specifically "anarcho-capitalism" or "voluntaryism" as opposed to what a lot of people call anarchy (what I'd probably call left-anarchism or socialist anarchism). But anarchy of a sort nonetheless.

<comment><USER11> >> is not generally seen as a desirable end goal.

> According to who? There are two or three of us who absolutely see anarchy as > a desirable end goal

2-3 people? What claim are you even contesting? I said it's _not generally seen as desirable_ , not that _there exists nobody on this planet who sees it as desirable_. Are you somehow under the the US population is generally anarchist?

<comment><USER12> Sorry, I though the intentional hyperbole there was completely obvious, but it looks like you read that dead-pan / literal. Never mind, I don't have time to invest in this right now.</comment></comment></comment></comment></comment></comment>


Using only open-source software on Android - <AUTHOR> https://www.androidpolice.com/2018/04/29/like-using-open-source-software-android/ <comment><USER2> > Firefox on Android still isn't a great experience

News to me! I've been using Firefox on Android for six years now, and I'm _very_ happy.

<comment><USER3> Scrolling performance is terrible, even on high end devices. I'd imagine its borderline unusable on mid-range devices.

<comment><USER4> I'm use FF a ~$35 one year old Huang, with more than 100 tabs open, and have had no issues. Not so with the default browser.

<comment><USER5> Care to share the model name? Interesting price

<comment><USER4> I don't see that particular model now, but a search for $35 phones on Aliexpress [1] (where I bought it), shows plenty of similar enough phones.

Get the AliExpress mobile app and keep your eye on it for a few weeks, and you are bound to get a better deal.

Of course, it will probably copy all your data (including speech and movements) both to Google and 100 Chinese corporations + partnering government agencies, but that kinda comes with the territory.

(Especially as even brand names phones on Amazon, even when they are not using a compromised chpset like Rok, might really be cheapo fakes with the right SKU numbers, that are siphoning off that data as well.)

[1]: [https://he.aliexpress.com/category/5090301/mobile- phones.htm...](https://he.aliexpress.com/category/5090301/mobile- phones.html?minPrice=35&maxPrice=38)

</comment></comment></comment></comment></comment><comment><USER6> 90% of the objections here seem to be "I can't use Google's online services very easily without using Google Play", which is precisely why Google's spent the past few years piping as much of Android's runtime as possible through Google Play. The rest are mainly just that the main streaming and social media companies don't have open source clients.

<comment><USER7> I'd always heard that moving more and more functionality into play services was their strategy for end-running the carrier fragmentation problem.

<comment><USER8> That's the crux of it.

Though Google have fixed it in such a way that's benefited them by consolidating services and potential data collection for revenue raising.

I've not used anything but a Nexus of Pixel in years. But carrier fragmentation (and with it, the difficulty for OTA patching!) is a much bigger risk to the Android ecosystem and it's uses than closed source code.

</comment></comment></comment><comment><USER9> >Unfortunately, there's a catch - microG only works with custom ROMs that support signature spoofing. The LineageOS project is against adding support for that feature, citing security concerns, so microG offers its own ROM called 'LineageOS for microG.'

Jesus - this is what the patch does:

[https://github.com/microg/android_packages_apps_GmsCore/blob...](https://github.com/microg/android_packages_apps_GmsCore/blob/master/patches/android_frameworks_base-N.patch)

So this allows other applications to appear in the com.google namespace?

This can't be good.

Can't I have this kind of feature and still be secure?

Edit: [https://github.com/microg/android_packages_apps_GmsCore/issu...](https://github.com/microg/android_packages_apps_GmsCore/issues/336#issuecomment-284036039) is a slightly better solution - I wonder why it hasn't been implemented.

<comment><USER10> From your linked thread:

> Restrict the permission to apps in /system/priv-app. This requires to ship > microG or two placeholder apps with the ROM (or to allow modification of > /system, which is a far worse option). Modifying the permission to be for > system apps only is changing one word in the patch (from "dangerous" to > "system"), creating a placeholder apps is about writing ~10 lines of XML > code and thus could be done in a few minutes.

Lineage for MicroG already does this by default: [https://github.com/lineageos4microg/docker-lineage- cicd/blob...](https://github.com/lineageos4microg/docker-lineage- cicd/blob/93cc0e5cb5d47a626f5ef6d072b1954d4808d5ff/src/build.sh#L180)

Restricting the permission to a platform level permission essentially means no other installed apps (after flashing) can spoof this. No toggles are necessary either. This should be a secure setup that is as good as any other ROM.

It is possible that users can flash something to /system/priv-app via an update.zip and obtain this permission. However, anything you flash like this can practically already gain root access, so this would almost be a feature if ROMs like lineage implemented this, as then microg's installation would be a small update.zip away. This is opposed to the present setup where microg has to build a completely different rom, although that is another story in itself and likely require some more complications.

<comment><USER9> I don't really understand why signature spoofing is needed at all.

<comment><USER10> The framework Google provides for apps to interact with Google Play Services checks the GmsCore's signature to validate that it's talking to only their app.

</comment></comment></comment></comment><comment><USER11> "...and Firefox on Android still isn't a great experience..."

As a daily FF on Android user, I am not sure what he is finding issues with. I wish he would elaborate so his issues can get fixed.

<comment><USER12> I have a Nexus 6 updated with the latest OS version and FF. I spend about 90% of my browsing time on HN, LinkedIn, and a couple of miscellaneous other news sites. I observe the following problems:

Loss of UI, where the only thing I see is either a white or black screen. Swiping up or down as if to scroll or refresh "peels back" some of this to reveal the web page underneath, but it doesn't become functional unless I end the app. This affects all tabs open.

Terrible latency acting on navigation, where I'll press a link which has clearly been detected (an outline appears around it) and...nothing happens for seconds. Doesn't matter if I have one tab or a dozen open.

Terrible detection of which link was pressed. Sometimes it's bad enough that a link more than halfway down the page from where I touch is activated. This doesn't happen in any other app I have, even when it's happening on FF.

Poor download times. The bar indicating progress will occasionally stop at about 80% and pause. Sometimes when it pauses it finishes after a few seconds and other times it simply freezes.

<comment><USER13> I Have the same phone but don't recognize these issues. I've seen something similar to the blank page thing but it sorts itself out without restarting the app.

I notice you specifically mention LinkedIn. I don't use that site but I did read their recent web development blog post when they admitted that they had a CSS download of 3.5MB that was causing issues for mobile users. Apparently they've fixed that now, would be interesting to see if that was a cause.

</comment></comment></comment><comment><USER14> I tried this for a while and I consider the experiment failed.

No closed source means no Whatsapp, etc. Let's face reality, no-one is using XMPP ;)

In the end I started the policy "Prefer open-source software on Android", which works pretty well:

* Note taking using orgzly

* Tasks using opentasks ([https://github.com/dmfs/opentasks](https://github.com/dmfs/opentasks))

* File Sync using Syncthing

* Contacts, Calendar using davdroid & nextcloud

* Firefox for browsing (this is a no-brainer)

<comment><USER15> Try Telegram instead of WhatsApp. It's a good drop-in replacement.

<comment><USER16> the trouble is to get your friends to use it. A vast portion of my daily communication runs over Whatsapp. A realistic migration would entail convincing 25+ people to switch apps.

Network effects are powerful.

<comment><USER15> Let them try Telegram's awesome desktop clients. It's quite a good argument for many as I hear lots of people complaining about WhatsApp's.

<comment><USER16> I've been using the Whatsapp Web version since it was released and it has worked flawlessly

<comment><USER15> Telegram Desktop works without your phone and also is a much leaner native desktop app (written in C++ with Qt).

</comment></comment></comment></comment></comment></comment><comment><USER17> Also, the Brave browser is a great FOSS option. It's a chromium fork that only adds privacy/adblocking features and doesn't require google services.

<comment><USER15> Unfortunately not on F-Droid.

<comment><USER17> It is on APKMirror, a trusted (run by Android Police) mirror of the Play Store, which has been essential to ditching the latter.

</comment></comment></comment><comment><USER18> Is there a decent free software Android keyboard which supports sliding? It's the last thing keeping me from going full Google and Microsoft free Android. Right now I use Swiftkey and firewall to keep it from accesing the network.

<comment><USER18> To answer my own question, I've found out that latest AOSP keyboard supports sliding.

</comment></comment><comment><USER19> I've been running Lineage with microG on my Nexus 5X for about 5 months and I'm pretty neutral about the experience. I do cheat a little bit though -- I install Google Maps and Gboard. The biggest annoyance was updating from Android 7 to Android 8. I had to reinstall stock Android 8 on my Nexus to get the new firmware, then install Lineage with microG version 8. Quite annoying, but I suppose it was necessary. Other than that, I quite enjoy the extended battery life that comes with the ROM, I have 87% left now, after about 12 hours of very minimal use.

I don't use my phone too much, mostly just navigation, texting, email, HN, and reddit. Though I'm considering switching back to stock for the better Google hangouts experience.

</comment><comment><USER17> A much better rule imo, which I've had success with, is "no software from the Big Five" rather than FOSS-only. This has a bigger impact on actual privacy concerns and gives you more leeway when it comes to media apps, etc.

<comment><USER20> Sorry, which are the Big Five? Google, Facebook, Microsoft, Amazon... Apple?

<comment><USER21> yes

</comment></comment></comment><comment><USER22> > There are no FOSS clients for Plex, Netflix, Hulu, or Spotify.

Hm... there's a client that is suspiciously absent from that list...

> In other words, I couldn't listen to any of my music, unless I copied the > MP3 files from my Plex server to the phone's internal storage. I couldn't > stream any TV shows or movies, either.

Ok, that's just technically inaccurate. The author _didn 't want to_ use a particular open-source app (or perhaps category of apps) to stream video/audio to the Android device.

There is certainly a persuasive argument as to why one would refrain from installing such apps. But a piece about following FOSS-only dogma which omits a discussion of that app category is misleading. Especially when there are probably tens of thousands if not hundreds of thousands of users who currently have such a FOSS app installed on their Android devices.

Edit: typo

<comment><USER23> What client are you referring to?

I've used VLC on android to stream media from my DLNA server. Is that what you're talking about? Or is there a better solution available? (I've found VLC to be unstable in this configuration, it often crashes for reasons I haven't yet bothered to dig into.)

<comment><USER24> Maybe Kodi?

</comment></comment></comment><comment><USER25> One thing I'd love to see is some Android Tablets that are ROM friendly.

<comment><USER26> Quite a few (30-40) listed here [https://wiki.lineageos.org/devices/](https://wiki.lineageos.org/devices/) \- if it runs LineageOS it's probably going to have other ROMS available too

</comment></comment><comment><USER27> I agree with the title.</comment>


Ask HN: How to beat the chicken egg situation with user-content driven website? - <AUTHOR>

We're working on capitalizing on craigslist's weaknesses, and while we have a good grasp on what we're doing; we aren't sure how to attract users to a fresh classifieds website. Users tend to leave when they see a website without much there, and obviously new ads won't list themselves. How can we go about creating real incentive for sticking around when there are still not many listings? <comment><USER2> You won't make any friends at craigslist (in fact, they'll probably block you), however you could try "importing" craigslist ads (of course, credit and link properly). I don't know if I'd suggest it, but it's a route you could consider. The founder of Lyrics Wiki ( <http://lyrics.wikia.com/> ) indexed other lyrics sites, and eventually was bought by Wikia.

Also, look at a few of the paid craigslist alternatives- they might be willing to give you listings if you send traffic their way.

I asked this same question to Jimmy Whales a few months ago. Wikipedia started as a paid service, where professionals were paid for their work. It never got big, so they changed their business model. For them, the already-made articles were enough of a jumping point.

Side note: craigslist already has many, many more-featured competitors. Do you have a theory as to why craigslist is still the most popular software? Make sure you do before you bother creating a craigslist competitor.

<comment><AUTHOR> thanks for the input! I think we wouldn't want to link to craigslist ads, or any other craigslist-esque websites, because we are trying to fundamentally change the way ads are served; rather than aggregate more listings.

This is why we're not too worried about the (mostly really bad) more-featured craigslist-clones because we're not in it to tack-on extra unnecessary features.

</comment></comment><comment><USER3> You need to seed content first. That's how reddit got started with the founders submitting stories under different user-names. Take offline ads(news papers) and list them online (throw in some OCR software like ABBY to scale it). It should get you started.

</comment><comment><USER4> It might not be helpful advice in your specific case (or that of craigslist type sites), but make it useful even if there aren't any other users. If I remember correctly this is the advice I've always seen from the Reddits on how to solve the problem.

<comment><USER5> The trouble with that is that the sole purpose of our product is to facilitate connections between people selling or offering goods and services. Without people and the stuff they want to sell, we've got nothing.

</comment></comment><comment><USER6> you can pay users, or offer incentives give aways or prizes. If they like the site, they will stick around.</comment>


One guy tries to live for a year solely on virtual money - <AUTHOR> http://pavlovskitchen.wordpress.com/2010/04/20/how-long-can-you-live-on-virtual-money/

<comment><USER2> What is the difference between virtual money and real money?

If he is able to get by using "virtual" currency, isn't he just demonstrating that it is actually real money?

</comment><comment><USER3> I'm the co-founder of the company mentioned. Feel free to let me know if you have questions, whether they're business-related or technical.

We're treated as a barter exchange by the IRS, and play by the rules set forth in there. Namely, transactions are treated as taxable, and we're required to provide 1099B forms to all involved parties at tax time.

Also, we're located at <http://dibspace.com>

<comment><USER4> I am weary of these alternative currency systems. You are giving away "money" to people for signing up and posting offers; you are giving new users other peoples' goods for free and creating fake money as compensation.

<comment><USER3> There's no arm twisting or deception. Everyone who signs up is aware of what's going on.

Lots of the businesses on Dibspace think of it as a marketing expense that happens to provide very real and tangible side-benefits.

We've had a number of incredible customer success stories with Dibspace, like this company: <http://ecomoversmoving.com/>

The founder, Grant, started his business with nothing more than a borrowed moving truck and a couple thousand bucks in his pocket in Spring 2009. He learned about Dibspace through a Seattle Times article, joined up, offered his services and had more customers than he knew what to do with within a couple months. Last fall, he told us that his biggest concern with his business was how to manage the growth he was seeing.

Grant was able to offset thousands of dollars of capex/opex by trading our virtual currency for real stuff and services. Sure, if he'd been able to get US Dollars, he could've used them for the same things, but he was dealing with the same chicken and egg problem every new business wrestles with: how do you acquire new customers to pay for things like a website or a logo when you're just starting out and don't have any customers?

You have no reputation on Yelp.

You have no cash to get your name out there.

You don't have a network of existing customers to lean on for referrals.

Getting those seed customers can be incredibly difficult. Grant totally lucked out: turns out people are far more willing to spend 'funny money' than real money, especially during a down economy. He acquired his first batch of customers, got tons of positive reviews he could point prospective customers to (<http://dibspace.com/businesses/667-Eco-Movers/reviews>), and got tons of word of mouth referrals.

When Grant was ready, he just _turned off_ his offers on Dibspace. When his business gets slow (which happens occasionally), he creates new Dibit offers and fills his schedule back up.

Whew, that was more long-winded than I intended it to be.

</comment></comment></comment><comment><USER5> Oh god, turn off the Snap! previews.

I'm sorry, but I'm distracted from the content so much by those.

</comment><comment><USER6> A new version of DotComGuy ?

<http://en.wikipedia.org/wiki/DotComGuy>

</comment><comment><USER7> Be interesting to see if he could do it. Imagine living in the world where you don't have to actually pay the IRS. Never use money again.

One could live in his house or on the road and never need to settle down. Just the fact they have internet can be his way of surviving.

<comment><USER8> Bartered transactions are taxable in the UK.

I'm not sure how practically they'd find you out. It would probably cost more to establish your bill than you'd end up paying, but I'm lead to believe that if you exchange a cow for goods from a VAT paying business then that business owes the country 17.5% of a cow, etc. Similarly for income tax.

I guess it works like inheritance tax really - they assign a value to the item and tax proportionate to that value.</comment></comment>


NASA finds DNA components in meteorites, says they originated in space - <AUTHOR> http://www.engadget.com/2011/08/09/nasa-finds-dna-components-in-meteorites-says-they-originated-in/&category=classic&postPage=1

<comment><USER2> This submission seems to fail and redirect to a generic front page.

A submission to the actual item can be found here:

<http://news.ycombinator.com/item?id=2863544></comment>


How to Design for the Modern Web (Satire) - <AUTHOR> https://medium.com/s/silicon-satire/how-to-design-for-the-modern-web-52eaa926bae2 <comment><USER2> Ironic that it's posted on Medium, which does most of this stuff.

<comment><USER3> I immediately got a giant prompt to sign into medium that greyed out the page and showed up offscreen...</comment></comment>


Electric car sets acceleration record - <AUTHOR> http://www.bbc.com/news/technology-36606500 <comment><USER2> Fantastic achievement. For those interested, here's how they modeled and simulated the car

[http://www.mathworks.com/videos/matlab-and-simulink- racing-l...](http://www.mathworks.com/videos/matlab-and-simulink-racing- lounge-lap-time-simulation-essential-part-of-concept-development-98733.html)</comment>


Update – We're unable to offer upgrade pricing for Mac App Store purchases - <AUTHOR> http://www.omnigroup.com/blog/entry/update-no-upgrade-pricing-for-mac-app-store-purchases <comment><USER2> _" We are not allowed to distribute updates through other channels to apps which were purchased from the App Store."_

The solution is simple.

All Mac developers should stop selling through the App Store, regain control of the distribution channel, and leave the Mac App Store barren of quality applications.

Until Mac developers have leverage, Apple will continue taking their 30% cut and enforcing rules which suit them and not the developers.

EDIT:

Just wanted to add...

What are developers going to do when Apple says every single new API in Mavericks can only be used if the app is sold through the Mac App Store? This has already happened with the iCloud SDK, so it's likely they will continue on this path.

What if one day Apple says you can only have a developer certificate if your apps are sold exclusively through the Mac App Store?

<comment><USER3> ... or switch back to Linux, and just download everything you need, without encumbrances like this. I recently switched back on all of my OSX and Windows machine, and it feels great. Only through years of contributions to open source projects, and hanging my head in shame can I ever be redeemed. Oh, and _Steam_ is only going to get better!

<comment> __--__ I still haven't found a linux distro that doesn't eventually resort to me fudging with xrandr for a week trying to get multiple monitors working correctly. Granted, this was 3 years ago. Have any linux distros solved the problem of configuring multiple monitors using a gui yet?

<comment><USER4> _> Have any linux distros solved the problem of configuring multiple monitors using a gui yet?_

For two monitors on one video card, things are pretty okay on Ubuntu and derivatives. More than that, especially 3+ with non-uniform geometries, and you will have fun. If you have multiple video cards, you will have even more fun.

<comment><USER5> I have two nVidia cards in SLI powering 3 monitors.

Setup was pretty simple using the binary nVidia drivers on Kubuntu, 0 config file wrangling.

Now, having those three monitors in non-uniform geometries is something I wouldn't even consider tackling

[EDIT]

Kubuntu 12.04

All monitors in a single X Session and automatic application window sizing works as you would expect in KDE

(i.e. Maximising a window maximises to the current monitor only and being able to drag to right side of one monitor causes the window to use up half of the current monitor)

<comment><USER4> Can you get them all in the same X session? I've never tried SLI, I generally just upgrade to a beefier main card and use a second card to drive extra monitors. I have an HD6970 and an HD6450 on 4 monitors that work _great_ under OS X (Hackintosh'd) and Windows and things go extremely sideways under Ubuntu.

<comment><USER6> I had 3 monitors / 2 Nvidia cards working fine in Kubuntu 11.04 and 12.04. All one X session. It was easy. But that was with uniform geometry. (I had 3 identical monitors.) Haven't tried non-uniform.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> Boo hoo. The people paying $80 for todo list management don't need upgrade pricing. If they do, maybe charging a less insane price would make the App Store issue moot.

Building stuff for Apple products is like dating and being madly in love with someone who doesn't love you. Everything is great until they don't need you anymore.

Remember the independent resellers of Apple products, who operated actual physical stores selling Macs before they were cool again? You may not, because Apple basically shot them in the head when try opened Apple Retail stores. Remember the Mac OEMs?

Apple is building two sales channels, one that makes them 30%, one that makes them 0%. They've told you that they make many more dollars with walled garden products built on iOS, and are porting key iOS features to Mac OS -- features that also require that sales channel that makes them richer.

So if you develop software for Mac, you shouldn't be surprised when Apple abuses you -- Apple doesn't need you.

<comment><USER8> > The people paying $80 for todo list management don't need upgrade pricing.

Omni makes good products that are (IMHO) worth $80, and paying full price for an upgrade is unfair whether that's an $80 app or a $3.99 app.

The problem isn't that software costs $80, it's that giving up freedom to use AppStore ends up hurting users and developers.

<comment><USER9> I'm not sure this is the kind of thing that can be categorized as fair or unfair. The upgrade-pricing model follows the rationale that users pay a higher up-front cost for software, then each upgrade is a maintenance fee to support continued improvement of the software. The flat-cost model spreads the cost of continued software development equally over all users.

The feeling of whether or not this is "fair" depends upon whether you're a new user or an existing user. With the upgrade-pricing model, new users are confronted with a much lower price point, which is unavailable to them. This can be a significant psychological barrier to purchase execution. However, existing users are more likely to feel appreciated and stick with the product because they receive favorable pricing.

With the flat-cost model, you have the inverse. New users no longer feel marginalized, but existing users may consider alternatives at each time-of- purchase for upgrades.

Apple's vision of flat-cost pricing dictates that the price point should be held as low as possible, increasing accessibility from a broader market. With software, there are no incremental costs, so your price point is a matter of supply/demand tuning. There are countless blog articles on this subject.

While there isn't consensus on which model (flat-cost vs upgrade-pricing) is the most successful, each has its pros and cons for consumers. I don't think either could be characterized as fair or unfair.

<comment><USER7> It's a model optimized for the platform owner -- who only gives a shit about aggregate demand. That app you worked on is no different than an a music track to them.

</comment></comment></comment></comment><comment><USER10> Not being able to offer the same discounted upgrade pricing to all our customers no matter where they purchased is obviously disappointing for us. But it just means we're back to the same state of affairs as I outlined in my original blog post from the launch of the Mac App Store:

[http://www.omnigroup.com/blog/entry/mac_app_store_or_omnis_o...](http://www.omnigroup.com/blog/entry/mac_app_store_or_omnis_online_store_your_choice/)

As I said in that original post:

"The Mac App Store is the most convenient way to buy our software, letting you purchase, download, and install our apps with just one step, and easily update our apps at the same time as you update other apps you've purchased from the the store.

"But to be clear, the Mac App Store is not the only way to buy our software: we'll continue to offer direct sales and updates through our own website as well. Through our website, we can offer much more flexible terms and options: trial and beta downloads, upgrade pricing, and discounts for volume, bundle, and educational purchases.

"No matter which way you buy our software, you'll be getting the same product: all of our Mac App Store apps are exactly the same as the apps we sell through our website (except for a few minor changes made to work with the store). We'll also keep future updates to our apps in sync—apps you've purchased directly through us will continue to update themselves as they always have, while App Store updates will appear on the App Store (after a slight delay due to the App Store's review process). And either way, you'll have the same great support from our team here at Omni."

<comment><USER11> Can you offer any more detail on what you were specifically forbidden from doing? Is it that you aren't allowed to offer updates outside of the App Store to App Store purchased apps? Or is it the method you were using with OmniKeyMaster that was disallowed?

Do you think Apple would allow other ways of supporting upgrade pricing between two versions of an App Store app possibly through in app purchase or similar?

</comment></comment><comment><USER12> > We are not allowed to distribute updates through other channels to apps > which were purchased from the App Store.

> Update: Unfortunately, we've had to remove OmniKeyMaster from our website > and can no longer offer upgrade pricing to App Store customers.

So, what happened here? Did Apple threaten to close Omni's app store account? Because:

The Omni Key Master is an app that is not distributed through the app store. Also when a user buys an upgrage he will only receive updates through Omni's website and not the app store. So the upgraded apps should be out of Apple's reach.

So what happened here? Did Apple legal write a strongly worded email to Omni?

</comment><comment><USER13> The Mac App Store does provide something of value: app hosting, oh-so-easy purchasing (just enter a password, as Apple has your credit card details on file), app delivery, license management.

But the downsides. Boy, the downsides. And they take a 30% cut of the gross price.

It would be really nice if there was an alternative App store, which offered the similar benefits, was cheaper for developers, was curated, but was more developer-friendly.

<comment><USER14> There is [http://appbodega.com/](http://appbodega.com/) but, yeah, nobody buys there anything.

<comment><USER9> Which underscores the single greatest value of the App Store: the market.

Apple has built a population of dedicated users who are willing to spend money. They did this by building a product that asks consumers to spend a little more to get a little more. Now they've created a channel through which developers can access those consumers directly through the host operating system, and they charge a fee for that.

When you look at alternative marketplaces, it becomes clear that the value of the App Store is more than just "app hosting, oh-so-easy purchasing (just enter a password, as Apple has your credit card details on file), app delivery, license management".

</comment></comment></comment><comment><USER15> It is additional work but I believe something should be possible on iOS7 and Mavericks. If I remember correctly you will now be able to get the original purchase receipt including the date of the purchase not just the receipts for the in-app purchases. If you can separate out some or all of the feature upgrades and disable them when the original purchase was before date of upgrade release unless an in-app purchase is made for the upgrade price.

Won't this work? I realise that it doesn't come without effort to set it up and to test the software in two modes but at least bug fixes can go to everyone without two releases.

Up to now I don't think there has been a way to identify when the initial app purchase happened.

</comment><comment><USER16> The problem is Apple doesn't currently care about paid upgrades. They don't sell software that way (witness the new Logic).

Developers need to do things to ensure the loyalty of old customers while pricing their software so they can make a living. So the starting price + upgrade pricing model works great. Customer feel like they got a bargain for being loyal and the developer gets to eat.

Apple doesn't need to do that. So they won't build it for developers. Given the iCloud API thing, I would imagine this is going to continue to get more restrictive.

<comment><USER17> > The problem is Apple doesn't currently care about paid upgrades

Given that they would make 30% of the upgrade price, I'm surprised they're not actively _encouraging_ this.

<comment><USER18> You seem to be under the mistaken impression that apple cares about the money, at the scale the MAS operates at, its nothing to write home about. So i doubt very much that they plan on changing anything at the current time.

</comment></comment></comment><comment><USER19> It'd be ugly and put other burdens on the pricing strategy and support permutations, but perhaps app-makers so trapped could approximate their desired result via:

(1) offer a reduced-functionality "version N" to everyone, but for the desired 'upgrade' price. (Essentially, this might only have the features of the prior N-1 version.)

(2) offer an in-app purchase unlocking full/pro features, priced at the delta between their desired "full Version N price" and what was already paid

(3) give owners of the previous "N-1 Version" a code that gives them the in- app purchase benefits for free

Maybe Apple would still object... but since the entire process happens inside Apple's system, paying Apple's commissions, advancing the use of Apple's in- app purchase mechanisms, maybe they'd be OK with it.

<comment><USER11> How do you propose accomplishing (3) that isn't a difficult confusing mess for users and verifies they are indeed an owner of the n-1 version?

<comment><USER19> The prior version creates a unique proof-of-ownership code (perhaps on request, after consulting the vendor's server).

That code is either cut & pasted, or custom-URL-handler'ed, over to the new install, unlocking the same features as an in-app-purchase. (Or maybe there's a bounce through Safari, somehow leveraging its offer-to-launch-or-install functionality to minimize the steps, or through the vendor's own servers keyed by opt-in email address. Lots of possibilities, really.)

<comment><USER11> As I said in my other response it seems likely Apple won't allow these upgrade schemes any more than they are allowing Omni to do upgrades around the App Store. Why would they block what Omni was doing entirely outside of the App Store and allow apps distributed through the App Store to accomplish something similar?

<comment><USER19> Because outside the App Store, Apple doesn't get their cut, and external payments or software-deliveries don't bind people to the habit of App Store purchases and in-app purchases.

With this pseudo-upgrade process, even as convoluted as it is, it all remains inside Apple's system.

I suppose the key question is: does Apple allow promotions that give some people the same effect as in-app purchases, while others still have to make the paid purchase? (I think they do.) I could see Apple objecting _if_ the feature-turn-on is in any way a reward for outside-of-App-Store valuable behavior - that's circumventing Apple's role.

But if it's an extra bonus for an earlier in-App-Store action – the N-1 version purchase – Apple's role hasn't been circumvented. In a way, it's been reinforced. So the same logic driving the prior veto wouldn't apply.

<comment><USER11> Perhaps. It's an interesting theory. I've seen it claimed in the past that Apple has given explicit permission to activate in app purchasable features through other means such as contacting a developer's server with an unlock code. I'm still leery of going through the effort to build and support a kludgy solution like that and still have the risk of Apple not approving of it.

</comment></comment></comment></comment></comment></comment><comment><USER20> Seems like this is a case study for "Android is for startups" [http://blog.audobox.com/android-is-for- startups/](http://blog.audobox.com/android-is-for-startups/)

<comment><USER21> Hardly - we have the same problem with the Play Store

</comment></comment><comment><USER14> It was so obvious when I read about it here [http://brooksreview.net/2013/08/omnikeymaster-upgrade- pricin...](http://brooksreview.net/2013/08/omnikeymaster-upgrade-pricing-for- mac-app-store-customers/) just the other day.

Why would Apple build a distribution channel and then let people upgrade apps outside of it without getting their cut? I think this was obvious for the Omni guys too, they just wanted this problem to get some publicity.

<comment><USER22> They kind of have to because the App Store doesn't allow paid upgrades. There's no way to offer two prices (upgrade price and full retail price) for an app.

EDIT: The in-between choice would be moving to SaaS (see Adobe), but that's another discussion entirely

<comment><USER23> As a counterpoint, the App Store also implicitly encourages an "infinite major versions updates" pricing model vs. minor point release updates = free, major = paid upgrade.

In order to do something like that in the App Store, you have to make your next major version listed as a completely separate app ID. Almost no one does this because everyone in the App Store ecosystem expects new version = hit Update All - and the few times I've seen this done, it resulted in nothing but negative App Store reviews.

By not providing anything other than a single purchase price, Apple has not just discouraged the upgrade price model - they've discouraged everything but a one-time flat price or admitting to the customers that they're truly a SaaS model (by forcing the developer to do it as an in-app subscription purchase).

I prefer this simplicity.

</comment></comment></comment><comment><USER24> Why not offer rebates to users of the old version instead?

<comment><USER25> It's likely that Apple would veto that as well.

<comment><USER24> How much control do they really have over your business? If amazon can redirect its customers to its site to work around this level of control, why can't they do the same and give licensed users apple gift cards to cover the upgrade vs full price difference?

</comment></comment></comment><comment> ryan-allen Maybe they could do rebates? Like you purchase an app via the app-store and if they have a record of you owning it they can refund some of the money?

</comment><comment><USER26> Yup, Apple needs to fix this. Doesn't seem like a difficult engineering problem on the surface. Just fix it.</comment>


GLaDOS and the Sniper: A Voice Acting Love Story - <AUTHOR> http://motherboard.vice.com/read/glados-and-the-sniper

<comment><USER2> Ellen is also the voice of the Combine Overwatch in Half-Life 2. One of my favourite pieces of sound-design.

      "Citizen reminder: inaction is conspiracy,
      report counter behavior to a civil protection team immediately."

[https://www.youtube.com/watch?v=y6pZkmCPwlI](https://www.youtube.com/watch?v=y6pZkmCPwlI)

Edit: Oh, and she's the Announcer in Team Fortress 2.

</comment><comment><USER3> "Nowadays, John does some TV commercial voiceover gigs, and some voice work for Valve that he couldn't elaborate on" \-- anybody hope it's HL3 they're talking about here? :)

<comment><USER4> Yeah, he'll be voicing Gordon Freeman, I'm sure they'll announce that tomorrow, April 1st.

<comment><USER5> In the same way as Link from the Legend of Zelda, I'm kind of glad Gordon doesn't have a voice actor. Too often the disembodied narration in first person games comes off as hammy.

<comment><USER6> If Link doesn't have a voice actor, where do the "HAH! HYAAH! TEEAHH!" come from? :)

</comment></comment></comment></comment><comment><USER7> A few years ago I had the pleasure of hearing Ellen and John play some folk- country songs. They are quite talented musicians!</comment>


Elastic IP routed to a completely unrelated host for a few minutes - <AUTHOR> https://forums.aws.amazon.com/thread.jspa?threadID=126229

<comment><USER2> It happens from time to time, not a huge deal.

EDIT: Downvotes? I'm not sure whats up with the unrealistic expectations of AWS. Its a shared system. You should be encrypting your data from the point it leaves a client app or browser, configuring your app to tolerate misdirected requests, etc. You don't like that? Go rent some colo, buy some hardware, and run it yourself.

<comment><AUTHOR> I can't tolerate misdirected requests, because I can't do _anything_ about them. If my website had any hits in this period, and the response was 301 (as it happened), users won't be able to come back using this browser, pretty much, _ever_. Most people don't know how to clear their browser's cache.

So it's much bigger issue than a simple outage.

<comment><USER2> Totally understand that. I'm an ops guy, and I'm not a huge fan of AWS, but I'm married to them for a lot of stuff. You engineer against most of what you can, but there are always going to be edge cases where you're going to drop a request somewhere. ELBs are usually where this is going to happen. Its no different than having your own F5 and it being in an inconsistent state. You know what you do then? Reboot it.

TL;DR These things happen. It sucks, but code isn't perfect.</comment></comment></comment>


Ext4 encryption patches for Android - <AUTHOR> http://thread.gmane.org/gmane.comp.file-systems.ext4/48206

<comment><USER2> Dug in trying to understand what's wrong with dm-crypt (+ LUKS on my desktop) I use on Android already. No _real_ answers.

Interesting quote from dm-crypt dev:

> As the primary DM maintainer I've yet to see a single report about dm-crypt > performance being a pain point for android. Yet ext4 developers have gotten > to a point where AOSP changes were introduced to use their newly crafted > encryption support. Amazing really.

ref: [https://lwn.net/Articles/639736/](https://lwn.net/Articles/639736/)

No real answers or benchmark data. Anyone know why I'd want to use this over dm-crypt?

<comment><USER3> This is about trying to "catch up" to the encryption Apple has in HFS+. On iOS, there are a number of different policies that can protect a file: it can always be accessible, be accessible only after the user first unlocks their device, or only be accessible while the device is unlocked. The ability to say "I have locked my device: destroy the in-memory keys used to decrypt most of my data" is really powerful and important, as otherwise I can attack your running phone that I steal out of your pocket to obtain your data. This kind of flexibility just doesn't fit at the level of a block device.

</comment></comment><comment><USER4> Is there a security benefit to encrypting at the filesystem layer as opposed to just encrypting the underlying block device (like dm-crypt)? It seems like whole-disk encryption would be much harder to accidentally implement insecurely.

<comment><USER5> Whole-disk encryption is simpler, but less secure than filesystem level encryption. Block level encryption can't protect against active attacks because it doesn't have the extra space to store checksums. Algorithms are much more vulnerable when the attacker can make modifications and see the response. This makes disk level encryption only suitable for protecting against your laptop being stolen.

Don't know if ext4 encryption supports it, but the filesystem could allocate extra space for checksums to verify files aren't being modified. It also could store different keys for each file or directory making it possible to lock and unlock portions of the filesystem separately.

<comment><USER6> > Algorithms are much more vulnerable when the attacker can make modifications > and see the response.

That means having access to the block device itself, with the system in an unlocked state.

If you've reached that scenario, then it's game over for whatever data is being encrypted.

</comment></comment></comment><comment><USER7> Heh, if anyone with access to the design document reads this, I get an "access denied" error on the Google Doc mentioned in the mail.

<comment><USER8> Try [https://docs.google.com/document/d/1ft26lUQyuSpiu6VleP70_npa...](https://docs.google.com/document/d/1ft26lUQyuSpiu6VleP70_npaWdRfXFoNnB8JYnykNTg/edit#heading=h.fctvdc89s0kl) instead. Or LWN's take at [http://lwn.net/SubscriberLink/639427/5357c92c58eb584a/](http://lwn.net/SubscriberLink/639427/5357c92c58eb584a/) .</comment></comment>


GSL – a Universal Code Generator - <AUTHOR> https://github.com/imatix/gsl <comment><USER2> A great write-up on his theory of model-driven development and the tech that underpinned most of iMatix:

[https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&c...](https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0ahUKEwjB6cDQq6bMAhUHxiYKHYd5COEQFgglMAE&url=http%3A%2F%2Fdownload.imatix.com%2Fmop%2Fintroduction.html&usg=AFQjCNGvrPkahZqX2MPIGZfJXWPEyiar7w&bvm=bv.119745492,d.eWE&cad=rja)

Their website is a slide-show demonstrating their amazing work:

[http://www.imatix.com/](http://www.imatix.com/)

Generating servers from state machines and such:

[http://hintjens.com/blog:75](http://hintjens.com/blog:75)

SMT kernel for portable, multi-threaded, fast code:

[http://legacy.imatix.com/html/smt/](http://legacy.imatix.com/html/smt/)

Web server (old and new) [https://en.wikipedia.org/wiki/Xitami](https://en.wikipedia.org/wiki/Xitami) [http://xitami.wikidot.com/main:start](http://xitami.wikidot.com/main:start)

One of best middleware ever [http://zeromq.org/](http://zeromq.org/)

<comment><USER2> That Google link on top came out of nowhere and doesn't work. Here's the actual link to the great write-up on MOP and philosophy:

[http://download.imatix.com/mop/introduction.html](http://download.imatix.com/mop/introduction.html)

</comment></comment><comment><USER3> Is there a fundamental difference to template systems such as erb? Because I'm having a hard time seeing it (except the academic prose and the subtle horror xml always causes me).

<comment><USER4> It's a language powerful enough to let you design a custom template system, i.e. it's second-order meta-programming, pushing the leveraging potential way farther than most people would even consider offhand. This kind of thing doesn't matter so much when you have a system already described within a few thousand lines, but it gains credence as more of the code consists of business logic and data models - stuff that has its own programming ruleset.

An internal, interpreted DSL can be written to do similar, but I think the point of this tool is to ease the process of writing the DSL itself, and to make the resulting runtime efficient.

</comment></comment><comment><AUTHOR> I was reading about Pieter after his article the other day and thought this was an interesting tool.

[https://news.ycombinator.com/item?id=11547212](https://news.ycombinator.com/item?id=11547212)

<comment><USER2> It was a good night... I skipped that article as I avoid unnecessary negativity on subjects I already know about. To heck with a depressing piece, ya know? Then, I click on the link to find Pieter wrote it and is about to die. I hoped I'd meet him one day as some awesome project or paper of insights would come out of it. Couldn't be any other way with him as his work was like the enterprise version of Bernstein: series of techs balancing effectiveness, correctness, and speed unusually well. His work was a steady set of attempts at The Right Thing mindset with quite some impact.

I'll miss him. (sighs) Wrote that here in case he sees the higher ranked article. He said he didn't want negativity. ;)

</comment></comment><comment><USER5> That readme is a massive intro that doesn't explain very much at all.

tldr; Define a model in xml, and a provide it a template script and it'll output some text.

Sound like XSLT? yep. With a custom DSL taped on the side for scripting.

Also...

        Template-driven code generators that use symbolic insertion to inject
        meta- data into a template. This technology makes it much easier to
        write new ad-hoc templates. Typical examples are any technology that
        produces dynamic web page.

        Scripted code generators that use a high-level language to manipulate
        meta- data and then inject it into templates. This technology makes it
        much easier to write new ad-hoc code generators. Typical examples are
        XSLT, GSL and some other scripted code generation languages.

These are just arbitrary terms you're inventing.

Lots of template engines support the ability to manipulate the data before injecting it into a template.

Having a special limited little DSL for scripting that is an _antipattern_ , not a good thing.

Lots of people use translation tools (coffee script, typescript, babel, sass, etc) that map from one language to another 'similar' language, even code, and it works well.

I think we can comfortably say that these days, people are pretty happy with the idea of code generation; ...but I think few people will find anything in GSL that is not covered elsewhere, better.

Can you imagine modeling your typescript in XML so you can generate some javascript from it? ugh.

Perhaps there's some use for this sort of stuff in protocol serialization, but you have to do so much of the heavy lifting yourself for it, I'm not sure why you'd bother over an existing solution like protocol buffers.

<comment><USER6> "I'm not sure why you'd bother over an existing solution like protocol buffers."

For context, protocol buffers did not exist when GSL was devised in 1995 (3 years before google was founded). So in fact GSL _was_ the existing solution when google came up with protocol buffers.

Given GSL is still going strong 21 years after inception is a pretty solid testament to its utility.

<comment><USER7> protobufs generates code for one model. GSL lets you build infinite generators for infinite models. Its like comparing an apple with a fruit farm.

</comment></comment></comment><comment><USER8> There is more to GSL than XML processing. GSL was used to write ZeroMQ along with many other pieces of software. GSL can also be used to write FSM (finite state machines) and an earlier variant called Libero, was used to write the very well regarded, Xitami multithreaded web server.

I just installed it yesterday so haven't been able to fully suss out how I will use it.

Hintjens also wrote the CLASS style guide/ subset of C usage which is used for ZeroMQ etc. I don't program in C, thus, can't offer an informed opinion about it - but perhaps another HN'er can chime in on the quality of it.

<comment><USER7> The ZeroMQ core library does not use gsl. We use it in two projects, zproto and zproject, which are nice examples of what is possible without going too meta. I started explaining zproject in my [Scalable C]([http://Scalablec.org](http://Scalablec.org)) book.

<comment><USER9> Are there useful heuristics on where GSL is most applicable? Where it is relevant and powerful and not too meta; just the right amount of abstraction to represent a problem and its solution.

For example, "GSL is likely a good choice at <abstract problem description>, such as <some very concrete examples>. And it may not be appropriate for <abstract problem description>, such as <other concrete examples>. Because of <some specific reasons>."

I looked through the GSL website and also Scalable C and wasn't able to find any descriptions that place limits on the applications of GSL. A description of what a complex something _isn 't_, from an expert, is almost as important as what that thing _is_.

Your writing style in Scalable C is incredible and enlightening. I will be studying and referencing that book, even if I'm not directly coding C.

</comment></comment></comment><comment><USER10> Given how much focus he places on code generation and metaprogramming it's ASTounding that there is not a single reference to Lisp to be found in that wall of text. I agree with a lot of what he says, but his total ignorance (must be ignorance rather than deliberate) of Lisp metaprogramming weakens a lot of his arguments for GSL specifically.

</comment><comment><USER11> Back in 1982 Synon Inc. introduced its Synon/2 CASE tool based on similar ideas. The product targeted minicomputers using green screens. The same model could produce target code in COBOL, RPGIII or PL/I. We then toyed with the idea of meta-models which could model vertical applications such as accounting systems or inventory control. We believed that the next generation of modeling would use logic programming with constraint solving to make smart models (At the time the Japanese 5th generation project was underway). Alas, the project proved too difficult and it was abandoned. Perhaps it is time to revisit the idea.

<comment><USER11> Sorry, meant 1986.

</comment></comment><comment><USER12> Aw! I was hoping for an endless stream of Global Starcraft League :(

<comment><USER13> And I for the GNU scientific library.

</comment></comment><comment><USER14> I submitted GSL in the list of static website generators a while ago. That was one of the few static generator written in C, which is nice for small embedded systems.

</comment><comment><USER15> We have something like this written in Java except we are getting away from templates and moving more towards AST transformations.

</comment><comment><USER16> It is my first time hearing the term MOP. I got a feel that Hintjens is the guy who brings future come</comment>