Free software is suffering because coders don't know how to write documentation - <AUTHOR> https://thenextweb.com/dd/2017/06/02/free-software-is-suffering-because-coders-dont-know-how-to-write-documentation/?utm_source=social&utm_medium=feed&utm_campaign=profeed#.tnw_IZruvbiT <comment><USER2> "Don't know how"? [A] flaw in human nature is that everybody wants to build and nobody wants to do maintenance (Vonnegut). Most free software projects are entirely built by volunteers contributing what they want to. I don't know how much offering classes on "how" would help; it feels like leading a horse onto a boat.

Also, the poll seems a suspect way to support the idea that more documentation is justified; I agree with that idea, and TFA has other arguments supporting the point, but I question the utility of the poll as an argument. Developers would like better documentation of the libraries they are using, but they would. In a Pareto-optimal scenario where exactly the right amount of work was put into documentation, developers would still want better documentation. And I would want a pony.

<comment><USER3> I've seen this wierd issue in companies(not open-souce, just plain normal companies with minimal OS involvement) where I'd send decent technical writeups to people who sould understand them, with issues that affected them but they didn't... friggin... read... them. I think maybe this problem is also present in OS where, you write stuff but get a lot of questions back that could be solved by people reading the friggin' documentation. Maybe this makes people feel it's pointless.

</comment></comment><comment><USER4> Technical writing is dead as a profession.

Too many companies expect technical writers to be as savvy, or more, as their developers, but for lower pay, less respect, and zero political power.

This attitude bleeds through to open source/free software.

You want better documentation? Find a way to compensate people for contributing to it, and that doesn't necessarily mean money. Separate your documentation repository from your code base.

<comment><USER5> Afaik RedHat pays their documentation engineers and QA engineers very well, since they consider those roles to be essential to the product from the customer's expectations. It's a perspective rarely shared by other companies though.

<comment><USER6> > "It's a perspective rarely shared by other companies though."

This is not the worst case scenario. Some places will sensationally hire QA/Writers, hailing their importance, and lay them off at the first sign of cost cutting.

</comment></comment></comment><comment><USER7> This isn't just a problem in open source. It is a huge problem in corporate internal software too.

Most OSS projects that expect to receive (and actually get) the attention of users or contributors tend to work harder on better documentation.

<comment><USER8> Even some commercial software has poor documentation. Still, open source software has almost universally very poor documentation. I don't know if it hurts free software but it certainly hurts those who use it. If a project is reasonably popular, say a thousand users, and each user on average has to spend an hour to figure out how to use it, then that is 1,000 hours wasted. The developer, could instead have spent say 8 hours writing documentation to save the users that one hour (* 1000).

Contrived example, I know, but the principle holds: time spent by the developer writing good documentation saves users a lot of time. Most developers, in my experience, do not like to write documentation so they prioritize user's needs below their own discomfort.

Some try to take the lazy way out by going the "I'll let the users create the docs on a Wiki" route. See, for example, the Freeswitch (VoIP server) documentation for just how bad this can be.

A lot of developers do want to write good documentation they just don't know how. In this case what we get are reference guides instead of user manuals. Writing small user manuals for OSS projects is not that hard. The key is to put yourself in the user's shoes. Your user wants to accomplish some task with your software, so, in your manual give them step-by-step instructions for how to accomplish it.

It's like writing an algorithm, except that the instructions will run on wetware. For example, to install the software do A,B,C,etc. To compute the standard deviation of your data do 1,2,3 & 4\. Spell everything out, just as would do for the computer--assume nothing (ELI5). Don't just give a list of functions.

Users want code that solves their problem with the least possible investment in time and pain. I'm sure many people reading this have been through the OSS pain cycle: find a library that does what you want, see the sparse documentation, and then brace yourself for the pain of figuring out how in the hell to actually use it.

<comment><USER9> > If a project is reasonably popular, say a thousand users, and each user on > average has to spend an hour to figure out how to use it, then that is 1,000 > hours wasted. The developer, could instead have spent say 8 hours writing > documentation to save the users that one hour (* 1000).

That's true, although it's worth remembering that the 1,000 hours are other peoples time, not the developer's. It might be quite easy for a busy open- source developer (often working in spare time, already) to think "I've got other things I'd rather be doing".

Also, it's not just 8 hours one time - it's then ongoing maintenance. So you're spending time in order to create even more work for yourself in the future; documentation that doesn't exist doesn't have to be maintained alongside code changes.

We need documentation bounties, or something.

<comment><USER10> >We need documentation bounties, or something.

...Are there write ups exploring what "or something" could possibly be? Like futures contracts or options or potentially other risk mitigation practices from the financial world? Something that would help with collaboration and help with getting the timing correct? As in, the best time to have the documentation is at the point, or right before some software becomes "popular". But that seems like the time you are least likely to have enough people contributing to bounties. Is there a way to encourage documentation writing speculators? Is there a way to minimize the bad effects (if any) of winner-take-all bounties in discouraging contributors? That is, for bounties, how do you know if someone isn't already working on the documentation unknown to you, and finishes it (and collects the bounty), one week before you finish your version? And the fear of this prevents people from starting in the first place. Is there a way to make "progress payments" on documentation bounties?

<comment><USER9> I don't know, but you raise some really interesting points, and we didn't even talk about the quality of the documentation that might be produced. Bounties might be the wrong way to do it, but I can imagine a Patreon-style approach might work. Like "I'm the developer on this, and I'd rather be writing code. But if people contribute $X to my Patreon I will dedicate 5 hours a month to working on the documentation, instead".

</comment></comment></comment></comment></comment><comment><USER11> I was waiting until the dreaded Monday to launch this but I guess I'll do a soft launch now since it's totally in-topic. I even updated it to add Github's Survey results.

 _Let me write the documentation for you!_ I've created this: [https://documentation.agency/](https://documentation.agency/) and you can email me so my colleagues and I will write or improve your project's documentation. Added a landing page (like [https://picnicss.com/](https://picnicss.com/) ) and design if you want it. It is _for-profit_ so far, but if everything goes well I'll start doing some heavily reduced prices for some OSS projects.

[https://documentation.agency/](https://documentation.agency/)

<comment><USER12> Hey, that's actually a pretty neat idea. I mean, we already have agencies for things like web development, SEO and design, so one for documentation seems like it'd be useful for lots of people too.

Hope it does well.

<comment><USER11> Hey thanks! I got 0 emails so far though, so I think I'll have to go talk with some SMB to see if they are interested. If you happen to know anyone please let me/them know!

</comment></comment></comment><comment><USER13> This is a problem in some really major codebases too.

I routinely curse whoever wrote the "docs" for openCV.

<comment><USER14> Oh my gosh, yes, OpenCV is really hard to get into. Which is a shame because it seems extremely capable.

<comment><USER15> OpenCV was initially written in Intel and having been an Intel employee I found OpenCV's documentation to be totally consistent with internal documentation quality.

</comment></comment></comment><comment><USER16> I have to laugh at GitHub coming to this conclusion. About 80% of the time when I follow a link to GitHub, there's a list of files and absolutely no explanation of what the project is or why one would be interested in downloading or contributing to it. Sometimes there's a link to something called "markup" or "markdown" that sometimes has a short description that vaguely describes the project. But that's often missing or cryptic, too.

<comment><USER17> Yep, GitHub is usually backup for me. Most of my projects is abandoned after few commits.

<comment><USER15> Bitbucket has unlimited, free, private repos. I initially hide my manure.

</comment></comment></comment><comment><USER18> Software suffers from poor documentation principally because those who write the code don't have the time or inclination to write documentation, especially if they will have to do it in their own time. Most experienced developers can write well enough but they know that no one will maintain the docs so why bother. In my experience as an internal application developer the documentation is created only when someone leaves or a major application needs to be ported.

Internal software is probably the worst because there isn't a paying customer in the usual sense of the word so there is no one to send the bill to.

Do technical writers still exist? I could write documentation, in fact I intend to spend three days next week doing just that, but someone who has that as their primary skill would do a better job; unfortunately the company no longer employs such people.

</comment><comment><USER19> As a newbie I often felt repelled by FOSS project I want to contribute to, because even if code is clear and I might have found a piece of code to improve, a lot's of project don't even include the more minimalist instruction on "how to contribute" / "how does my build system/doc system work".

If you are doing thing really standard, point to the standard doc of you build system. But most of the time first think you have to do is to spend days trying to guess how the fuck the project is organized.

If your excuse is that you don't have time to write doc, maybe don't expect a lot of contributors, because guess what maybe they don't have time to guess what you didn't writeh.

</comment><comment><USER20> I think there is much potential of new coders wanting to participate to projects, but they just don't know how and where. They maybe used a project a bit and stumbeld over bad documentation or not working examples ..

So in theory, helping with documentation and fixing that would be a good start for them. But it takes confidence to tell someone, especially when you are a newb, that your documentation is sh*t and that you could help with that.

So if projects are more open for that - and explicitly say that, that they are open and thankful for that(also for beginners) - it could be a huge benefit for everyone ...

</comment><comment><USER21> At work we spend a ton of money keeping our documentation up to date, searchable, and available on the web. Worth every penny, and that's just if we count the productivity boosts for internal users of the docs.

</comment><comment><USER22> The frustrating thing about poor documentation is that the product actually works! It's just that the creator didn't go the last 5% of the way to explain to someone else how. The close-ness of the solution is what makes it frustrating by nature (it's not frustrating when you encounter a 2% complete solution to your problem).

My point is, the fact that poor documentation frustrates many people according to a survey does not mean that software developers can't or don't write documentation.

<comment><USER23> > It's just that the creator didn't go the last 5% of the way to explain to > someone else how.

We software developers have this borderline criminal tendency to undervalue work that isn't software development, like writing documentation. I'd say that documentation might be closer to 20% of the work of a project, and developers are usually bad at it (by "bad" I mean "unskilled").

<comment><USER11> A -quite old[1]- estimate puts it in 20-40% of the total time should be spent writing documentation. If you find any newer reference please let me know, I'd love to quote it in my project to write project's documentation [2].

[1] [http://www.techrepublic.com/blog/10-things/10-things-you- can...](http://www.techrepublic.com/blog/10-things/10-things-you-can-do-to- create-better-documentation/)

[2] [https://documentation.agency/](https://documentation.agency/)

</comment></comment></comment><comment><USER24> The first thing that came to mind:

 _Eagleson 's Law: Any code of your own that you haven't looked at for six or more months, might as well have been written by someone else. (Eagleson is an optimist, the real number is more like three weeks.)_

Writing documentation isn't so much a "how" problem, but a "why" problem. Most people writing code in their own time can't be bothered also writing documentation for it.

Writing code is fun (mostly). Writing documentation is not.

<comment><USER25> Wow, I don't agree with that "law" at all. A couple times in my career I've worked for 5+ years in a codebase that I started, and it's always easier to read my old code than to read someone else's. Like, waay easier (unless the other person's code is super duper clean).

<comment><USER12> Those two views aren't necessarily opposites. Your old code can be hard to read, and other people's code can simply be even more difficult to understand than that.

</comment></comment></comment><comment><USER26> I dont have the time. Train a Neural Net to generate documentation from my rambling and mumbling while editing the source. Do something else to find a solution. I shall write code. With speaking names. With identifyable concepts and algorithms. That must be enough.

Also the webs inability to allow the users to meaningfully interact with documentation - by instantly saying -"This step didnt work" and getting then feedback from so god forsaken irc-channel or mailinglist. There is no real integration of the users ability to contribute to documentation. And wikkis are the worst at this. The tagged syntax, the time wise seperation from the point of usage of the documentation.. it all adds barriers, where there should be none. Documentation should not be added online at some remote site.. documentation should be generated by the user, while he is tryialed & errored in some forgotten config- while he defeats a obsticle - and it should mention those who cleared the path through the djungle as heroes.

</comment><comment><USER27> And why should they? That's not what they test for in interviews.

</comment><comment><USER28> > Documenting software is extremely difficult. People go to university to > learn to become technical writers, spending thousands of dollars, and > several years of their life. It's not really reasonable to expect every > developer to know how to do it, and do it well.

This is the answer. Software developers are bad doctors, and bad writers, and bad musicians, ... Why do people expect that software developers should have so many other professional skills? The time when your developer designed, implemented and written content for your corporate web is long gone. But we still expect them to be good technical writers.

In the companies I have worked for, we have technical writers that help to write organized, consistent complete documentation. And it is a full time job.

<comment><USER29> > _Why do people expect that software developers should have so many other > professional skills?_

to cut cost most likely

<comment><USER30> though I share your cynicism, this could easily be reversed as "people value software developers that can also do other stuff good too."

</comment></comment></comment><comment><USER31> What do we mean by 'documentation'? Usage of the outwardmost-exported interface (which, depending on the project, may be an UI or an API)? Configuration and customization options, installation instructions? Design rationale, deep-dive into internals, explanation of internal components?

'Documentation' covers a wide swath of prose, and therefore makes for an easy target for criticism which is in fact very disparate, despite appearing homogeneous.

That is not to say most projects have good documentation. Writing prose -- specifically, technical writing -- is a skill orthogonal to software development and doesn't necessarily tend to attract the same kinds of individuals.

</comment><comment><USER32> ... and (although to a lesser extent) user interfaces.

Writing software, its documentation and its way to interact with the user are three totally different beasts requiring different skill sets: documentation and UIs should be written with people in mind, not algorithms, so better not leave that task to a programmer.

Also, writing documentation and user interfaces isn't seen as k3w1 among coders so it's understandable that people good at writing docs and/or designing UIs are rather doing it for a fee outside the FS/OSS world than because they love it.

</comment><comment><USER33> I see a lot of documentation describing how it works, not what it does. I think most README.md files would be better as code comments. Personally, the most useful documentation contains a brief summery of purpose, usage, and then a few examples. Dependencies should be called out if they are significant.

</comment><comment><USER34> Is this really a problem? I very seldom run across projects worth using with poor documentation. It's usually pretty good.

</comment><comment><USER35> Open Source is not Free software, nor are most of the projects on GitHub intended for anyone to use. Consider how well documented projects under the GNU banner are. Im sure this is a problem for some projects, but free software is not suffering because of it.

<comment><USER36> As well-documented as GNU software is — and it is! remarkably so — I think the project loses even _more_ points for foisting the atrocity that is gnu-info on everyone. That is some abysmally "You will do it the way I want you to, and like it!" software.

When I say `man foo`, do not suggest I look elsewhere, please.

<comment><USER23> So, they've written this amazing documentation system which generates info and HTML from the same sources, hosted all the HTML online and made it available as separate downloads, also made it accessible from the terminal using "info", and on top of that they've made a separate, shorter version of the documentation available as a man page and you say that they should lose points for it?

Is this actually a problem for you? I'm genuinely curious.

"Man" is only really usable when the pages are a reasonable size. Once they get too big, you end up spending most of your time grepping through it or paging forwards and backwards looking for the section you want. But apparently, gnu-info is an "atrocity". Why? Is it somehow morally wrong to ever try to make something better than "man"?

<comment><USER36> An "atrocity" is admittedly hyperbole, but when the man pages are vague, at best, and often just say "use info instead", that reads more "Do it the GNU way, or you're wrong," than, "Weren't we thoughtful to have given you all these alternatives?" Particularly when the former is not an uncommon attitude among FSF projects.

I'll totally own that I'm reactive to that, but I really do think it's a little thoughtless, and a violation of the Principle of Least Surprise, to direct people elsewhere. I've been burned entirely too many times, trying to put out a fire, checking the man page to confirm I remember some argument or option correctly, and being told I'm looking in the wrong place. It's not that it's "morally wrong" to do that; it's that it introduces friction in a place where that might be — demonstrably has been, given my experience, which I know I'm not alone in having had — particularly painful.

Sometimes, "grepping through the man page" is, in fact, the quickest route to the _info_ you need...

<comment><USER23> I mean, sure, it's nice to have the options documented in a man page. But most of the GNU projects _have exactly this_ in addition to the full docs in info pages, multi-page HTML, and single-page HTML available for online or offline browsing.

I think historically, there were some bad man pages for GNU projects which just pointed to info, but I haven't seen that happen recently.

<comment><USER36> Then that's improved markedly since the last time I bothered trying to `man foo` in the terminal for a GNU tool. I just go straight to the web, because at least there I can Ctrl-F properly.

I'm not saying "don't even try to improve things", and I think that's a pretty un-generous read of my concern. I'm saying _don 't break people's expectations_. Especially if those expectations might come into play in exigent circumstances, and create friction in a place where the user already has a problem that is _far_ more important to them than whether they're using the output from most flexible documentation tool or not.

Like I said, it sounds like that's improved. If so, I'm glad. But I have specifically been burned, and my time that was wasted was also someone else's money. Given that, a bit of, "Hey, guys? Maybe think about how this choice might affect people?" is, IMO, warranted.

<comment><USER23> > Given that, a bit of, "Hey, guys? Maybe think about how this choice might > affect people?" is, IMO, warranted.

That's exactly what I have a problem with... there's a leap between "this sucks" to "therefore they must not care about how this affects other people" that is not justified. If you want something that fits your expectations of how Unix should work, we already have that, it's BSD and it's constructed with a lot of care not to break users' expectations of how Unix works.

The GNU project has really never had that as a project goal. The whole "GNU's Not Unix" acronym is not just a stab at copyrights, but it's a pretty good summary of their goal to create something which is _not Unix_ but instead better than Unix. I'm not saying that they're doing it the right way, or that they actually are better, but that's their stated goal. Pretty much every GNU tool has some incompatibility with the equivalent Unix tool, and they don't care, because they're not trying to make a copy of Unix. Back in the day this was a problem because people would write shell scripts which would assume GNU userland. You still see it in a lot of packages which say that you have to use GNU Make, GNU Awk, GNU Sed, GNU Bison, etc. instead of the equivalent Unix program.

These pieces of advice have fallen by the wayside since GNU userspace has become the norm, but if you really want the Unix experience instead of the GNU experience, go use BSD.

<comment><USER36> It's probably all the BSD in my background that established these expectations. But the people who buy my time use Linux, so I do too...

(I've also just spent my entire workday cleaning up the consequences of someone else's think-o instead of working on my own tasks, some of which have a hard deadline. I'm probably kvetching more than anything. Apologies for the noise.)</comment></comment></comment></comment></comment></comment></comment></comment>


Atom understands your code better than ever before - <AUTHOR> https://blog.github.com/2018-10-31-atoms-new-parsing-system/ <comment><USER2> It seems interesting to compare/contrast this Tree-Sitter toolkit/approach with the Language Server Protocol [1] work that VSCode has been taking. My gut impression is that the VSCode assumption that a language's own compiler is often the best source of truth regarding that language, and using an information "onion" of fast "traditional" syntax highlighter augmented with the ability to request a more detailed version from a language compiler/interpreter is a better approach for long-term maintenance reasons, if nothing else.

Admittedly, Tree-sitter has the opportunity to centralize some of the work in incremental parsing that LSP pushes to individual language tooling, but arguably in the modern world of watch-based programming most language tooling is going to feel a need to build it regardless.

The maintenance headache, though, is that Tree-sitter has its own custom grammar DSL, which likely won't look anything like or share anything with the native grammars of the languages it is parsing, and which ultimately has to settle for a lowest-common denominator approach to grammar parsing. Even if it is more sophisticated than so-called "crude" RegEx-based syntax highlighters, it can still at best be a separately maintained emulation of a language's grammar versus the LSP encouraging a language to provide its own intelligence presumably from the very same parser it uses to get work done.

[1] [https://docs.microsoft.com/en- us/visualstudio/extensibility/...](https://docs.microsoft.com/en- us/visualstudio/extensibility/language-server-protocol?view=vs-2017)

<comment><USER3> Tree-sitter isn't really an alternative to LSP. We think of it as solving a different set of problems.

LSP is probably the best way to provide the fixed set of classic IDE features that LSP does - inline diagnostics, autocomplete, go-to definition, etc.

We think that for many _other_ features, Tree-sitter is a much cleaner solution than pushing the logic out into the language server. For example, if you want accurate syntax highlighting that's lightweight and updates immediately (as opposed to in a delayed fashion like in most IDEs), you need incremental parsing. Incremental parsing is a highly specialized problem, so writing an incremental parser in the form of a Tree-sitter grammar is much simpler than modifying a language's compiler toolchain in order to _make_ it incremental, and bundling that whole toolchain into an app like Atom.

The same goes for other features besides syntax highlighting. The syntax tree is now available via a uniform, in-process API in Atom, and is always up-to- date, so you can script the editor to manipulate your code intelligently. I'm not totally sure what kinds of things we'll end up building on top of that, but I think it's a different set of things than LSP will end up providing.

<comment><USER4> Very good points. Just to add a few more details on the LSP and VS Code side of things:

\- VS Code implements syntax-aware code folding using the LSP. This means that folding is super flexible but it is also makes computing folds fairly expensive. And every time the document changes, the language server has to re- compute and update the folds. In almost all cases, language servers is just generating folds based on the document's syntax anyways.

Tree-sitter is interesting because it lets folding and other syntax based language features be calculated accurately and quickly on the client, freeing up the language server to do more interesting things (or just go to sleep for a moment). Document outlines are similar; VS Code uses the LSP for this but in many cases the same syntax derived outline could be generated by tree-sitter.

\- The LSP probably isn't well suited to general syntax highlighting due to computation cost and communication chattiness concerns, but the LSP may eventually support semantic syntax highlighting [1]. This could, for example, allow an editor to color all singletons hotpink, which requires a semantic understanding of the code. Semantic highlighting would augment the base highlighting provided by tree-sitter or by a TextMate grammar.

I'm the developer of VS Code's JavaScript/TypeScript and Markdown support, and am interested in tree-sitter if only in the hope the it will free us from TextMate grammars. If you want to see just how far regular expressions can be pushed, just go browsing through some of these bad boys; TypeScript's is a classic [2].

Keep up the great work Max!

[1]: [https://github.com/Microsoft/language-server- protocol/issues...](https://github.com/Microsoft/language-server- protocol/issues/513)

[2]: [https://github.com/Microsoft/TypeScript- TmLanguage/blob/16c5...](https://github.com/Microsoft/TypeScript- TmLanguage/blob/16c5fcb7aaa387579c320bca08bcc7eadddfdcc9/TypeScript.YAML- tmLanguage)

<comment><USER5> Besides what has already been said by the 2 parent comments: Textmate grammars had the advantage that setting up syntax highlighting for a new language (e.g. for a simple DSL) was a pretty easy and low overhead process, and that enabled getting highlighting for dozens to hundreds of languages in lots of editors.

Developing a language server is however a more complicated task - even if there would be a template that does most of the boilerplate. Therefore I would continue to welcome in-process highlighting mechanisms like textmate grammars and tree-sitter as a baseline. They could be augment by LSP features whenever a plugin author feels it's necessary.

Regarding tree-sitter itself: I've read the documentation, and it looks super- interesting. I've developed textmate grammars before and wasn't really satisfied with them, tree-sitter looks like it can provide a lot better results.

I would love to see those getting into VsCode and other editors too. Then good grammars can again be shared between editors! Maybe getting it into VsCode is now easier, since both are now somehow Microsoft editors? :)

</comment></comment></comment></comment><comment><USER6> If this is better than the Jetbrains' IDE's I'll eat a pony. I'm a WebStorm and IntelliJ user, with Sublime Text for simple stuff. Used VsCode and Atom once or twice. Ditched them because highlighting and code completion was below par.

<comment><USER7> Can you add details, for which languages and when did you try vscode?

<comment><USER8> Not OP, but I've had the same experience with Ruby on Rails. I switched to RubyMine last month after using VSCode for 2 months. I don't blame VSCode, Ruby has got to be the hardest language to do static analysis for, but JetBrain's proprietary code inspection and IDE integration blows every other open source solution out of the water.

</comment></comment></comment><comment><USER3> Hello! I worked on this feature and wrote the post. I'd love to hear any feedback or answer any questions.

<comment><USER5> Have you thought about a pure Javascript implementation of the parser, or compiling the runtime to WASM? Since a parser shouldn't really use any platform features it should be possible - and it could enable using the technology in pure browser based editors (like Monaco, CodeMirror, etc).

<comment><USER3> Yes! I'm very interested in making the Tree-sitter runtime and all of the parsers available as pre-built WASM modules. I think it should be straightforward to do.

</comment></comment></comment><comment><USER9> Does this require an extension on the file? One of my pet peeves with Sublime is that every package for beautification, syntax highlighting, and code- folding requires whatever I'm working on to be saved to a file using a specific extension to enable those features. Sometimes, I just need to copy and paste a few blocks of code and format, re-indent or any number of things but I don't necessarily want it saved to disk. I know this is a really niche situation but Atom is looking more and more promising to me and this edge case would help make that switch totally justifiable.

<comment><USER10> It goes by either file extension or the hashbang line. But I think it only make the determination when you open the file; it doesn't change the language when you edit the text.

You can manually set the language pretty easily though via the command palette or by clicking the language in the bottom-right.

</comment></comment><comment><USER11> Bit offtopic. But what is the future for Atom in hands of Microsoft? Will they continue to develop it or cease development in favor of VSCode? Or merge those two?

</comment><comment><USER12> Atom is slow even on a fast computer.</comment>


Why I switched to Android after 7 years of iOS - <AUTHOR> https://joreteg.com/blog/why-i-switched-to-android <comment><USER2> Mods - the original article has an awful title but the piece itself has some interesting content.

Any chance of a title change?</comment>


What every Angular project likely needs – and a Gulp build to provide it - <AUTHOR> http://blog.jhades.org/what-every-angular-project-likely-needs-and-a-gulp-build-to-provide-it/

<comment><AUTHOR> common toolchain choices for Angular projects, with a build and sample app</comment>


Develop iOS Apps in Java with RoboVM - <AUTHOR> http://www.robovm.org/

<comment><USER2> It compiles the Java but what about the big VM needed?

Found my answer: Note! When you compile a program using RoboVM it will translate not only the main class into native code but also the transitive dependencies of that main class. So the first time you compile a program for a particular CPU and OS RoboVM also compiles many of the standard runtime classes such as java.lang.Object, java.lang.String, etc. A simple class like HelloWorld references about 1500 classes directly or indirectly. RoboVM keeps a cache of compiled classes and only recompiles a class when it or any of its direct dependencies have changed.

Wow

<comment><USER3> This is exciting. But wouldn't this result in very large final binary sizes?

<comment><USER4> Should be able to use ProGuard, a code obfusticator+trimmer for Java. [http://proguard.sourceforge.net/](http://proguard.sourceforge.net/)

Although, from my experience doing Android with Scala, the process is slow.

<comment><USER5> "Read a few links on HN" slow, or "time to make some coffee" slow?

<comment><USER6> You only need it a few times when getting ready for distribution.

</comment></comment></comment></comment></comment><comment><USER7> Let's not forget that RoboVM is still alpha, and on Sept 09th version 0.0.4 was released: [http://blog.robovm.org/2013/09/robovm-004-released.html](http://blog.robovm.org/2013/09/robovm-004-released.html)

Here's an interesting blog post on RoboVM: "JavaFX On IOS Using RoboVM And Maven" [http://www.zenjava.com/2013/08/01/javafx-on-ios-using- robovm...](http://www.zenjava.com/2013/08/01/javafx-on-ios-using-robovm-and- maven/)

<comment><USER8> Niklas, the author or RoboVM, just send his first submission to the App Store, we'll see how that pans out. In the meantime, lots of folks from the libgdx community (JVM game dev framework) already ported many non-trivial games to RoboVM, without any big issues, e.g. [1][2]

Current limitations: no debugging, Boehm GC (though anything except stack references are collected precisely) and the ObjC -> Java bindings are a bit in flux.

I personally would like to see the ObjC bindings ala Xamarin get done. JavaFX is a trainwreck in my opinion. I think that would also be a really good business opportunity for Niklas/Trillian, i can see tons of enterprises wanting to code their iOS apps via a JVM language. RoboVM already has Maven/STB plugins available, so development is very smooth. And compile times beat Xamarin easily.

What gets me really excited is that RoboVM supports Scala out of the box. Writing iOS/Android/desktop games and apps in Scala would be amazing.

[1] [http://www.youtube.com/watch?v=h0Ro41uamD0](http://www.youtube.com/watch?v=h0Ro41uamD0) [2] [https://twitter.com/RainerBasso/status/378621566206369792](https://twitter.com/RainerBasso/status/378621566206369792)

</comment></comment><comment><USER9> There's also a source-to-source translator that google uses, j2objc

[https://code.google.com/p/j2objc/](https://code.google.com/p/j2objc/)

<comment><USER10> Another project targeting Java on iOS is XMLVM[1].

It has several frontends, including JVM bytecode, and several backends, including Objective-C (and vanilla C, these days).

1\. [http://xmlvm.org/overview/](http://xmlvm.org/overview/)

</comment></comment><comment><USER11> There are currently two open source AOT compilers RoboVM and avian that can be used for cross-platform iOS/Android development. Both seem to be in pre-alpha state. Seems like a better option would be to use apportable and go the other way from iOS to android. Anyone here have any experience with these?

[http://oss.readytalk.com/avian/](http://oss.readytalk.com/avian/)

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

<comment><USER12> I rememberer long time ago when i was still in the land of Java I researched the topic there were GCJ as well. Dont know what happened to it And Something called ExcelsiorJET as well.

<comment><USER13> GCJ is dead, as most developers went away to OpenJDK or just lost interest.

Besides ExcelsiorJET, Aonix and IBM Webpshere Real Time VM do also offer AOT compilation.

</comment></comment></comment><comment><USER14> Inversely, there is a tool for writing iOS apps in Objective-C and then porting it to native Android :

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

There are also dozens of tools for developing native apps in many platforms with HTML5/JavaScript, most notably Titanium : [http://www.appcelerator.com/platform/titanium- platform/](http://www.appcelerator.com/platform/titanium-platform/).

</comment><comment><USER15> Anyone knows if roboVM is using the same approach as MonoTouch uses ? I've always been curious to know how those two operated.

Do they link iOS frameworks C libraries and just provide wrappers in a C# or Java lib (which are then compiled to bytecode then native) ?</comment>


XKCD: Important Life Lesson - <AUTHOR> http://xkcd.com/400/

<comment><USER2> Do you mean to tell me that "The Lumberjack Song" and the "Power Rangers" theme song dosen't attract women?

</comment><comment><USER3> Um.</comment>


Transform – A polyglot web converter. JSON to {TypeScript, GraphQL, io-ts} - <AUTHOR> https://transform.tools/ <comment><USER2> Nice. GraphQL to Java is broken right now, and GraphQL to Kotlin would be awesome.

Are you happy to accept contributions that add new conversions?</comment>


Your Android phone pings Google a lot more then you might think - <AUTHOR> https://mashable.com/2018/08/22/google-android-data-collection-study/ <comment><USER2> dupe: [https://news.ycombinator.com/item?id=17817334](https://news.ycombinator.com/item?id=17817334)

Also shell group sponsoring sham "research".</comment>


Will Joukuu.com fly with supports from Google Docs, Box.net & Dropbox? - <AUTHOR> http://www.Joukuu.com

<comment><USER2> We believe Joukuu.com will change the whole backup industry!</comment>


US Bitcoin trader may face death penalty in Thailand over 'sea home' - <AUTHOR> https://www.theguardian.com/world/2019/apr/18/us-bitcoin-trader-may-face-death-penalty-in-thailand-over-sea-home <comment><USER2> So the argument is over if they are 12 vs 13 miles off-shore... They should have anchored it 20+ miles off shore to be sure it's in international waters and avoid the dispute.</comment>


GPS glitch directs lost phone owners to retiree's Las Vegas house - <AUTHOR> http://www.lvrj.com/news/if-you-lose-your-cellphone-don-t-blame-wayne-dobson-186670171.html <comment><USER2> >> "There were some horrible situations which prompted the FCC to go, 'Look, you've gotta fix this,' " Levitan said. Cellphone companies came up with a way to locate the phones and instantly transmit their coordinates to dispatchers. Today, as 70 percent of phone calls to 911 are made by cellphones, dispatchers can see where they are calling from. The information must be accurate to within 50 to 300 meters, depending on the type of technology used.

I don't quite follow. Does the 911 operator have a special way to get your phone to perform triangulation on cell towers and send the resulting coordinates?</comment>


A simple image hosting site written in Haskell - <AUTHOR> http://bitbucket.org/ostochast/imgcons

<comment><USER2> The next language on my "Languages to learn" list is Haskell. I'm a big Clojure & Lisp fan, and Haskell seems like it would be an amazing study in contrast with the Lisp family I'm thrilled by.

However, this makes me cringe a little:

      +++ thediv ! [identifier "gallery"]
          << (thediv ! [theclass "screenshots"]
          << ulist <<
             (li << anchor ! [href ("view.fcgi?file=" ++ first)]

As far as I know, Haskell doesn't a code-as-data philosophy. (Right?) I think that there are a lot of pure Lisp HTML alternatives, and they work because Lisp is at the same time declarative and functional. S-expressions are concise and almost look like CSS. But Haskell code doesn't seem like such a great replacement. There's too much syntax, and, in my opinion, that gets in the way of understanding-at-a-glance.

Is this style common in Haskell Web development?

<comment><USER3>
      > Is this style common in Haskell Web development?

Not at all; the author is quite obviously inexperienced in using Haskell, and is using some weird old crufty library to create HTML.

The two most common template libraries are Heist[1] and Hamlet[2]. Heist uses Rails/Django-style external template files, while Hamlet embeds markup directly into the Haskell source code using quasiquotation.

[1] <http://snapframework.com/docs/tutorials/heist>

[2] <http://www.yesodweb.com/book/templates>

Even if one wanted to represent markup as Haskell types, there's no reason it needs to be as ugly as in that example. A really basic version might be:

      div [("id", "gallery")] $ do
        div [("class", "screenshots")] mzero
        ul [] $ do
          li [] $ do
            a [("href", "view.fcgi?file=" ++ first)] mzero

<comment><USER4> Anything like HAML for Haskell? I looked at the tutorials you linked to, and Heist and Hamlet looks like very poor substitutes. Hamlet seems inspired by HAML, but they seemed to have missed the point.

Here's the equivalent HAML:

        #gallery
          .screenshots
          ul
            li
              a{"href" => "view.fcgi?file=#{first}"}

HAML is super clean, and there's essentially no redundant syntax; in other words, if you type something, it's because it's necessary. There's no fat.

<comment><USER5> actually the attribute syntax leaves a lot to be desired in terms of redundancy. First you have to quote the attributes (or put a : in front of them?), yuck. you need to use the => operator which is two times too big, and whats with the unnecessary outer braces?

non-idiomatic hamlet isn't far from that haml snippet (note you would never put bits of urls in the template as strings, instead you provide a url rendering function which converts the @{} bits into url strings):

        <#gallery
          <.screenshots
          <ul
            <li
              <a href=@{View first}

idiomatic hamlet is much more focused on being a cleaner html for designers than it is trying to be a haml clone.

<comment><USER4> > actually the attribute syntax leaves a lot to be desired in terms of > redundancy.

I agree. Considering that you can assign 'id' and 'class' through the main syntax, I don't think it's too bad. Attribute values are Ruby strings, so the quotes work for me. With Ruby 1.9 you should, in theory, be able to use the new improved hash syntax:

        a{href: "/ding"}

...but I don't know if HAML has implemented it.

Edit: HAML actually supports a different, simpler syntax for attributes:

        %a(href="/ding")

> idiomatic hamlet is much more focused on being a cleaner html for designers > than it is trying to be a haml clone.

I know that some companies work that way. We let our designers learn HAML (and SASS) instead. That way they can contribute to the projects as first-class citizens. HAML is simple enough that a designer can even work with conditionals and loops.

</comment></comment></comment></comment></comment><comment><USER6> myfromJust has a too specific type, and really should just be inlined as:

      fromMaybe ""

checkInputFile encodes a no-result as a "no" string. This is a very un- Haskelly thing to do (Use a Maybe String, instead).

Use of C's if syntax is a bit weird, too. No need for these extra parens.

getRandomName weirdly uses getStdGen/newStdGen instead of just making a random generator directly.

basename is (incorrectly) duplicating standard library behavior.

saveFile uses fromJust, will crash at runtime.</comment>


37signals Earns Millions Each Year. Its CEO's Model? His Cleaning Lady - <AUTHOR> http://www.fastcompany.com/3000852/37signals-earns-millions-each-year-its-ceo%E2%80%99s-model-his-cleaning-lady <comment><USER2> "I won't name names. I used to name names. But I think all you have to do is read TechCrunch. Look at what the top stories are, and they're all about raising money, how many employees they have, and these are metrics that don't matter. What matters is: Are you profitable? Are you building something great? Are you taking care of your people? Are you treating your customers well? In the coverage of our industry as a whole, you'll rarely see stories about treating customers well, about people building a sustainable business. TechCrunch to me is the great place to look to see the sickness in our industry right now."

I love this quote. It reflects my sentiments to a T.

<comment><USER3> The reason the press writes about funding rather than revenues is not some kind of conspiracy to focus on the wrong things, but simply because reporters know about funding rounds and not about revenues.

It's clear that the press would write about revenues if they could, because they write a lot about the revenues of public companies. They're able to do that because public companies have to disclose their revenues.

Private companies never publish their revenues. Including 37signals. So if Jason really believes this is a terrible problem and wants to set things on the right course, he should set an example and start publishing 37signals' revenue numbers.

<comment><USER4> This is unusually straw-mannish of you pg.

From the article: "What matters is: Are you profitable? Are you building something great? Are you taking care of your people? Are you treating your customers well?"

All of those questions can be answered without needing access to a companies ledger. Jason answers those questions himself in the article.

I think his point was that stories about those questions don't get as much readership per unit of reporter effort, hence they aren't being written.

Posting 37signals' revenue numbers would have zero impact on that.

<comment><USER3> Anyone who proposes that the discussion should focus on profitability rather than funding rounds is presumably not proposing that we simply talk about it as one bit of information: profitable or not. That would make pretty short articles. It also wouldn't be very interesting; there are hundreds of plumbers and barbers and cafes within a few miles of me who are profitable.

And plenty of these plumbers and barbers and cafes probably do great work and treat their employees well. Do you really want to read articles about all of them? I don't. What makes a company newsworthy (unless it's as a case study) is its size, or potential size.

<comment><USER4> It sounds like you might not be familiar with the author Jason referred to right before his critique of the current focus on size: Ricardo Semler.

In his books he develops a very humanistic look at the role of businesses in our lives. As entrepreneurs, employees, and as customers. I won't be able to do the ideas justice here, but I will try:

A business obsessed with revenue and growth is like a person obsessed with how many breaths they have taken, or how much food is in their pantry -- these are means to an end, not ends in themselves. Food is required for life but it's not the purpose of living. Businesses as conceived by Semler and Fried aren't designed to maximize revenue so much as make the world a better place (#include your essay about google being almost a nonprofit).

It may be that stories of plumbers, barbers, and cafes wouldn't be interesting to you. I like to hear about people living enjoyable lives, delighting their customers, and making their corner of the universe a better place. It's a lot more psychically healthy than reading about people trying to gain the most while providing the least (the tech crunch articles Jason refers to)

So many people seem obsessed with getting a large quantity of money, and only then trying their hand at building a fulfilling life. I have always thought of Semler as running things in reverse: how do we design a seven day weekend that is cash positive?

(Semler's book, The Seven Day Weekend, is highly recommended to anyone who wants to hear more)

<comment><USER3> I understand quite well the idea of company that isn't focused simply on revenue growth. I've been running one for the past 7 years. And I'm interested in reading about others. But articles of that type are case studies, not news, which is why I explicitly distinguished between them.

<comment><USER4> first "What makes a company newsworthy (unless it's as a case study) is its size, or potential size."

then "But articles of that type are case studies, not news"

first "Do you really want to read articles about all of them? I don't."

then "I've been running one for the past 7 years. And I'm interested in reading about others."

I think what you want is for Jason to have said "I wish the technical community were focused on case studies of awesome companies rather than news stories about funding and growth." Which I think he would agree with, and would remove your points.

(Not that case study vs news is a real dichotomy -- what's stopping someone from calling news about a round of funding a "case study about getting funding"? Why can't there be news stories about how awesome the customer experience at X has gotten?)

<comment><USER5> News is, by definition, about current events. Case studies are about past events. So, in general, they can't be the same thing (even if, of course, the publication of an interesting case study can be interesting - and current - news).

"Why can't there be news stories about how awesome the customer experience at X has gotten?": If you really want to know, I advise you to read "Storytelling: Branding in practice".

<comment><USER6> _News is, by definition, about current events. Case studies are about past events._

You are logically incorrect. Well, by your own logic. How can you publish news about a _current_ event? To be written as _news_ it has to be happened in the past.

<comment><USER5> It all depends how you define "current".

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER7> > Actually, my cleaning lady, for example, she's great.

There's something a bit... I don't know quite how to put it. Let's just say that I bet she'd willingly trade places with him, cash out, and go enjoy herself instead of _cleaning up after other people_ day in and day out. ( _Edit_ to change the wording just a bit)

> The other interesting thing about restaurants is you could have a dozen > Italian restaurants in the city and they can all be successful. It's not > like in the tech world, where everyone wants to beat each other up, and > there's one winner.

That's because the economics of a highly local business are very different from one that can have customers all over the world.

Also: restaurants fail all the time - it's a stressful business to be in, and not generally the sort of relaxed, easy-going picture he makes it sound like. You can bet that _most_ restaurants do not have the option of doing 4 days a week, unless they have big margins the other days, which means they probably have something very special about them.

I admire and respect those guys, but there's something too glib about some of their communications that turns my cynic sense on.

 _Edit_ : furthermore... live and let live, no? I'm more interested in a 37 signals style business myself, but let the people in Silicon Valley do their thing even if it doesn't float your boat. It'll all work out. As one example, I think the world is better off with PG running Y Combinator instead of having slogged on with Viaweb.

<comment><USER8> > There's something a bit... I don't know quite how to put it. Let's just say > that I bet she'd willingly trade places with him, cash out, and go enjoy > herself instead of cleaning up after other people day in and day out.

See, the typical problem with claims like Fried made is that they're idealizing lives they don't know much about. But Fried didn't walk into that trap.

He doesn't remark on her home life. He doesn't remark on her happiness. He doesn't remark on her hopes and dreams. He says she's "respectful, nice, and awesome". His point is that her business is sustainable, adds value, and does good. He doesn't say, "I wish I was a cleaning lady." All he says is that her _business model_ is a good business model, and he's inspired by it.

<comment><USER9> "All he says is that her business model is a good business model, and he's inspired by it."

He says:

"She's been doing it some twenty-odd years, and that's just an incredible success story. To me that's far more interesting"

I have absolutely no idea why he feels that someone who has cleaned homes for 20 years is an incredible success story. It's almost as patronizing as it is naive.

What would be at least somewhat interesting is if she figured out a way to get paid 2x the hourly rate and/or get houses cleaned in 1/2 the time. Her station in life is to be happy cleaning homes. So she's a happy person. Great. What I'm not hearing is that he's living in her neighborhood or having her over for dinner etc. I hate this "I'm just a simple person let me go visit an ashram and live in nature" crap.

<comment><USER10> > I have absolutely no idea why he feels that someone who has cleaned homes > for 20 years is an incredible success story. It's almost as patronizing as > it is naive.

Project much?

> What would be at least somewhat interesting is if she figured out a way to > get paid 2x the hourly rate and/or get houses cleaned in 1/2 the time.

How do you know that she hasn't?

He says that she's happy. He doesn't know much about how it makes happy or how it has developed. You think that you do and you think that she's doing it wrong....

<comment><USER7> I don't really think we can get anywhere with speculation: he might see her happy because people are pretty good at putting on a mask in professional situations. Or maybe she just really is happy.

However, in the aggregate, I'd be willing to bet on most cleaning people preferring the income, and freedom that 37 signals have. With that kind of money, you have a lot of options that someone making cleaning wages just doesn't have.

<comment><USER9> "Or maybe she just really is happy."

Not speaking about this person (who neither of us know) but strictly about people in general by using an example of cows in a field.

A cow in a field can stand there all day and just graze on grass. Our cat can sit there all day and just do nothing. Could you do that? All day, every day?

People with brains are more complex. In general if she is happy doing cleaning work we can presume she doesn't have the same brain or needs, of, say someone with higher intelligence. People are different in what their needs are.

"he might see her happy because people are pretty good at putting on a mask in professional situations."

True.

<comment><USER8> > People with brains are more complex. In general if she is happy doing > cleaning work we can presume she doesn't have the same brain or needs, of, > say someone with higher intelligence. People are different in what their > needs are.

That's almost as patronizing as it is naive.

<comment><USER9> Well ok then what are you basing your thoughts on? I'm basing mine on a lifetime of meeting thousands of people from all walks of life and the story as presented by the OP.

I stand behind what I have said.

Would you be happy doing the simple tasks of cleaning houses everyday? Or do you prefer something more challenging like what you are doing (software development it appears). Or at least managing others doing the drudge work?

From the OP it doesn't appear that we are talking about someone making their way to something greater by cleaning houses but somebody who's station in life is cleaning houses.

Regardless of whether she was forced to clean houses because, for example, she was an immigrant or needed to feed a family she could have, with greater intelligence, risen to employ others to do the work for her at the very least. (My cleaning lady, from Brazil, has about 5 people working for her and I've seen examples of this with all sorts of people who start doing a task and rise to employ at least a few people to help out).

<comment><USER8> > From the OP it doesn't appear that we are talking about someone making their > way to something greater by cleaning houses but somebody who's station in > life is cleaning houses.

Why do you have this mindless obsession with ranking things in some arbitrary manner and then requiring that people climb your ladder?

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> "To me that's far more interesting than a tech company that's hiring a bunch of people, just got their fourth round of financing for 12 million dollars, and they're still losing money. That's what everyone talks about as being exciting, but I think that's an absolutely disgusting scenario when it comes to business."

Hilarious given that Jason Fried was on the board of directors of Groupon (his comments on this "disgusting scenario" here: <http://news.ycombinator.com/item?id=2617160>).

<comment><USER12> Do as I say, not as I do.

Ego has this astonishing effect of completely bending[1] the space-time- reality fabric of the universe.

1\. Or ripping it apart, depending on how well off you've become and how many sports cars you've bought.

<comment><USER13> 37signals does not reap millions of dollars of VC investment to staff up huge numbers of people while running their business in the red. But a reader of your comment would be left to wonder whether they do, because you wrote it carelessly.

</comment></comment></comment><comment><USER14> I've read a lot of Jason's stuff and he has a lot of insightful things to say about running a successful small technology business. He probably understands it about as well as anyone on earth.

The part of the rhetoric I'm not as fond of is this false dichotomy that he often raises of "either small business is right or big-startups are right". Both can be right--they just have different goals. And there are strong relationships and dependencies between each type that make it particularly disingenuous to slander each other.

It reminds me a bit of the "you didn't build that" hubbub happening in American politics lately. There seems to be a "I did this" hubris, as you create high-quality web services catering to small teams.

Let's get real: you are building web services consumed by a browser (Netscape) on someone's Macbook Pro (Apple); your data found its way there over some serious switching infrastructure (Cisco); you stock your offices with goods from the best online retailers--oh yeah, and they host a bunch of your bulk data too (Amazon); your site is indexed by the major search engines and you expose your brand to potential customers via sophisticated advertising networks (Google); your keep your friends and fans in the loop on what your business is up to via massive social networks (Twitter).

Many of these companies were ambitious, they had low probabilities of success, they had much higher capital needs and a tighter window to hit the market.. than a slightly better product management system for small teams. But these VC-powered longshots--the lucky few winners--now form the beating heart of our industry. They provide good jobs to hundreds of thousands of people. And.. would 37 signals even exist without them?

Jason wants to make great money and have a good business and take Friday off. That is fine, that is seriously great. I'm not sure why the tone is so defensive, b/c, really, who's attacking that? That's a damn good way to go.

But some people want to "make a dent in the world". They need some money to do that! And they might fail! And rich guys are willing to gamble on the outcome! Who cares? It's audacious fucking fun to try to change the world, and sometimes it works. Afterwards, we can take a shower and feel clean and wholesome about the birth of 38 signals.

<comment><USER15> _I'm not sure why the tone is so defensive, b/c, really, who's attacking that?_

My guess it is in response to some quarters not respecting "lifestyle business" startups. There ARE (or were) people attacking that.

</comment></comment><comment><USER16> When my Dad decided to start his own business his goal was to work for himself and make enough money to live comfortably. He's achieved that, he could push and try stretch it to the next level and make even more money and become more successful but he realised he's happy with the money he's got and not having to deal with anything extra.

When anyone starts a business you can shoot for living a nice comfortable life (and lets be honest if you're running a business making millions per year, you've nailed it), or you can push and push to become _the_ business. Both have chance of failure, both require devotion. I'd take the same route as 37signals. Having enough money to live comfortably and enjoy life sound much better than the constant grind to get to the next boss level.

</comment><comment><USER17> Why does this say: 'Its CEO's Model' when it should be 'Its CEO's Role Model'? Seems like the writer is baiting for clicks. It's a little misleading to me.

<comment><USER18> You can use "model" to mean an example to follow. For example, "37 signals was the model for my software business" or "she was a model employee."

</comment></comment><comment><USER19> Wow. It almost sounds like he runs his tech startup like a "real" company. Imagine that. ;-)

<comment><USER20> I think that 37signals has been in business since the late 90s, so I'm not sure I'd qualify a business that's been in business for 13+ years as a startup.

<comment><USER21> I like Steve Blank's definition of a Startup -- it's an enterprise set up to search for a profitable business model. 37signals is long past that.

<comment><USER22> It was never that to begin with. Fried wasn't trying to create an enterprise. He just wanted to own a small business. That's what he has.

<comment><USER8> An enterprise is not necessarily enterprisey.

Some enterprises are fictional starships.

</comment></comment></comment></comment></comment><comment><USER23> So nice there are more and more companies which understand that keeping their employees in comfort is so essential for the long-term success. Giving more freedom and spare time, makes people more productive during work time. No stress, no pressure = more job done. I also admire companies, that have understood that a 6-hour working day, would be more productive than the 8-hour, since time for distraction is reduced to significantly.

</comment><comment><USER24> I am in line with the thought process. Also, "There's a great quote by a guy named Ricardo Semler, author of the book Maverick. He said that only two things grow for the sake of growth: businesses and tumors." funny and apt. I am striving to build a sustainable business, without going to VCs, providing tangible benefits to my customers, and without huge ambitions to become a billion dollar company (or even high millions)

</comment><comment><USER25> Profits are without question important. Bootstrapping I'm not so sure about. There are many profitable companies today that were never bootstrapped, like Apple and Google and tons of others. I'd be concerned that bootstrapping in this day and age might limit how big a company you actually do become, esp since you are competing against entrenched players.

</comment><comment><USER26> I can totally subscribe what Jason said here. One time someone said that I wasn't "startup" material because I wasn't open to work 80 hours per week. They said that like it was a bad thing :), fast forward a few years and their company is now dead and I'm now doing my own thing steady and profitable.

</comment><comment><USER27> lifestyle businesses are great. but to make real money you need to scale -- I think this stuff is okay for the size of business they are aiming for but if you want to build something that can be acquired for 500m+ or IPO then you need to do some more strategic thinking.

<comment><USER28> Several million a year isn't 'real' money?

</comment></comment><comment><USER29> Absolutely amazing and a rare voice of reason in our industry. If only more companies would adopt this kind of mentality of building sustainable businesses.

</comment><comment><USER30> This guy could have built the next Salesforce / google. but he eschewed hiring a sales team. He didn't want that, but still. Failing to achieve your true potential is not something to be bragging about all over the web.

<comment><USER31> The company brings in several millions dollars a year [1]. They have one of the nicest offices in Chicago [2]. One of the partners had a super car commissioned a few years ago which on a technical level is more sophisticated than the machinery available to your average military [3]. So how aren't they "living up to their true potential"?

[1] From the article.

[2] [http://37signals.com/svn/posts/2593-official-pictures-of- our...](http://37signals.com/svn/posts/2593-official-pictures-of-our-new- office)

[3] <http://en.wikipedia.org/wiki/Pagani_Zonda#HH>

<comment><USER30> Their true potential was to be a 50 billion dollar public company, in my opinion. I could be wrong. There are more important things in life than money, of course. But I felt they chose to leave too many chips on the table.

</comment></comment></comment><comment><USER32> love the term "we are reaching Peak Talent". It think we are already there

</comment><comment><USER33> Awesome

</comment><comment><USER34> The long hours mostly has to do with the startup community. They get funding and VC wants to make a profit within a year and get out, at the expense of any long-term goals of the company.

The result is 70 or 80 hour work weeks and burnout. The VC don't care because they will be done in the short-term anyway.

It's the reason why I refuse to work for startups.

<comment><USER22> This company is not a startup; it's merely a successful small business.

 _the startup community ... get funding and VC wants to make a profit within a year and get out, at the expense of any long-term goals_

This is not unheard of, but certainly not the norm. Successful VC firms invest of big growth, but over a longer term. Look at the huge VC-backed successes in SV (obvious examples like Google, LinkedIn) and you'll see anything but a build-it-and-flip-it mentality.

<comment><USER35> "merely a successful small business."

Really? That small business is financially more successful than most crazy ass VC backed startups with the latest photo sharing solution will ever be.

</rant>

<comment><USER36> In fairness, that still doesn't make it a startup.

<comment><USER37> Pray tell, what would make it a startup?

<comment><USER38> I know this'll be a controversial stance but IMHO.. _needing_ to work 5 or 6 days a week to prove the business case, make the business stick, and to scale the business to a point where you have multiple employees and processes that _allow_ you to only work 4 day weeks if you want.

Of course, some businesses can run on fewer hours from the start, but many require a lot of sweat and long hours to get the engine running.</comment></comment></comment></comment></comment></comment>


EnterpriseDB wraps PostgreSQL into an enterprise-grade suite to challenge Oracle - <AUTHOR> http://www.v3.co.uk/v3-uk/news/2458970/enterprisedb-wraps-postgresql-into-an-enterprise-grade-suite-to-challenge-oracle <comment><USER2> How am I supposed to figure out how to break the chains of my oppressors when I need to disable my adblock to read the page? :)

</comment><comment><USER3> This shows an anti-ad blocker message, even if you don't have an ad blocker.</comment>


Newly Facebook-owned WhatsApp lost roughly $200M in 2 years - <AUTHOR> http://arstechnica.com/business/2014/10/newly-facebook-owned-whatsapp-lost-roughly-200m-in-two-years/ <comment><USER2> "...we focused on business sustainability and revenue..."

I don't know how he could say that with a straight face, if they did in fact lose around $200 million in 2 years.

<comment><USER3> He is a billionaire.

<comment><USER2> And your point?</comment></comment></comment>


Ask HN: Can the NSA influence electronic voting? - <AUTHOR>

With the revelations about backdoors in encryption algorithms can the NSA change or modify votes by electronic voting systems in the US or around the world? <comment><USER2> Of course they can. All they need to do is intercept computer deliveries to the voting machine manufacturers.

Do they? Even today, I still hope not. Still, if we've thought of it, they're way ahead of us. They may have even put mechanisms in place. Proof of concept.

Any NSA employees care to comment?

</comment><comment><USER3> You don't even need crypto knowledge to do that - most e-voting systems are susceptible to far easier attacks.

<comment><USER4> Like Diebold posting photos of the master key on their website? [1]

[1] [http://www.bradblog.com/?p=4066#more-4066](http://www.bradblog.com/?p=4066#more-4066)

<comment><USER3> ROTFL. Sh..t, that is just dead stupid!

</comment></comment></comment><comment><USER5> Of course they technically can. Most voting systems have major security flaws.

</comment><comment><USER6> Quite easily, too, I'm sure.</comment>


How much water do you drink in a day? - <AUTHOR> If you drink anything besides water, please note. <comment><USER2> I try to drink ~2L every day. I do this because I was Coca Cola addict and 2L bootleg was mine measure.

</comment><comment><USER3> Usually 4-6l / day water

1 or 2 12oz cold brew coffee with coconut milk.

0.5-1l other soft drinks (isotonic or juice)

Also drink 1 or 2 large protein fruit smoothies daily depending on how much I exercise

</comment><comment><USER4> Whenever I'm thirsty I'll drink a glass or two, till it quench my thirst. Nothing more. So it varies day by day, season by season

</comment><comment><USER5> 16 oz a day only sadly

<comment><USER6> I would imagine you're getting fluids from something else too otherwise that seems extremely low.

I know the science is all over but a good general census I've had with my doctors so far is "stick to half your body weight in ounces as a minimum". So for a 150lbs 75oz or close to 5x what you're drinking.

</comment></comment><comment><USER7> At least 2L, often more. Plus about 5 cups coffee.

</comment><comment><USER8> as much as Coca-Cola #hydration marketing tells me to

/s

</comment><comment><USER9> 3-6L depending on physical exertion.

</comment><comment><USER10> 1 cup of coffee, 80-100oz

</comment><comment><USER11> 100oz or 3L most days.

</comment><comment><USER12> 2-3L</comment>


Flixel: flash game framework - <AUTHOR> http://flixel.org/

<comment><USER2> I've poked around with this. It's becoming a popular choice for Flash games, although I'm not using it myself. It's not sophisticated or even really that efficient(one object instance per tile? per particle? You can make AS3 go much faster now with Bytearray or Vector based solutions), but it's easy to start with, gives you some basic graphical features, and perhaps most importantly, is a working solution for escaping the Adobe-centric toolchain.

<comment><USER3> one instance per particle seems inefficient but most computers can handle it, especially if they don't collide, and it gives you a ton of fun flexibility (using an emitter to spawn a flock of enemies, for example, or emitting particles that then emit more particles, etc).

Tiles however are NOT a collection of unique instances, they are blitted relatively efficiently. They do use a single instance of an empty collider to do the actual collision check, but otherwise they're pretty fast.

BUT that's not to say that flixel is not a work-in-progress with a fair number of broken or unoptimized elements :) I have a list of...oh I guess i'm down to about 20 things that have to be fixed or revised before the next big public whatever!

<comment><USER4> you mentioned that the iphone canabalt was done with a port/version/something of flixel, too? can you give any details about that?

<comment><USER3> can't yet, but I will have good news about that stuff soon i hope!

<comment><USER5> An AS3 to objective-c framework? If that's the case, I love to talk to you a little bit more. LeftRight Studios, based in Pittsburgh, is my startup and we develop mobile games.

<comment><USER6> I believe the latest version of flash builder is supposed to provide the ability to compile from flash -> iphone app directly.

</comment></comment></comment></comment></comment></comment><comment><USER7> For those of you who aren't aware, that Canabalt game that was posted on HN earlier was written with Flixel.

</comment><comment><USER8> How is Flixel compared to Push Button Engine and Always 3D? <http://pushbuttonengine.com/> <http://away3d.com/> (used in the Facebook game Cafe World)

I'm looking forward to use such a framework/engine in my upcoming multi-player Flash game. I'd be grateful if anyone here can offer me some advice/links about this.

(My impression is that Push Button Engine is more mature and probably better supported because there is a company behind it. Is that really the case?)

<comment><USER8> A list of Object-oriented Flash Game Framework:

[http://www.idevgames.com/news/object-oriented-flash-game- fra...](http://www.idevgames.com/news/object-oriented-flash-game-framework)

</comment></comment><comment><USER9> Does Flixel (what's in a name) somehow depend on the grapics being pixelated, or does it also handle vector graphics? I had a quick look through the documentation but didn't really find anything about this?

<comment><USER10> You can still use anything native to Flash (ie vectors). Flixel has added support for bitmaps -- fast blitting plus old school visual effects (are typically a great pain to create in Flash)

</comment></comment><comment><USER11> I'm working on some casual card/board games, so unfortunately I can't really use Flixel since it wasn't designed for that (primarily vector images, uses events rather than game loop to keep CPU low). But Flixel looks great, and I wish there was a library that could do what Flixel does, except geared for that use case. If only Canvas was up to the task of handling vector images and animations as well as Flash does.

<comment><USER12> Does an event loop really keep the CPU use down in Flash? In C/C++ I've always found that the event polling overhead means that it's ever so slightly less efficient than a game loop, but not so much so that it matters. I thought it was purely a matter of taste?

<comment><USER11> When Flash isn't rendering to the screen (i.e. via constant blitting), it hardly consumes any CPU at all. In my experience, blitting the screen 30fps causes a lot of CPU load even when you aren't doing anything.

<comment><USER12> You don't want to render stuff you don't have to regardless of the method you use.

</comment></comment></comment></comment><comment><USER13> Isn't there something better than flash out there? Flash sucks for linux.

<comment><USER11> Not if you want it to run in a browser.

<comment><USER14> I guess Canvas is out of the question, if you want folks on IE to be able to use it.

<comment><USER11> There are canvas emulators that make Canvas more or less functional in IE, albeit with a speed hit. But even then, Canvas isn't designed to do the same things Flash excels at: vector-based animation.

<comment><USER14> True - for that, you could use scripted SVG.</comment></comment></comment></comment></comment>


If I Made Another Monkey Island... - <AUTHOR> http://grumpygamer.com/5777333 <comment><USER2> I supported Double Fine Adventure on Kickstarter and lot of the last points of the OP refer to how Tim Schafer is managing it.

But, in this case, if Ron Gilbert is making a proof of concept with this post, a MVP to check if Monkey Island 3a can be crowdfunded - or even if it is just a critique of Double Fine Adventure campaign, I am on Tim Schafer's side here.

Crowdfunding is not about "give me the money and trust me". The crowd is not a substitute for publisher's money or even a maecenas. He wants to win the lotto and create a game, not receive the support of the crowd (and all that come from it).

I love the documentary updates, the forums, to understand what happens behind the scenes. This is not about keeping the hype up, this is about sharing the world of creating games with the people that supported it.

<comment><USER3> I didn't read that much of a value judgement into it. It seems more like he's just managing expectations by explaining that he wouldn't do it that way.

<comment><USER2> I tried to read it again, but I see a lot of value judgement into it. One possibility is that it maybe not a judgement of how Tim is managing it, but a critique to the Kickstarter model as a whole. Either way, I don't agree with him.

If a Monkey Island is going to be created in this manner I wouldn´t support it as a crowdfunding project. But I would certainly buy the game after it is released! And pay good cash too!

I don't think Ron is doing something bad by stating those things, I just think he doesn't get crowdfunding the same way I do.

</comment></comment></comment><comment><USER4> I have no less respect for Ron than I did back in the 90s, but I think that sometimes the veterans lose sight of what made their old games great (and this of course, is just my opinion). He wants keep the retro aesthetic, which is good, but then wants to include things like DOF and glows...which can technically be done with a palette, but I don't think this is what he is getting at, and could potentially destroy the rigid palettization that makes pixel art what it is. He wants to use speech instead of text, which is one of the things that I think ruined Monkey Island 3. There are many ways to improve on the old formula while keeping the superficial aspects that fuel our nostalgia - it seems like most remakes these days jump on the very generic looking engines like Unity (yes you can tweak Unity to look any way, but if you use the default shaders, cameras, etc it will look like any other game).

<comment><USER5> > _He wants to use speech instead of text_

While the no-talkie and partial talkie DotT are great, full-talkie DotT is absolutely awesome.

> _He wants keep the retro aesthetic, which is good, but then wants to include > things like DOF and glows...which can technically be done with a palette, > but I don't think this is what he is getting at, and could potentially > destroy the rigid palettization that makes pixel art what it is_

I'm not sure pixel art and retro looks is the solution. There was something unique yet common to all those great games that made them memorable enough that we long for them even today.

As an example, while I don't quite like the whacky universe and style that evolved since Rayman 2, Rayman Origins engine and graphics were stunning, and captures part of that essence. Sadly the gameplay is largely forgettable, almost a rhythm-based party game — I long for something like the first Rayman gameplay — but the graphics part is a step in the right direction.

I feel like Orioto [0-3](browse his tumblr blog for more) tries to captures this essence, and I long for games looking like his work. Given the incredible horsepower we have at hand as of yet, I just can't believe it's not possible.

[0]: [http://www.redbubble.com/people/orioto/works/8245345-through...](http://www.redbubble.com/people/orioto/works/8245345-through- the-night)

[1]: [http://www.redbubble.com/people/orioto/works/8290902-city- bo...](http://www.redbubble.com/people/orioto/works/8290902-city- borders?p=photographic-print)

[2]: <http://orioto.tumblr.com/post/15721511369/1200p-1080p-print>

[3]: <http://orioto.tumblr.com/post/15627728854/1200p-1080p-print>

<comment><USER6> The voice version of DotT is indeed awesome. My favourite example of voice acting in adventure game that you _don't_ want to click through. Too many games rely on this "ask 23 inquiring questions picked from a list" in a way that becomes really boring, with swathes of dialogue to get through.

(Even worse, in my opinion, are those that require that you delve into a certain part of the dialogue tree in order to get an item or otherwise open up something in the game, which means you _have_ to go through the entire dialogue tree even some of the questions seem uninteresting and you don't want to go through with it. DotT did have a few of those, if I remember correctly.)

I agree about the retro pixel art. A retro style just to capture the essence of a golden age is, in my opinion, philosophically harmful; it quickly becomes annoying. There are some games that sort of redeem themselves: "Superbrothers: Sword + Sorcery", which uses ultra-low-rez graphics blown up to full size combined with fluid animation, is pretty good, although I wound the glib, self-referential tone of the game to be a bit obnoxious. Then there are Wadjet Eye games (like Gemini Rue and Primordia), which use some kind of SCUMM-like, really retro engine, and graphics that are something like 320x200, again blown up to full size, but without any modern animation wizardry. The games are so good that it works, but you do get the sense that the time of this kind of game is, and should be, over.

While I loved the zany style of DotT, I never liked the exaggerated "French" drawing style of Monkey Island 3 [1]. Monkey Island 4 was just awful, and the new Monkey Island episodes are downright creepy in its empty-eyed-doll animated characters, and the "enhanced" remake again does a kind of Disney- style makeover that doesn't quite fit. (Among other things the animation has gone from wonderfully zany to just plain. Watch how they animate talking people [3], it's hilarious.) (Of course, part of the problem with MI3-4 and later was that they turned Guybrush from a likeable, sort of innocent hero into an annoying, clueless, condescending moron somewhere between Chris O'Donnell and Chris Elliot. I don't know if it was the voice, or the hair, or whatever, probably a combination of them. It didn't work for me. It wasn't Guybrush.)

A more recent game that creates a cozy and charming, yet contemporary and technologically up-to-date style is Machinarium. Crisp high-rez graphics, charming animation, fun story, pretty much perfect in every way. _That's_ the way to go, I think.

[1] [http://1.bp.blogspot.com/-O8op_6zSEYQ/UBDrWkuhwiI/AAAAAAAAAG...](http://1.bp.blogspot.com/-O8op_6zSEYQ/UBDrWkuhwiI/AAAAAAAAAGk/Qmk0KIAHHbQ/s1600/CurseofMonkeyIsland_001.jpg)

[2] [http://wiimedia.ign.com/wii/image/article/100/1008507/tales-...](http://wiimedia.ign.com/wii/image/article/100/1008507/tales- of-monkey-island-episode-1-20090728032640858-000.jpg)

[3] <http://www.youtube.com/watch?v=b9eJHotWoDQ>

<comment><USER7> The voice acting in The Dig was really good. It also didn't have the verbs. The graphics were great as well but the plot was lacking...

<comment><USER6> Yes. Actually, I really liked The Dig's plot [spoilers ahead!] until they brought forth the magical alien ghosts. It was basically Rendezvous with Rama reworked with some subpar new-age nonsense.

Another excellent voice acting game: Tim Schafer's Full Throttle.

</comment></comment></comment></comment></comment><comment><USER8> "True, I wouldn't raise huge sums of money or break any records . . ."

Haha.

Come on.

I'd wager that MI 3 would far and away be the #1 all time Kickstarter fund raise, starting with my money:

"After its release on Steam, the Special Edition remake topped the sales charts for the week ending July 18. On July 20th, the Xbox 360 version had already sold over 38,000 copies" (1)

I bought the SE on iPad the day it was released, and still haven't played it - that is how strong the nostalgia is with me . . .

(1)[http://www.miwiki.net/The_Secret_of_Monkey_Island:_Special_E...](http://www.miwiki.net/The_Secret_of_Monkey_Island:_Special_Edition)

</comment><comment><USER9> I may be an odd ball here, but I cheated at Monkey Island 1 and 2. I don't like to be frustrated with a puzzle that relies on either randomly choosing inventory items or seeing some pixels that look like almost every other set of pixels on the screen and trying to pick them up.

For me, what made Monkey Island great was that it was a pretty quirky comedy. I wanted to see what Guybrush would say next.

Further, it shocks me at how bad the graphics are at some of these games after looking at them again after decades. It occurs to me that what I remember it looking like is a heck of a lot better than what it actually looked like. So I'd rather the game not look like the pixely original. I'd rather have it look like I remember.

<comment><USER10> I think Machinarium is a good example of how you can preserve the fun frustration of adventure games without pushing people to cheat. They would allow you to play a mini-game in order to reveal some extra hints which would push you in the right direction enough to figure out the rest on your own.

In Monkey Island I would sometimes get annoyed and google for what to do out of angry frustration. It was easy for me to throw my hands up and say "I don't give a shit any more, time to move on!" Lots of times the solutions made zero sense to me. In Machinarium I still got a sense of frustration and puzzlement, but I would try to forego the hints out of pride for as long as I could which made for a much more enjoyable experience.

<comment><USER11> You mean Altavista?

</comment></comment></comment><comment><USER12> I hope no one minds if I hijack to ask:

What are some really good MODERN adventure games, along the lines of MI or the Space Quests?

Besides the Two Guys' Kickstarter campaign, I mean...

<comment><USER13> I consider "L.A. Noire" the modern equivalent of an adventure game. Much of your time is spent walking around crime scenes picking up everything that isn't nailed down. The rest of the time consists of solving the game's "puzzles", which are all in the form of conversations, and sometimes involve using objects (evidence) to solve, while otherwise requiring careful observation. The combat and chase sequences are actually very incidental, with the foot chases in particular having extremely simplified controls (just hold "up" to climb a whole set of fire escape ladders and stairs) and if you screw them up enough then the game will simply let you skip them. Unlike old adventure games, there are multiple ways to solve each case, and there are no instances of "Moon Logic Puzzles".

<comment><USER14> I enjoyed LA Noire except for the conversations. Maybe there's something wrong with me, but I could never figure out the right responses when interrogating someone.

</comment></comment></comment><comment><USER15> For the people going on and on about Kickstarter and crowd funding, note point #11: _"The only way I would or could make another Monkey Island is if I owned the IP"_

This seems more like a post to get the masses exited and perhaps help him get a license for or ownership of the Monkey Island franchise.

I hope he's successful, I was a big fan of the first two games (never got to play the 3rd). I'd certainly buy whatever he produced if it inspired the same awe of the prior games.

I do like the idea of starting fresh with a new story, ala The Legend of Gorilla Mountain, or something silly like that. After all, it was the wit of the writers and the artists that really sold the game.

<comment><USER16> Isn't it actually relatively possible now for him to secure the IP rights from Disney? With LucasArts disbanded, they've made it clear they intend to license the IP to other developers.

</comment></comment><comment><USER17> Honestly after "The Cave" and "Deathspank" I'm not sure Gilbert is on my HERE TAKE MY MONEY list any more. And him saying "MI3 will be RETRO looking!" isn't making me interested; the Monkey Island games were GORGEOUS for the time, but I don't want to go wallowing in nostalgia for something made now.

<comment><USER6> Indeed, The Cave had good visuals, but extremely boring gameplay. I understand what he was going for, but it just didn't work. Way too much running back and forth to place your characters in a certain place, and all the running took way too much time.

Deathspank was mildly amusing, but got tired very fast. It was visually flimsy and felt underdeveloped overall; it wasn't a good RPG, but it wasn't a good action game either, and it was a terrible adventure game.

Admittedly neither of those games are classical point and click games. It may well be that he's just much better at designing point and clicks than at the other game genres.

</comment></comment><comment><USER18> FFS, I was secretly hoping for a tiny kickstarter link at the bottom.

<comment><USER19> Myself as well. On the other hand, I'd wait to see how the Two Guys from Andromeda [1] fare before having hopes of something like this. They appear to have missed their February delivery.

[1] [http://www.kickstarter.com/projects/spaceventure/two-guys- sp...](http://www.kickstarter.com/projects/spaceventure/two-guys-spaceventure- by-the-creators-of-space-que)

</comment></comment><comment><USER20> This is absolutely brilliant! One on one with the community, speaking from the heart to people that understand you, no marketing BS, just the good old truth. I enjoyed Monkey Island for that same reason. By this point, I think it is pretty obvious Ron is just trying to gauge the readiness of the crowd, which obviously is there and happy to pay up. The one thing that scares me - he'll probably have start buy shelling out a ton of money to buy the IP and that may turn out to be a showstopper...

</comment><comment><USER21> I love Monkey Island series and other Lucas Arts Adventure games, spent way too many hours playing them. However, I am a bit disappointed in this article because it feels a bit concierge-mvp to nostalgia (feeling the grounds before a full-on Kickstarter campaign), unfortunately without any interesting build upon what those great games offered. Well, consider this as my feedback to the mvp. Grim Fandango was a breakthrough, including its no-interface approach and clever use of camera angles to script the player. I have never seen a game script coming alive so strongly, it was like playing a movie. But Monkey Island re-pixelated? Although I played it on my iPad and switch back and forth between old-new renderings, I would expect these wonderful minds to be more inventive than nostalgic when producing something new.

</comment><comment><USER22> Reading the linked rules of adventure gaming, it is true that you can have arbitrarily hard puzzles without breaking any of them.

[spoiler for a two puzzles in Monkey Island 2 below]

The example for me is in MI2; there comes a point at which you are suspended over a boiling cauldron with a candle that is burning through the rope holding you up. If you are really clever, you will remember that earlier you got a drink that would thicken your spit (and you can't have not picked it up, since you needed it to solve a puzzle to get to this point). However, you can't spit at the candle, but you can spit at a shield on the wall, causing a ricochet to extinguish the candle.

I was stuck on this for months, finally got bored and played through the game again. The moment I got to the first time you need to spit I just slapped my self in the head.

</comment><comment><USER23> People have so much respect for the Monkey Island series from yesteryear and for Ron as well. Lets face it, if there was a Kickstarter for a retro-styled Monkey Island game built by Ron and a few of his friends, it would shatter Kickstarter records faster than Usain Bolt. Just tell me where to send the money and I'll send it all, so many would love another Monkey Island game, lets get the IP back into the hands of Ron and let him work the magic.

"True, I wouldn't raise huge sums of money or break any records . . ."

We all know that isn't true. A remake would seriously break any sales record of any game no doubt.

</comment><comment><USER24> Is SCUMM really better than Lua?

<comment><USER25> No. I've used SCUMM, was the core systems engineer on Grim, and founded Telltale. I'm very familiar with both. The spirit of SCUMM is very much alive, but SCUMM is a system, not just a language. Lua runs circles around SCUMM as a language (SCUMM didn't support >8bit numeric types till Monkey3!), but as a game development system SCUMM was really cool. There's much that Unreal, Unity, etc could learn from it, but "running circles around Lua" is (ahem) hyperbole.

<comment><USER26> That's what I thought. I wonder what the DSL used in Grim and Escape from Monkey Island looked like.

Also, the Lua version used in Grim was 2.5 (!) and a major issue was the lack of cooperative multithreading (see [http://www.grimfandango.net/?page=articles&pagenumber=2](http://www.grimfandango.net/?page=articles&pagenumber=2)).

I don't know what version was used in Escape from Monkey Isand (3.1 ?), but the current version of Lua also "runs in circles" around the Lua that was used in those games.

EDIT: more by Bret on Lua in Grim: [http://www.slideshare.net/hughreynolds/lua-patient-zero- bret...](http://www.slideshare.net/hughreynolds/lua-patient-zero-bret- mogilefsky-scea)

</comment></comment></comment><comment><USER27> Point Eleven is awesome!!

 _Eleven - The only way I would or could make another Monkey Island is if I owned the IP. I've spent too much of my life creating and making things other people own. Not only would I allow you to make Monkey Island fan games, but I would encourage it. Label them as such, respect the world and the characters and don't claim they are canon. Of course, once the lawyers get ahold of that last sentence it will be seven pages long._

edit: Thanks!

<comment><USER28> _Grr, how do I do block quotes? Because, this is terrible. Apologies to everyone seeing it_

I usually just do block quotes as italics by surrounding them in asterisks. As I did above.

</comment></comment><comment><USER29> What was wrong with Tales of Monkey Island? I thought it was good!

</comment><comment><USER30> Living up to his name, and yet I still want him to TAKE MY MONEY NOW

</comment><comment><USER31> Ron, please shut up and take my money!

</comment><comment><USER32> What business model is this? Give gamers blue balls and then wait until they inevitably ram down your door with money trucks?

<comment><USER33> You plant the seed for the violent revolt of rampaging gamers that will ultimately see Disney surrender the Monkey Island IP to restore global peace.

Then you make a game.

<comment><USER34> If he wanted to put the effort and time to make this game, why would it have to use the Monkey Island IP?

I think that any new game with same quality, the humor and mechanics, but in a different setting (or heck, just a different name!) would still be loved.

<comment><USER35> Using existing IP is a lot safer, and will generate more sales, even if otherwise the games are the same. There are a lot of people who played Monkey island in their youth and are nostalgic for it, but who don't follow the latest game news and wouldn't auto buy a game without the IP. Yes it could be successful, but that the Monkey Island name it would be more so.

See for example the success of every new Civ game compared to the success of other strategy games.</comment></comment></comment></comment>