Toml: Tom's Obvious, Minimal Language - <AUTHOR> https://github.com/toml-lang/toml <comment><USER2> Hey, Tom here (creator of TOML). Fun to see TOML on HN again! Since I first wrote a (mostly) joke proposal for TOML 5 years ago, TOML has been adopted by a number of prominent projects such as Cargo, Hugo, Pipenv, and others.

TOML is especially well suited for projects that need a simple configuration file that maps unambiguously to a hash table. There are still some weaknesses in TOML that make it non-optimal for large, complex config, but I'm hoping to address that in a later version of the spec (perhaps 2.0).

Happy to answer any questions you all have about TOML!

<comment><USER3> A killer feature of TOML compared to JSON is that it allows comments. A config file without comments and examples ain't great. I found the double square bracket syntax useful and understandable. Agreed it's not obviously .INI or perfectly elegant but it certainly works and has its use-cases. Anyways, thank you @mojombo!

<comment><USER4> I used to feel this way, and also used to be frustrated about multi-line strings in JSON. With years of experience now, though, I actually appreciate JSON omitting these features.

Config files should absolutely not have or need comments. If you need them directly in the config file, something is wrong. Applications should document their default settings in a different way, preferably in a README or generated documentation that also explains how to use environment variables to override the defaults. That sort of separate companion doc is the right place for notes about defaults or "why" certain config values exist in the file. The same is true for using JSON to store parameter files, etc. It's actually quite important to keep metadata _about_ the config / params / etc. specifically _out of_ those files, so that they are absolutely nothing but _value_ files. Information about _why_ a file contains those values belongs elsewhere, and it's an anti-pattern IMO to rely on comments _in_ the config / param file.

<comment><USER5> I have never disagreed with someone more than I do now. =)

Config absolutely needs comments. Context is everything. Comments allow me to explain to other humans why the config is the way it is. Dumping that out to a separate file is begging for it to fall out of sync when there's no comment instructing anyone to go and update the other file. Plus that's just kind of silly.

<comment><USER4> I disagree. It's an anti-pattern. For example, if you're writing an application that loads a default config file to populate parameters at run time, then the software module that loads from the default file is the correct place to document it, because the meaning of defaults is relevant to that source code, not at all to someone reading the parameter file itself. A parameter file is just some blob of stuff.

I agree context is everything, and that's _why_ it's a bad idea to embed usage info or instructions about the contents or meaning of a parameter file into that very file.

Somewhere else, something has to choose to load _that_ file, and _that_ is where the documentation belongs (in addition to readable, separate artifacts that are generated from the file).

For example, suppose you need to rewrite the parameter file from YAML to Toml, or you need to add a new layer of nesting and some post-processing logic at load time.

The meaning of these things has no context inside the parameter file itself. It only has meaning at the point some other system consumes it. Another system could consume the exact same file and choose to interpret all the parameters with different meanings in that program, regardless of what any comments says in the param file.

<comment><USER6> Maybe that makes sense for the app you are writing that is only consumed by others at your company, but if I'm installing your app from a package manager I absolutely do _not_ want to have to read the config loading source code to figure out what all the parameters do. And even if the docs are nicely described in a man page and not in config file comments, I absolutely want to be able to comment on particular parameter changes ("# had to up foo to 18 because bar was frobbing baz at to high a rate").

Even if you use configuration management it's still nice to be able to comment things in config files since they show up both in the source and in the output files, which is very helpful when debugging.

<comment><USER4> I specifically meant that comments aren't a good idea in config files when the config files are distributed to _any_ end users as part of some app or package installation.

> "And even if the docs are nicely described in a man page and not in config > file comments, I absolutely want to be able to comment on particular > parameter changes ("# had to up foo to 18 because bar was frobbing baz at to > high a rate")."

This is the exact anti-pattern that happens as a result of relying on comments in the config file. Your goal of adding that comment about why you changed foo directly in the config file is dangerous and is a very bad practice.

Instead, whatever config file it is that you are modifying (whether for third parties to consume or just for own local Postgres or video game or anything), that file should be turned into a proper package. Place it in a version control repo, and readme and usage documentation for the "why" of the parameter values, and make a tool so that if the end user wants that exact config file, they can "install" it.

For any customized overrides of single settings at run time (so specifically not changes to a config file), it should happen via the end user overriding ENV variables, not mucking around in config files and trusting ad hoc comments found inside them.

</comment></comment></comment></comment></comment></comment></comment><comment><USER7> The news here is (presumably) the announcement of version 0.5.0 a few days prior [1], which includes several clarifications, rollup changes, and enhancements that accumulated over the last 3 years.

In my opinion, one of the more useful features was the addition of Joda-style datetimes [2][3][4][5], which disambiguates between various kinds of datetime constructs aren't interchangeable yet commonly conflated. It's fair criticism that the addition of rich datetime types exceeds the language's original 'minimal' goal, but too many other languages and formats these days just punt to RFC3339 and leave no guidance or tooling on how to represent dateless times or timeless dates without introducing a ton of side-effects. This is a place where language standard libs, with few exceptions, have repeatedly dropped the ball, and similarly, language or library-agnostic, generic guidance is nowhere to be found.

TOML raises the bar here, by providing a concept and notation to specify these values at rest, and gives parser writers, as opposed to the users, the task of finding a way to represent these values in whatever way is idiomatic for the given language.

[1] [https://github.com/toml- lang/toml/blob/master/CHANGELOG.md](https://github.com/toml- lang/toml/blob/master/CHANGELOG.md) [2] [https://github.com/toml- lang/toml/pull/414](https://github.com/toml-lang/toml/pull/414) [3] [https://github.com/toml-lang/toml/pull/362](https://github.com/toml- lang/toml/pull/362) [4] [https://github.com/toml- lang/toml/issues/412](https://github.com/toml-lang/toml/issues/412) [5] [https://github.com/toml-lang/toml/issues/263](https://github.com/toml- lang/toml/issues/263)

<comment><USER2> Glad you like them, we spent quite a bit of time getting them right! Datetimes are a horrible mess of complexity, but hopefully over time languages and tools around them can standardize on a set of common primitives to make all our lives a bit less horribly messy. =)

</comment></comment><comment><USER8> I just started a rust project and so had to learn TOML since that's what the package manager (and a lot of the ecosystem) uses.

For some reason, though, I just struggle with the syntax. It says it's "obvious" but it wasn't to me. I think it says something that the README is full of "this TOML would be represented like this JSON", to help you understand what's going on. Every time I saw that, I was like "oh, now I get it." I don't know if that means JSON is just inherently more understandable, or I'm just more used to it, though.

Are there obvious downsides to JSON for config that I'm missing? What are the advantages of TOML over JSON? Maybe eventually it'll "click", though.

I think the following mean the same thing:

         [[foo]]
         bar = {baz = 5}

         [[foo.bar]]
         baz = 5

But I don't think the following works:

         [[foo]]
         [[bar]]
         baz = 5

That is, I _think_ the double bracket syntax always starts at the top level? While the `=` are relative to the double brackets above it? Something about all that is non-obvious to me, and I don't love that there's multiple ways to do the same thing.

<comment><USER9> Yeah, most of TOML looks good, but the .INI style [table] and even wierder the [[table-array]] thing seems like they were trying to hammer a square peg into a round hole for the sake of having config files that look like INIs.

<comment><USER10> Backwards-compatibility with ini is in my opinion one of the more powerful aspects of TOML which help adoption. Kinda like how UTF8 is ASCII- backcompatible.

</comment></comment></comment><comment><USER11> Does anyone know why such a "joke proposal" (as stated by the author itself) was chosen for pretty significant projects like pip and cargo? (edit: I tried to say it began as something small and personal)

(Well, I guess there's not that much to win/lose in the area of config languages, but still) (Also, I think it works pretty well, so this is not to downplay TOML!)

<comment><USER2> Well, it was only a joke to begin with. I couldn't stand the complexity or ambiguity of YAML and one night I had a few drinks and banged out my thoughts on something better. When people started writing implementations, I realized that TOML might actually have legs and started tightening it up and removing the snarky bits. I guess these projects felt the same pain I did about config files and presto!

I think the moral of the story is: just put your whacky ideas out there and see what happens. You never know when you'll hit a chord.

<comment><USER11> Thanks for response. I edited my response to be less snarky. Good job and thanks for the moral of the story.

</comment></comment></comment><comment><USER12> For more complex config, I highly recommend HOCON ([https://github.com/lightbend/config/blob/master/HOCON.md](https://github.com/lightbend/config/blob/master/HOCON.md)), and its parser in Java ([https://github.com/lightbend/config](https://github.com/lightbend/config)).

It feels like Scala (Lightbend is the company behind Scala) in the sense that there are 100 ways to achieve the same thing and having different levels of "code elegance", but for me it's a plus, since I'm a Scala fan.

</comment><comment><USER13> Since Tom is browsing, I have a question - and this is my one and only major issue with TOML.

         # THIS IS INVALID
         a.b = 1
         a.b.c = 2

Why? I'm sure there is very good reasoning - but it makes me have to reason about my data in a manner I consider backwards/confusing.

         name.first = "Bob"
         name.last = "Smith"
         # Can't do this because name.first has already been defined
         # name.first.alternative = "Robert"
         # This is too ambiguous
         name.alternative = "Robert"
         # And this is backwards to me
         name.alternative.first = "Robert"

Some people might suggest to instead do

         first.name = "Bob"
         last.name = "Smith"
         alternative.first.name = "Robert"

But now nothing is scoped to [name] and if I need to get the full name I can't just pull in [name] but need to pull in [first], [last], and [alternative]. That's really messy in my opinion. All of these are names and should be scoped to [name] and not their own structure.

<comment><USER14> Because the "a.b" is not a key, but a table "a" that contains an entry with key "b". If you write "a.b = 1" then that integer is not a table, and can't have an entry called "c".

Because it avoids these problems, your "name.alternative.first" example seems perfectly sensible to me. Alternatively, the name might be an array:

        [[name]]
        first = "Bob"
        last = "Smith

        [[name]]
        first = "Robert"

It's probably best to think of TOML as convenient syntax for creating a JSON- like structure. What kind of JSON would you expect as the result of your config examples?

<comment><USER13> _> Because the "a.b" is not a key, but a table "a" that contains an entry with key "b". If you write "a.b = 1" then that integer is not a table, and can't have an entry called "c"._

Your explanation is perfect and I understand the justification why it isn't possible now - so thanks for that! The array alternative provided by xinau is also an acceptable replacement - maybe even better to be honest, especially in this particular scenario.

 _> It's probably best to think of TOML as convenient syntax for creating a JSON-like structure. What kind of JSON would you expect as the result of your config examples?_

I came back from lunch and realized what I was trying to do didn't make sense while trying to convert it to JSON. Having name.first be both a value and contain an object doesn't make sense - unless it were to contain an array value but then why have the object and not just have the value? All very silly. So I guess my "only issue with TOML" is that I never sat down and tried to express what I wanted to express in any other way. It made a lot more sense in my head than on paper. :)

</comment></comment></comment><comment><USER15> Cool. TOML is used quite extensively in Rust projects. I think it's awesome for very simple configurations. And newcomers don't have to learn anything in order to change a TOML configuration, which is very powerfull.

<comment><USER2> Yeah, Cargo and Rust have been really important in TOML gaining adoption. Love the Rust community!

</comment></comment><comment><USER16> Just dropping a useless comment to say thanks! Between Tom's work on Github, Jekyll, and TOML, I think he has influenced a vast amount of developers!

For the projects I've used TOML on, it was a nice breath of fresh air and a terrific improvement over JSON (still mad about JSON's lack of comments). Simplicity wins!

<comment><USER17> Not to mention inventing MySpace!

</comment></comment><comment><USER18> Originally, I was fully on board with the homogeneous array requirement but its recently started causing me pains.

Homogeneous arrays can come in the following forms

\- Shallow, literal type (a list of lists, regardless of the nested lists contain)

\- Full, literal type (a list of dicts of strings)

\- Logical type

There are many times where a list is the best type for my data but I want to take advantage of logical types for easier configuration by my users.

Below is an example of what I mean by "homogeneous logical types":

`Cargo.toml` has you specify dependencies using a dict

      [dependencies]
      foo = { "version" = "1.0" }

but allows a short-cut syntax where a string value is assumed to be the version value in the above dict.

      [dependencies]
      foo = "1.0"

Generally this is done in Rust using Enums

      enum Dependency {
         Version(String),
         Specification(HashMap<String, String>),
      }

<comment><USER2> Homogenous arrays are partly to make implementations easier, and because if you really need that flexibility, you can always use an array of inline tables, which has the benefit of giving each sub-element a name, hopefully increasing the obviousness.

I'm not sure I understand your complaint, though, can you give me another example of how it's biting you in real life?

<comment><USER18> > you can always use an array of inline tables, which has the benefit of > giving each sub-element a name, hopefully increasing the obviousness

Except the name would be duplicated with the content I'm storing.

As for an example, its effectively Cargo. My use case is very similar (dependency reporting) but my content is slightly different (as I said, the value would effectively duplicate the key)

<comment><USER2> Oh, you mean you want something like:

      list = [
        "1.0",
        "2.7",
        { version = "1.4", path = "..." },
        "9.9",
      ]

Is that correct?

<comment><USER18> Something akin to that, yes.

</comment></comment></comment></comment></comment><comment><USER19> I didn't know about TOML until I started using Hugo. I've been using YAML and TOML and I find both have their merits, especially for their simplicity. TOML looks like the classic INI file, and is fairly easy to use/learn. I've been trying to move toward TOML for everything. YAML is nice, but I had to be careful about white-space significance and also translation of "YES","NO", etc.

[https://arp242.net/weblog/yaml_probably_not_so_great_after_a...](https://arp242.net/weblog/yaml_probably_not_so_great_after_all.html)

<comment><USER2> Absolutely. That's what I mean about TOML mapping unambiguously to a hash table. Strings in TOML are always quoted. There is no fuzzy interpretation of things like YES and NO. That way madness lies. I also am not a fan of meaningful whitespace, which is why TOML doesn't do that. Glad you're finding TOML useful, good luck on your projects!

<comment><USER9> > There is no fuzzy interpretation of things like YES and NO

I think the big problem is that YAML is dynamically typed. If I had schema- enforced config files, I'd be perfectly happy to say that _for boolean typed data_ all the values of YES and NO and ON and OFF and T and F and 0 and 1 can all be reasonably interpreted as a Boolean True and False. The problem happens when a string-typed or integer-typed member can _also_ have their ON value interpreted into Boolean TRUE.

<comment><USER2> Yeah, I'll agree with that, among many other issues with YAML. =) A schema would at least solve that problem, but I don't think most simple config users want to define a schema, so strong typing is a better solution.

</comment></comment></comment></comment><comment><USER20> Funny enough, I learned how to/started to use TOML today. I was running some [redacted] experiments using a .pyc compiled script and wanted to experiment with parameters -- but then I had to compile the script again and again.

Enter TOML: I can paste a bunch of "var_x = 2"-type statements (there's like 50) directly from Python, read them as a dictionary and find-replace all appearances in like 5 minutes while I'm waiting for an Uber.

Thanks Tom!

<comment><USER2> Awesome, sounds like the perfect use case for TOML!

</comment></comment><comment><USER21> It's surprisingly easy to add it as an optional drop-in, ex: [https://github.com/EamonnMR/OpenLockstep/blob/master/data.py...](https://github.com/EamonnMR/OpenLockstep/blob/master/data.py#L31)

</comment><comment><USER22> I am using TOML in most of my projects and once the configuration files grew too large I just extended the syntax with "#@include filepath" declarations and split up the config files. Works great. [https://github.com/nodemailer/wild- config/blob/master/README...](https://github.com/nodemailer/wild- config/blob/master/README.md#toml-extensions)

</comment><comment><USER23> I'm not a fan of configuration files. Instead, I prefer the style of "calling" the program from within a script, and passing the configuration as parameters. This also allows to pass e.g. callback functions. Imho, this is much more flexible, and the advantages grow over time, whereas configuration files tend to accumulate awkward/convoluted constructs as the software matures.

</comment><comment><USER24> If only package.json had been package.toml

<comment><USER25> Would that be hard to implement for npm/yarn? I'm sure that transforming TOML to JSON on the fly could be added as a step somewhere, resulting in changes to the package manager or just a wrapper command.

Stylistically, I agree with you as TOML is clean and well thought. Moreover, TOML has support for more data types that JSON lacks leading to ugly workarounds (floats as strings anyone?). The main advantage of JSON is that its encoding/decoding is included in JS as it is, and it's generally deeply ingrained in the Node community.

<comment><USER24> It would not be trivial because npm/yarn don't just read package.json but also modify it. See numerous GitHub issues in either repo about supporting comments inside package.json.

Of course nothing is impossible, but I think that the ship has sailed. I was just dreaming of what could have been :-) Subtle details in NPM's behavior would've probably been designed differently if it was necessary to make updates to the package file without destroying layout and context.

</comment></comment></comment><comment><USER26> I never really questioned the name, TOML, but I guess "Tom's Obvious, Minimal Language" works

<comment><USER27> To me, there was nothing obvious about the double bracket syntax, e.g.:

        [[designers]]
        name = Guido
        lang = Python

        [[designers]]
        name = Larry
        lang = Perl

<comment><USER28> Yups. And making a whole datetime RFC part of the spec kind of broke with the "minimal" thing. But apart from that I totally prefer it over INF/YML/JSON/XML for many purposes.

<comment><USER29> I guess there's no way around that though, if you want dates to be first class members. Can't do "a bit of date".

<comment><USER2> We added a proper datetime type because the only thing worse than having one is not having one. If you had to supply a datetime as a string, every TOML file would have a different way of doing it, which is...not so obvious.

</comment></comment></comment></comment></comment><comment><USER30> Here's the TOML parser in Nim language: [https://github.com/NimParsers/parsetoml](https://github.com/NimParsers/parsetoml).

It works great based on my small amount of testing, and TOML is awesome! I wish more people start using it.

</comment><comment><USER31> The syntax for tables is awkward compared to CSV (This is actually also true for XML, JSON, YAML).

</comment><comment><USER32> Should it be called a "language" when it has grammar but no semantics? (just curious)

</comment><comment><USER33> Looks a lot like Rebol/Red.

</comment><comment><USER34> Some questions I couldn't find answers for:

\- Is interpolation supported? e.g. "key1" = "value" and then "key2" = "$key1". That would be very useful in avoiding repetition.

\- What is the keyword for null? e.g. when I want to set the value to null

<comment><USER35> > interpolation?

No, there is no facility for variable templating, interpolation, references, or anything of the like in toml.

If you wanted that, you could implement it in your application by doing post- processing on strings, or you could not use TOML.

> What is the keyword for null?

If you have "x = 1", you can always comment it out with "# x = 1". There's no specific support for null.

it would be kinda silly to have it anyways since null is a language construct more than anything else, and e.g. some lanuages support mixed strings + nulls in one array, but many don't.

</comment></comment><comment><USER36> How does toml compare to Google protobufs as a configuration system?

<comment><USER2> Protocol Buffers is a data serialization format and unsuitable for configuration, as the binary serialized data is not human readable.

</comment></comment><comment><USER37> Does TOML have a schema?

<comment><USER2> Not currently, but it's something I'd like to add as a separate spec sometime later.

<comment><USER38> In case you're curious, one of the Clojure libraries I found while researching TOML seems to have an ABNF grammar. It sits at the top of this file:

[https://github.com/lantiga/clj- toml/blob/0.4.0-instaparse/sr...](https://github.com/lantiga/clj- toml/blob/0.4.0-instaparse/src/clj_toml/core.clj)

What a lovely language! I may have to use it..

</comment></comment></comment><comment><USER39> > Whitespace means tab (0x09) or space (0x20).

> Newline means LF (0x0A) or CRLF (0x0D0A).

Complicating things from the start. Not a good sign.

<comment><USER40> Well some (many, actually) people use Windows too, and some prefer tabs and some prefer spaces; I can't see why this is a problem?

A language for configs is different from a data interchange language: the former is intended to be written and edited by humans.

See [https://arp242.net/weblog/json_as_configuration_files- _pleas...](https://arp242.net/weblog/json_as_configuration_files-_please_dont)

</comment></comment><comment><USER41> (2013)

<comment><USER42> v0.5.0 is a new release!

Changelog: [https://github.com/toml- lang/toml/blob/master/CHANGELOG.md#0...](https://github.com/toml- lang/toml/blob/master/CHANGELOG.md#050--2018-07-11)

<comment><USER2> Yes, we just released it two days ago! I know v1.0.0 has been a long time coming, but it's important to me that we get it right, as specs have a very long-lasting impact (much more so than a specific version of a library). We are indeed working hard towards a proper 1.0 though!

<comment><USER43> Something to consider for 1.0.0, a hexadecimal floating point type value. I don't think it's in there yet, but if it isn't [https://www.effectiveperlprogramming.com/2015/06/perl-v5-22-...](https://www.effectiveperlprogramming.com/2015/06/perl-v5-22-adds- hexadecimal-floating-point-literals/)

They're incredibly useful if you need to specify an exact floating point value, and about rounding or precision issues.

Other languages than perl support them, but that article does a good job of demoing them

</comment></comment></comment></comment><comment><USER44> Used to be called "INI file" in the past...

In any case I'm glad to see it in several open source projects (Mailtrain for example). It's so much easier to read for humans than JSON.

<comment><USER2> Yeah, TOML is definitely INI inspired, but there is no canonical INI spec. I wouldn't say that TOML is INI, though. INI files still exist in their variously poorly specified ways.</comment></comment>


How Your Brain Decides Without You (2014) - <AUTHOR> http://nautil.us/issue/19/illusions/how-your-brain-decides-without-you <comment><USER2> Am I to understand from the title that I am different from my brain? Then who am I? Something other than my brain/body?

<comment><USER3> I would argue so. Despite my mind telling me not to eat cookies, I feel a strong compulsion to eat them.

<comment><USER2> Compulsions are part of your mind as well. I would argue that the world is also part of yourself, as all your experiences that made you who you are come from the world.

In my view we are agents that make a living in the world. All that we are is ultimately tuned for life protection and procreation. It's a game, and the prize is being.

In this view the premise of the title is flawed - my instincts are an integral part of me, participating in my survival.

<comment><USER3> You certainly raise interesting points that I agree with, but "I" am definitely not a 100% representation of my brain.

"I", in the sense of my ego and my perception of myself, will want things that my brain doesn't want.

A morbid example of this is holding your breath. I don't think there's ever been a documented case of someone able to hold their breath beyond the point where their brain forces their airway to open!

<comment><USER4> Free divers have to be careful not to hold their breath so long as to pass out under water. I'd be interested in hearing from an expert but seems like the conscious mind passes out then the autonomic nervous system takes back over.

<comment><USER3> That's correct. A free diver above water could probably make themselves pass out, but they will immediately begin taking extremely deep breaths as commanded by their brain while unconscious.

If you are underwater, you die :(

<comment><USER4> Well the point is, your brain does not control breathing in that sense, the medulla, nervous system does.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> Discussed at the time: [https://news.ycombinator.com/item?id=10689126](https://news.ycombinator.com/item?id=10689126)</comment>


The Bipolar Lisp Programmer (2007) - <AUTHOR> http://marktarver.com/bipolar.html <comment><USER2> This has been submitted many, many times, most recently about three weeks ago: [https://news.ycombinator.com/item?id=8801608](https://news.ycombinator.com/item?id=8801608)

I think this submission of it has the most comments, though some of them are about the relative merit of pointing out how many times it had previously been submitted: [https://news.ycombinator.com/item?id=2275657](https://news.ycombinator.com/item?id=2275657)

<comment><USER3> [http://en.wikipedia.org/wiki/Summer_Wars](http://en.wikipedia.org/wiki/Summer_Wars)

</comment></comment><comment><USER4> Lisp programming is in some sense like Eastern Philosophy. Very few understand how a few great insights fit together to form something "better" than just a sum of its parts. There is a small industry which makes living on ignorant what we could call Tibetology with a hundreds of books of poorly translated vague commentaries, mostly by fools, and millions of ordinary people engaging in speculations about what these esoteric teaching are all about, where their "knowledge" usually came from popular websites, and communities of "enlightened people" somewhere around Goa or Varanasi. It is a second-hand knowledge.

The beauty of Lisp is in these few "great insights" of John McCarthy who'd put together a few "good ideas", so, again, the result has been more than just a sum of the parts. Then a few more evolutionary steps happened, which gave us macros.

When we say Lisp, we don't mean Common Lisp or Scheme or Ark or Clojure. We think about this set of ideas where ideas complemented and augmented each other. As long as this set of ideas remain unbroken it doesn't really matter is it Arc or Scheme or Common Lisp. It is about principles, not implementation details.

When we think of these set of idea - everything is a first-class value, symbols which are "natural" pointers to values, lexical scooping, generic procedures on typed (by tagging) values instead of variables, which together with prefix notation, which gives an elegant and uniform code-generation, and "evaluating" read procedure gives us macros, we wonder why, why so few people "gets" it.

One who is asking what is it that makes Lisp special will find the usual torrent of nonsense, while those who would try to find it out yourself suddenly would get this aha-moment of realization of the beauty of how a few simple and clever ideas fit together. It is the source of Lisp elegance and power. Brian Harvey's CS61A course form 2008 is still the best place to learn the big ideas. Then comes On Lisp and arc.arc.

Lisp it is not just a set of features - it is a "complete" set of features, which could be ruined, reduced to an ordinary clumsy language, when a one single feature, such as List structure (conses) as the representation of Lisp's code would be removed, or if another data-structure would be introduced, to break uniformity. That is why Clojure doesn't have "that feel" which Arc or Scheme or a subset of CL has.)

<comment><USER5> Clojure was my first programming language. I've been playing around with a language with pointers recently, and I wonder if you could explain to me what you mean about "symbols which are natural pointers."

More generally, I don't think I understand yet why someone would use pointers instead of a variable.

Thanks for your comment about Lisp.

<comment><USER6> In lisp, think of symbols as things that represent other things. Instead of having to evaluate each expression in the complexity that the programmer builds, everything can be substituted until the computer is left with a simple but expansive form. The machine is very good at evaluating this simple form, because it only needs to look up a few things to process the entire calculation, which is really just a collection of an ordered organization of the same calculations over and over again.

A pointer is not the actual data. It's just a trail of connections that eventually lead to the data you want, instead of having to manage a bunch of data you don't need to, or want to manage. It's computationally efficient and it is elegant. It represents exactly what you tell it to represent.

</comment></comment></comment><comment><USER7> Screw this guy for being right about me.

</comment><comment><USER8> seems good will hunting is everyone's mind. I wish people would try to see more nuances.

</comment><comment><USER9> Not again...

<comment><USER10> Reposting is one thing. It's another when it's been reposted dozens of times and it somehow gets voted to the top.</comment></comment>


Interactive map of rivers in the US styled by real-time rainfall - <AUTHOR> http://team.cartodb.com/u/andrew/viz/7f079314-7da0-11e4-8160-0e853d047bba/embed_map

<comment><USER2> Is it possible to add a layer with the main cities? Perhaps the state capitals and a few big cities.</comment>


Bitcoinica now the second largest Bitcoin trading platform - <AUTHOR> https://bitcointalk.org/index.php?topic=42680.0

<comment><USER2> _You service is great, however, I am trying to withdrawal 246.00 USD and I am getting an Error._

 _Not Good._

How is it that this guy's Bitcoin thingy has hit the front page of HN 3 times in the past 3 days?</comment>


Dropbox finally launches to the public (YC summer 07) - <AUTHOR> http://blog.getdropbox.com/?p=13 <comment><USER2> Dropbox is the first and only sync / storage solution of its kind that ACTUALLY WORKS. Tremendous job, and I love using Dropbox every day.

<comment><USER3> Same here. Dropbox is the best YC-backed product to date, IMO.

<comment><USER4> Ahem, TicketStumbler.

Just kidding, I'm in love with their service and am a very happy user. They're backed by Sequoia and some other BSDs.

How the hell do you make something boring like file storage viral and cool? I don't know but Dropbox just did it.

<comment><USER5> How is it viral?

<comment><USER4> Not only have I enjoyed it so much I've told countless friends about dropbox, it also auto invites your friends to join when you share a file with them. That's in part why they already had over 100,000 beta testers before even launching.

</comment></comment></comment></comment></comment><comment><USER6> I find this misleading at best: <http://www.getdropbox.com/install?os=linux>

_It's here, it's open source, and it's free software! Dropbox for Linux is finally available and ready for your everyday use._

Further down the page:

\-- _dropboxd is a per-user closed-source daemon process that makes sure your $HOME/Dropbox directory is properly synchronized._

<comment><USER7> want the souce? get it:

[http://dl.getdropbox.com/u/5143/nautilus-dropbox- packages/0....](http://dl.getdropbox.com/u/5143/nautilus-dropbox- packages/0.4.1/nautilus-dropbox-0.4.1.tar.bz2)

<comment><USER6> That's not Dropbox, that's the Nautilus integration. That is, you keep the essential parts proprietary and closed, and open the parts where you hope others to do work for you. It's not the oddest strategy, but it doesn't live up to the promise either.

On the other hand, if you freed the daemon too, you could get included in Linux distributions, and people would know what all Dropbox is doing on their computers.

</comment></comment></comment><comment><USER8> "It started in Boston's South Station in November 2006 where one night, while waiting for the Chinatown bus to New York, I wrote the first lines of code of what eventually became Dropbox. I had forgotten my USB drive at home and was frustrated that I couldn't get any 'real work' done."

Ha, classic 'founder story' as discussed 7 days ago: <http://news.ycombinator.com/item?id=294663>

<comment><USER9> It's funny because dropbox wouldn't help him on a bus... :)

<comment><USER10> Not like there's not mobile wireless, and there's even buses with wifi.

</comment></comment></comment><comment><USER11> DropBox a winner? Xobni a winner? How did they do it?

The recipe is to not rush your product out there. I think most entrepreneurs do not understand "Release Early, Update Daily, Weekly, Monthly". Sometimes releasing early can work against you. Be patient.

<comment><USER12> DropBox did release early, though, didn't they? Just not publicly. My understanding was they did iterate _a lot_ with early testers.

<comment><USER13> I know some people who have early clients installed that they can't get rid of :)

</comment></comment></comment><comment><USER14> I routinely forget I even have Dropbox because it gets out of my way so damn perfectly.

Amazing job. And thank you most of all for the "undo" feature. I'm not saying that one day Dan accidently deleted all of our files, but you know, hypothetically.

<comment><USER4> Livingston did it.

<comment><USER14> Don't blame this on poor, sweet Livingston you knave!

</comment></comment></comment><comment><USER15> Makes me giggle when I remember Joel's rant (<http://www.joelonsoftware.com/items/2008/05/01.html>):

" _Since 1988 many prominent architecture astronauts have been convinced that the biggest problem to solve is synchronization.

[...]

When did the first sync web sites start coming out? 1999? There were a million versions. xdrive, mydrive, idrive, youdrive, wealldrive for ice cream. Nobody cared then and nobody cares now, because synchronizing files is just not a killer application. I'm sorry. It seems like it should be. But it's not.

[...]

this so called synchronization problem is just not an actual problem, it's a fun programming exercise that you're doing because it's just hard enough to be interesting but not so hard that you can't figure it out._"

You show him!

<comment><USER16> He seems to have embraced it, regardless of his earlier opinions on the subject: <http://www.joelonsoftware.com/items/2008/09/11b.html>

</comment></comment><comment><USER17> You should add a link to your main site on your blog. I arrived on the blog from the HN link having no idea what Dropbox is or what it does. I had to manually edit the url to get to the main page to find out what it does. Lots of users would be too lazy to do that.

<comment><USER18> Snap. Also, the tour thing doesn't load on the PCs here at work (probably the firewall), so I still don't know what it is! The site could do with a bit of simple plain boring old html text which tells us poor people behind firewalls what all the fuss is about :)

</comment></comment><comment><USER19> I'd like to emphasize how well Dropbox works as a collaborative tool. Never having to attach and download shared files from email is a great help in staying organized.

A co-worker can simply shoot you an IM or shout across the office that a document has been updated, and it's already on your machine ready to be opened.

I hope people don't get this confused with a source code repository though, as it definitely isn't optimal for working on shared source code. Stick with documents, images, and media, and you'll be fine.

</comment><comment><USER20> Reddit: [http://www.reddit.com/r/reddit.com/comments/70yy8/dropbox_gd...](http://www.reddit.com/r/reddit.com/comments/70yy8/dropbox_gdrive_killer_finally_launches_plus)

Digg: [http://digg.com/software/Dropbox_GDrive_Killer_finally_launc...](http://digg.com/software/Dropbox_GDrive_Killer_finally_launches_plus_Linux_iPhone)

Already at the top of digg!

</comment><comment><USER21> I have been using it for quite a few months and am officially impressed with the stability of the app. This is a good time to remember to backup - I will be saving some important photos immediately!

The only complaint I have is that it does not make explicitly clear (to me) what folders are public.

</comment><comment><USER22> Is there an API such that an automated service could detect that someone shared a folder with it? Failing that, is there a Linux command-line client?

</comment><comment><USER23> First impressions: Very positive

Dropbox will probably take over gmail as my primary file storage on the go... ;)

Now, one question though, is Dropbox smart enough to only access network when I am actually doing anything with it(ie transfering files from/to Dropbox), or will it occasionally do weird sync type of things even when I am not using it(but have Dropbox folder open on desktop)?

</comment><comment><USER24> Weird issue with the website: On this page: <http://www.getdropbox.com/install?os=linux> if I move my mousewheel while the cursor is over that ascii dropbox on the right my cpu usage jumps to 100% and Firefox hangs for a few seconds. Using Firefox 3.0.1 on Ubuntu 8.04.

</comment><comment><USER25> I can't wait to sign up... but would really like to see encryption. Is this on the todo shortlist? (third time asking!)

<comment><USER26> I think if you're actually interested in encryption, your best bet is actually not to wait on us to help you with it. If we're cooperating with you to encrypt your data, it's by definition not secure. A number of security- conscious users use us combined with TrueCrypt volumes.

<comment><USER27> I see a couple ways you could introduce encryption securely.

1\. At the very least, encrypt data being transfered using SSL, to prevent sniffing on WiFi and other public networks. Public key cryptography (like SSL) certainly can be secure, and does or doesn't require "cooperation" depending on your definition.

2\. Your client could somehow integrate with something like TrueCrypt, but leave it up to the user to manage their keys.

<comment><USER26> We definitely do use encryption for both data transfer and storage. I didn't mean to imply that those things happen in the clear.

And yeah, hopefully we can find a way to help users along the path of managing their own keys.

</comment></comment></comment></comment><comment><USER28> I must say that while I was already impressed by the product, the blog post announcing the public launch was just as impressive. It is very well written and portrays the company as having great professionalism and aptitude. You don't see many startups doing this.

Finally, yay! for being an MIT startup :)

</comment><comment><USER29> There seems to be an explosion of these online storage services. They will become much more useful when/if there is a standardized API with per-app isolation and access control. The closest I've seen to that is Openomy:

<http://api.openomy.com/2.0>

</comment><comment><USER30> This story has already been Dugg, and interesting to note there seems to be people signing up to Digg just to badmouth dropbox and plug sugarsync.

eg <http://digg.com/users/supersaucer>

EDIT - PS, love dropbox guys, good work!

</comment><comment><USER31> Is this an intended use: <http://www.joelonsoftware.com/items/2008/09/11b.html> ?

BTW, he's right about the URL. Wonder how much the squatters want for it?

</comment><comment><USER32> That's awesome. I finally got the invite a week or so ago and I couldn't be happier. I already got 3 of my friends on it as well because it just WORKS. Beautiful

<comment><USER33> I've use jungledisk and MobileMe/iDisk, but on seeing this story this morning I thought I'd give dropbox a try, and I was blown away by how well it 'just worked'. Things like sharing, proper diffs, public folders all done properly and simply. Really need Mac Finder integration. I'm a convert!

Shame that someone else has the dropbox.com domain though ...

</comment></comment><comment><USER12> Congrats on the release! Just got an invite yesterday and believe this is a truly great product that provides end-users a beautiful experience.

</comment><comment><USER34> Fantastic! Now if I could only get the Linux app to work with my Aspire One I'll be in heaven (libgio-2.0.so.0 is a missing dependency).

</comment><comment><USER35> Looks pretty cool. I'm looking forward to using it. They're presentation at TC50 didn't go so hot though. I feel bad for the guy.

</comment><comment><USER36> Great job guys! Dropbox is certainly one of the best products I have used, and you guys are definitely making it better...

</comment><comment><USER37> What about privacy ? Data is stored in clear text ? Where is it stored ?

How about making it possible to setup a private server ?

</comment><comment><USER38> I will use it only if it has a command that will mount the dropbox somewhere in my filesystem, no nautilus.

<comment><USER39> I started reading this thread and I thought, oh finally linux. But then I got really sad when I learned that nautilus was required :(

</comment></comment><comment><USER40> W00t, congrats guys, and you're gonna make me regret that I didn't join back last February. :-)

</comment><comment><USER41> Congrats! I'll pass the word around and see if I can't get some more people to sign up.

</comment><comment><USER42> Highly recommended -- Dropbox provides an extremely rare, zen-like experience.

</comment><comment><USER43> Does DropBox encrypt your files? I couldn't find anything on their site.

</comment><comment><USER5> The tutorial video is great. One of the files was named TPS Report.doc.

</comment><comment><USER44> "Sometimes you need your files on the run, and we were amazed that no one had made it easy"

What? Never heard of offline files, briefcases, SSH/FTP/SFTP/Web/WebDAV servers, Sharepoint, Groove...? (or any of millions of online file repositories?)

<comment><USER45> Keyword being "easy."

<comment><USER44> That seems an odd keyword for the sort of person capable of writing dropbox and for a site like HN which revels in arguments about what kind of threading mechanisms are preferable.

I don't suppose I'd win any favor for saying Offline Folders - you logoff your domain, they sync, you logon, they sync again. It isn't _any_ effort once it's setup. Not even browsing to a webpage or entering a password.

<comment><USER46> a) Home users don't have Windows domains

b) Nor can they set up offline folders easily

</comment></comment></comment></comment><comment><USER47> congrats (again) drew!

</comment><comment><USER48> Congrats and dugg!

Is a domain name change in the future? Drop the word get?

</comment><comment><USER49> This is awesome; exactly what I've been looking for.

Congrats on the launch!

</comment><comment><USER31> I liked this :

 _Now with lots of AJAX!_

</comment><comment><USER50> this seems like an easy backup solution for a small business.

</comment><comment><USER4> Love it.</comment>


Did Microsoft Just Pull a Don Draper? - <AUTHOR> http://brooksreview.net/2010/10/ms-draper/ <comment><USER2> Or rather, it was just a dick but pointless move by Microsoft (probably because the Marketing/partnership/demo deployment teams don't talk to each other very closely).

This article seems to try to make a mistake sound like it was some genius move. Can't see why it is, or why the Angry Birds developer is under any kind of pressure at all. People will be putting pressure on the developer? Seriously? All they need to do is tell people the icon was used without permission.

The fact that he has to come up with some TV series-inspired expression and explain it (with the help of some bogus, paraphrased, empty quote nonetheless) just makes it worse.

If the author is so interested in making people aware of his Mad Men obsession, there are less lame ways to do it than this.

</comment><comment><USER3> "If you don't like what people are saying, change the conversation" is not the same as "if you don't like what people are saying, lie so they have a better opinion of you."

</comment><comment><USER4> The article assumes that a significant number of Angry Birds players on one platform will want to jump to another and pay again to play on the second platform.

</comment><comment><USER5> This is an insult to Don Draper's legacy.</comment>


Please review my startup – Sinaalp - <AUTHOR> http://www.sinaalp.com

<comment><AUTHOR> Sinaalp is a blend of a blog and a bookmarking website where users can save and share links and thoughts(comments, status, or what the user wants).

These are examples of public profiles: [http://www.sinaalp.com/::NestorBeteta/](http://www.sinaalp.com/::NestorBeteta/) [http://www.sinaalp.com/::Sinaalp/](http://www.sinaalp.com/::Sinaalp/)

I sincerely apologize for the poor design, but it's all I could do by myself so far. It has taken between 10 and 11 months to develop my proyect(website sinaalp) in its entirety.

I would really appreciate your feedback and suggestions.

</comment><comment><USER2> You need to work on design a lot. May be you can use bootstrap for the start.

</comment><comment><USER3> How does it compare to delicious.com?

<comment><AUTHOR> The difference is that in Sinaalp (1) users can categorize their links. (2) They can add the image that they wish to the link, (3) also share thoughts and discuss them, also they can discuss the links. (4) Finally it has a global search engine where users can search links by categories.</comment></comment>


Lyndsey Scott: The model who dreams in code - <AUTHOR> http://www.bbc.co.uk/news/magazine-26473950 Lyndsey Scott is a New York City model working for Prada, Gucci and Victoria's Secret. She's also an iOS programmer with two apps she created available in the Apple store.
The self-described "geek model" started programming in middle school and does not see any contradiction between her careers in fashion and the tech world.
Ms Scott is also a mentor at Girls Who Code, an organisation that helps teenage girls learn programming. <comment><AUTHOR> Coding is officially mainstream</comment>


The state of the system-on-a-chip in 2014 - <AUTHOR> http://arstechnica.com/gadgets/2014/03/faster-cheaper-smaller-the-state-of-the-system-on-a-chip-in-2014/

<comment><USER2> At what point will this browser actually die? Or will it just become the COBOL of browsers. Something that will always be out there that someone will always have to support in some context.</comment>


Cocaine core - An open platform to build your own PaaS clouds. - <AUTHOR> https://github.com/cocaine/cocaine-core <comment><USER2> I don't think calling software "Cocaine" is such a good idea.

I would have problems telling my boss we're using that while keeping a straight face, not to mention all kinds of misunderstandings.

It doesn't really strike me as a really good name, either..?</comment>


Interesting look at the history of Soviet personal computers - <AUTHOR> https://translate.googleusercontent.com/translate_c?depth=1&hl=en&rurl=translate.google.ca&sl=ru&sp=nmt4&tl=en&u=https://habr.com/company/ua-hosting/blog/413733/&xid=17259,15700023,15700124,15700149,15700186,15700190,15700201,15700214&usg=ALkJrhhGeGnM2dmElwuzH_75R3RaQXuSgw#habracut <comment><USER2> >It is no longer a secret that in 1950–70 the USSR was one of the world leaders in the race called "development and production of computer equipment".

it is still a secret to me. First time i used computer while at high school in 1987 (ES-1033, a clone of System/360, installed at the University) and judging by the state of the industry at the time it took "the leader" less than 10 years for all the traces of the "leadership" to disappear.

Few years later, my professors at the University on several occasions explained motivations behind various strong theoretical results in the USSR Math from the preceding decades as "Americans have had computers and thus could just compute it while the only option we had was to obtain the results analytically".

>The end of the 70s was marked by mass production and production of PCs: Iskra-1256, Iskra-226, Iskra-555, VEF-Micro, Micro-80, Electronics NTs-8010, Electronics BK-0010, Microsha, Krista, Apogee BK-01, Partner 01.01, Spectrum-001, etc.

For a very USSR specific definition of "mass production". And not the end of 70s, more like middle of 80s for example [https://en.wikipedia.org/wiki/Electronika_BK](https://en.wikipedia.org/wiki/Electronika_BK) , [https://ru.wikipedia.org/wiki/%D0%90%D0%BF%D0%BE%D0%B3%D0%B5...](https://ru.wikipedia.org/wiki/%D0%90%D0%BF%D0%BE%D0%B3%D0%B5%D0%B9_%D0%91%D0%9A-01).

<comment><USER3> This reflects the American adoption of personal computers pretty well. Most High Schools did not have personal computers until well into the 90s, but some had them in the late 80s. Similarly, universities in the early 90s did not have availability of personal computers to the degree math professors were all able to do calculations on them (to say nothing of the state of mathematical software at that point).

A number of personal computers in the Soviet Union were created, such as the MIR series were developed in the early 70s and late 90s, but commodity hardware didn't really kick in until the early 80s.

[https://en.wikipedia.org/wiki/MIR_(computer)](https://en.wikipedia.org/wiki/MIR_\(computer\))

<comment><USER4> Commodity hardware in the sense of "it is made but impossible to get hold of outside the place its made or Leningrad or Moscow and half what you get is wildly out if spec" as Soviet reality tended to be. Only aluminum plates were really a commodity where I grew up in the 80s.

<comment><USER3> I would recommend this article about impressions and facts to you: [https://www.newyorker.com/magazine/2017/02/27/why-facts- dont...](https://www.newyorker.com/magazine/2017/02/27/why-facts-dont-change- our-minds)

It's super good, carefully studied, and overall a well written read.

</comment></comment></comment></comment><comment><USER5> Slightly OT, but I find the quality of this automated translation mind blowing.

<comment><USER6> In parts, but there are gems like this:

> From the memories of Christ: "my first comp with him on the tape was a" > musical sequencer "as a music demo was a polonaise of Oginsky, no worse than > a synthesizer poured, and programs from the micros approached," and the > program for a light pen - it was a screen filled with dots like this ... ... > (pseudographic).</comment></comment>


Antidepressant withdrawal: reviewing the paper behind the headlines - <AUTHOR> https://www.nationalelfservice.net/treatment/antidepressants/antidepressant-withdrawal-reviewing-the-paper-behind-the-headlines/ <comment><USER4> I recently tapered off a dosulepin, a tricyclic antidepressant.

Holy christ, I was _not_ prepared for the 2 weeks of absolute hell that ensued - intense vomiting, headache, small visual and aural hallucinations and malaise like I've never felt before. I barely got out of bed for the first week, and ate nothing. Several times I was on the edge of going to hospital because I felt like I was dying. Honestly, possibly the worst 2 weeks of my life.

I later learned that it seems it's actually well known amongst patients that coming off of antidepressants can cause withdrawals - tricyclics, SSRIs, SNRIs, NRIs, anti-convulsants, all of them.

The thing is, out of ignorance a lot of doctors simply deny it's possible. This kind of thing infuriates me - when doing pharmaceutical trials, the manufacturers _must_ have come across instances of patients going through withdrawals upon cessation, but somehow that information never makes it to the papers, the leaflets or the doctors.

<comment><USER5> I'm consistently amazed at how doctors aren't required - at least in Australia - to talk about side effects or withdrawal symptoms when prescribing medication. I'm capable of googling things, but it shocks me how none of this has ever been discussed with me when getting medication. Pharmacists will ask you questions to determine any contraindications, but I've never been spoken to about withdrawal or side effects. Half the time people find out about them by experiencing them.

<comment><USER6> This isn't amazing. It is just a matter of priorities. There are many other things that need to be addressed first to ensure the patient gets onto the therapy they need. In my experience counselling people about interventions far more complex and risky than starting an anti-depressant, it is clear that 99% of people don't want a branching tree exploration of every eventuality. They get information fatigue very quickly. Ultimately, there needs to be some trust between doctor and patient for things to function in any real sense. This is why I personally loathe the word 'client' in lieu of patient - it recasts the relationship in harmful terms in my opinion, splitting the therapeutic alliance that should exist into some slightly adversarial union of compliance on the provider's part and due diligence on the client's part.

<comment><USER4> Well, information overload has never been an issue with my doctors - quite the opposite.

My doctor has _no idea_ how the meds he prescribes me actually work. You talk of information overload, but my doctor provided _no_ information about the meds, their effects, side effects or withdrawals. For one of the tricyclics he said "these will kill you if you take too many", but that has literally been the total information conveyed.

Regardless of information overload, doctors should at least understand the _basic mechanics_ of how the drugs they prescribe actually work, and understand the body's mechanics of tolerance and withdrawal - and be capable of having a brief conversation about them with patients.

</comment></comment></comment></comment><comment><USER7> Withdrawal is a really crap thing to go through, but I also want to point out that sometimes it can be a fairly non-event, too. I tapered off of Zoloft for weeks, and I really didn't feel much of a change. Going slow and deliberate (if you have the freedom to do so) will help, as well as having lucky genetics.

I just want to underline that you shouldn't be turned off to this possible solution because you're nervous about the side effects or withdrawal. Definitely talk with your doc about them and see if it makes sense to go on them, and if there are ways to mitigate some of the side effects. But meds — in my case, at least — definitely have been some of the best decisions I've made in my life.

<comment><USER8> Exactly. The 1-2 weeks of inconvenience is nothing for some people, specially when the alternative to not taking them is death, in some cases.

It's also much less of a problem because you know the symptoms will go away. Just taper it off slowly (where "slowly" varies a lot, sorry).

<comment><USER9> Brain zaps lasted for years, we don't always all get so lucky.

</comment></comment></comment><comment><USER10> I've been on SSRI for almost 20 years. It stopped working after about 6-7 years and attempted to stop talking it, not cold turkey but by gradually weaning off it. I had such a bad experience that, now I'm still on it. I asked my doctor when I could stop taking it and she recommended me a time in my life when I don't need to come in to work for a couple of good months, basically to take some time off and deal with this. The problem was that I never had that time and life got in the way, got a child now, a wife, and I project that I will postpone getting of it ad infinitum.

I'm on Paxil 20mg, and every once in a while I skip a dose I am reminded of that feeling of melting into a painful death and excruciable headaches, nausea, palpitations, sweating, very comparable with the withdrawals of an opiate addict.

Other than that, after almost 20 years on it, I feel mostly good except for a once a month dip into 1-3 days of flu like simptomps, lethargy, lack of energy that I cure with 2-3 days of sleep. It keeps on repeating around once a month.

I should find time to get off this but am afraid I can't afford at the time such luxury. I have people depending on me...

<comment><USER11> Hey friend. Sorry to hear about this. It's a real predicament and in your shoes I'd probably do what you are doing. Hope you can find that time.

</comment></comment><comment><USER12> ANECDOTAL: I went off of the lowest dose (37.5 mg) of Venlafaxine (effexor xr - SNRI) earlier this year. I felt like I was hungover most days, and a general vertigo feeling. It sucked ass, so I reached out to my doctor and he suggested I try to use CBD oil to help with the symptoms.

I tried it and it literally dulled the withdrawal by at least half. It made my days tolerable to the point that I could go to work and function like a human being.

<comment><USER13> Effexor is one of the nastiest ones, even when not tapering off of it. A missed dose can mean brain shocks, and withdrawals can mean months of that, sometimes strong enough to knock you down.

I am ever surprised that they continue prescribing that one. Of the 10 I've been on that one was the harshest by far (though many others also had severe, dangerous side effects).

<comment><USER14> I agree, as I've missed a dose here and there over the years and experienced the intense paresthesia and headaches and nausea from withdrawal.

Background: I've lived my entire adult life (and most of my teens) with severe chronic depression. In my early 20's I started taking pharmaceutical treatment, and once I found the right drug (after trying _many_ over the course of _years_ ) my life became manageable. SSRIs helped but I experienced severe nausea on most of them, or worse. It was only when I tried SNRIs like Effexor that things started to get better. YMMV, IANAPsychiatrist, etc, etc.

A few years ago I switched from Effexor to Cymbalta. Same class of drug - <USER2> Effexor simply wasn't helping as much as it used to and the switchover was done with a long taper-down and replace period. I even bought a lab-grade scale to measure out the contents of the capsules so I could cross-over smoothly.

All that said, Cymbalta has the same withdrawal effects, on about the same time scale - a single missed dose. But I wouldn't give it up unless something better comes along. I still struggle with my depression and the SNRI is just one tool in my toolbox for managing it.

<comment><USER15> I have been taking Effexor for more than 10 years. Two years ago I thought it was no longer being effective for me so I tried to taper down and stop taking the mediation. Over a period of weeks I dropped down from 150 mg to 37.5 mg. I could not drop from 37.5 mg - I experienced complete insomnia and terrible anxiety and I started to experience tinnitus. I went back to see a psychiatrist who initially didnt believe that everything I was experiencing was due to withdrawal - I had to fill one of my old scripts and prescribe myself my original dose of Effexor to get back to some semblance of normality. My anxiety and sleep levels returned to normal but although the tinnitus lessened its still there today. I worked with my doctor and eventually decided to increase the Effexor dose and it has helped greatly with my anxiety and depression. Apparently there arent many people who have reported tinnitus as an Effexor sessation side-effect. My doctor says it must just be coincidence - anyone else experience the same thing ? Just a word of caution to anyone thinking of stopping their medication - do it slowly and with the support of a doctor. I thought I knew what I was doing but I probably reduced my dosage too quickly and maybe this ringing in my ears is the price I pay.

<comment><USER16> I experienced tinnitus when I started either Celexa or Lexapro. It started on the second day. It was pretty bad and I quit it the next day. My doctor said that she had never heard of that happening.

</comment></comment></comment></comment></comment><comment><USER17> Doctors do a really poor job explaining to patients just how hard it can be to get off of some of these drugs.

Personally it took me over a year to taper off of venlafaxine due to intense discontinuation.

While youre on it at full dose, forgetting to take it even one day is a miserable experience.

</comment><comment><USER18> I'm currently on day five off my previous antidepressant, Zoloft. (For reference, I'm 23 and weigh ~225 lbs.) Nothing too bad, minus a panic attack last night. I certainly don't feel "normal", though— I feel somewhat lightheaded basically constantly, and have been experiencing a strange tingling sensation on my lips. I was taking the lowest dose recommended for adults, 50 mg.

</comment><comment><USER19> Didn't read the underlying paper, and definitely not a medical expert, but I do wonder how they define "withdrawal?" Is there a standard definition?

If you start taking a drug that modifies how your body works, isn't it logically obvious that if you STOP taking that drug, your body will revert to it's previous state and that state change will likely be negative, therefor you're withdrawaling?

<comment><USER20> Your second paragraph is incorrect. Withdrawal is not an orderly transition to a previous physical state, it's the presence of previously unseen symptoms, typically due to biochemical adaptations to the presence of the foreign substance.

For example, if you drink a lot, some normal neural pathways are repressed by the regular presence of alcohol and your body compensates by increasing the affected neurotransmitters (GABA in this case). As a result, when you stop drinking, you have a corresponding oversupply of GABA, causing the physical symptoms of Delirium Tremens.

I was on Lexapro for 3 years. When I tapered off according to the standard protocol (already in place to avoid withdrawal issues), I experienced debilitating vertigo symptoms and had to change my process from a 2 week reduction to a 3 month process. It was intense.

<comment><USER21> >your body compensates by increasing the affected neurotransmitters (GABA

>you have a corresponding oversupply of GABA

Isn't it the other way around? I had thought that alcohol was a GABA agonist, so your body adapts to produce less of it. Then when you stop, you're _undersupplied_ which produces the DTs.

<comment><USER22> Yeah correct, alcohol is technically a positive allosteric modulator of the GABA-A receptors, which means it potentiates the effects of GABA in those receptors. Over time, the receptors downregulate to compensate for being over- stimulated. Upon withdrawal from alcohol, the GABA-A receptors are unable to respond strongly enough to the GABA which exists, so in effect you're undersupplied and that contributes to the DTs. Alcohol is actually a very messy drug that acts on a huge range of receptors but the effect on the GABAergic system is probably the most significant.

</comment></comment></comment></comment><comment><USER23> Anecdotal FYI: missing one dose of mirtazapine feels _exactly_ like a moderate hangover the next morning. I would vaguely hypothesize depression accrues in sleep, ethanol is indeed a CNS depressant with long-term effects and missing doses of medications causes much more harm than previously thought.

Also, I had some nasty vestibular dysfunction from withdrawing from vortioxetine... eyes randomly moving around quickly in all directions on their own, limbs twitching randomly, and any horizontal eye movement causing instantaneous nausea/vertigo.

And, I once titrated off mirtazapine and had some serious nausea... recommend ginger and weed.

</comment><comment><USER24> I'm currently on valdoxan, and have missed a dose once or twice. I was super anxious, but havn't had any withdrawl symptoms. Spoke to my psychiatrist and He said that it should have much lower withdrawl symptoms, but still recommended I taper things off when i come off it in March next year. The symptoms can be all the things the drug is trying to treat if you don't.

</comment><comment><USER25> I'm taking SSRI:s and going to therapy due to a diagnosed major depressive disorder. I'm feeling a lot better. I have no idea would I have responded equally well with or without SSRI:s, but the most important thing for me is that my symptoms have eased considerably.

I don't really care if there is a withdrawal period at this point. I'm feeling so much better.

<comment><AUTHOR> Yes. It's really important to remember that many people get their life back through medication and therapy.

</comment></comment><comment><USER26> Note: Not off-topic but not directly related to this exact article. Just sharing my personal story of withdrawal from an anti-depressant as I am in withdrawal _right now_. I figure it might be helpful to anyone else about to or in the process of coming off an anti-depressant. Feel free to get in touch if you want to talk outside of HN. See profile.

It has been almost three months since I stopped Sertraline (Zoloft) and it has been hard but I think harder for my wife. I have been a really moody, angry bastard. Withdrawal otherwise hasn't been too bad. Headaches and bowels for the first two weeks or so but nothing _awful_ just unpleasant. I think I am lucky there.

I had been on Sertraline for over 9 years at 200mg/day for most of that. I decided _two years_ ago I was ready to come off them so I spoke with my doctor (UK NHS) and we designed a reduction programme. Initially I had hoped to be off them in ~12 months but with some life events I decided not to "rock the boat" as it were which is why it is one month shy of being two years since I first start to reduce my daily dose.

I was on 25mg/every-other-day when I stopped fully. Things were a _little_ more complicated as I moved to [redacted] in August of this year so I am not under the care of my lovely NHS doctor however we discussed this at length and she and I agreed I should continue with the plan to come off them and I am glad I did. Worst case I would start taking them again (she gave me two months supply before I moved) and make an appointment with a [redacted] doctor.

Anyway I am happy to say so far everything is excellent. I feel much more awake. I am not tired _all-the-time_. Honestly I hadn't realised just how tired I have felt for the past 9 years. I am not complaining as in many ways Sertraline saved my life, it is just a realisation that in order to get better part of my brain was being kept not-quite-awake-not-quite-asleep.

However the anger has been an issue. And still is an issue. Before needing anti-depressants I was pretty chilled out and on them I was much the same. But now the smallest thing can piss me off like never before. I am _aware_ of this though so I am trying to process the anger rather than explode. Not in a violent way just as a miserable asshole. I _know_ I am a moody bastard at the moment and my wife has been an angel. I know I am not easy to live with at the moment. But I am trying by being acutely aware of my thought patterns and emotions. It is hard to stop myself getting in a serious mood though.

However things are getting better. I don't get in a mood for the _whole_ day because I dropped a fork when loading the dish washer (this seriously happened back in September!). I am getting better at managing when something angers me. I think part of it is a recalibration of how my brain reacts emotional to events.

My doctor did mention the anger issue but put more emphasis on things like headaches, dizzy spells, diarrhoea, etc. and obviously relapse of depression so while I was casually aware anger might be an issue it ended up being much more of an issue than I thought it would be.

As my doctor did not go into much detail over the anger related side-effect I have read up on others personal experiences and it seems it can take up to six months to be "back to normal" (for want of a better term) which is fine. I am already half way :)

I have been keeping an (almost) daily withdrawal journal that I plan to edit and send to my doctor (in the UK). Not sure if she really wants it but maybe it will offer some insight into withdrawal. Who knows but I figure it can't hurt to help. Plus it is quite helpful for me to document it all as I can track the number of "anger events" and I can see a steady downward trend which is extremely reassuring!

<comment> eric-hu Thank you for taking the time to write that up. I transitioned from Zoloft to Valdoxan earlier this year. I was taking Zoloft for a little over a year, up to a 100 mg daily dose. It took me several months to taper off from Zoloft. I remember smoking cigarettes hard and being grumpy and tired. I didn't smoke habitually before taking Zoloft, but it made the brain zaps more manageable.

I guess I never thought the grumpiness was a withdrawal side effect, I thought circumstances could just be better in my life. I was just counting down until I stopped getting brain zaps. I tapered down really slowly. I was down to taking an eighth of a tablet every other day. Trying to stop entirely before that (I.e. Stopping after a fourth of a tablet every other day) led to brain zaps that were just too tiring to deal with.

<comment><USER26> Yeah brain zaps are pretty nasty. I had them when I first started to reduce the dose. If I remember correctly it was around the 75 to 100mg/day level that I had the worst/most zaps. Felt like a lightning bolt inside my brain followed by the a very uncomfortable warmth moving around inside my head. I got pretty damn concerned about it as it almost felt like my brain was leaking inside and I thought god what if I had a stroke or something?! Very nasty things.

The reason I wrote my comment was because I wanted to mention the anger as part of the withdrawal as it isn't something discussed much by mental health professionals, at least not in my experience. They just briefly say "you might be more easily irritated" or something vague like that. However it was _by far_ the biggest symptom of withdrawal I have experienced and the one that has had the biggest effect not just to me but those around me.

Several times my wife has commented "god you're a moody sod today can't you just keep taking the damn tablets?!" and without realising the anger is a side-effect of coming off the tablets I think it would be very easy to get into the mindset of "hmm maybe I _would_ be better off going back on the tablets" and so they do just that.

I wanted to say that while the anger is frustrating it does get better. Like all withdrawals you need to fight through it.

<comment> eric-hu Yeah I broke up with my (now) ex in that patch. It's been about a month since I took my last Zoloft, so I'm pretty sure I was experiencing that irritability as a withdrawal symptom too... and maybe I still am?

This seems like a more insidious side effect, because it didn't _feel_like a withdrawal symptom, whereas the brain zaps clearly were. I guess I won't ever know for sure if the fights with my ex were because of withdrawal or personality incompatibilities.

</comment></comment></comment></comment><comment><USER27> When I went off Effexor more than twenty years ago, it was very hard. I had a bad case of the "zaps." It was really disturbing to be walking around just doing ordinary things and, many times a day, be hit with what felt like a sudden electric shock. It lasted for over a month if I recall correctly. And at the time I don't think this effect was well-documented.

</comment><comment><USER28> I was diagnosed with Major Depression when I was 14 (but I self-diagnosed at age 9 and probably first showed signs at age 6) and over the last ~20 years have had the distinct displeasure of trying dozens of different types of antidepressants over the years, with varrying levels of withdrawal.

I can't remember the name of the first anti-depressant I ever took -- but I do remember the migraine headache so bad it woke me from sleep and the inability to open my eyes -- and when I was able to open my eyes, the inability to see anything but black splotches because the pain was so intense.

And I remember the first real withdrawal I had, when coming off of Paxil. I was 14 and I was hot and cold at the same time, nauseated, and utterly unwell.

Most of the time, my withdrawals were staged and designed to taper off -- but that didn't make them all go away. Some drugs didn't have any withdrawal symptoms at all -- though in my teenage years as I searched for a workable medication, that was more often than not NOT that case.

There were drugs that had short half-lives (Effexor being one), where I would start to feel the symptoms of withdrawal if I took a pill even an hour or two later than expected. There were others that would sink in only after a day or two, but be truly terrible.

As a teenager and then college student, withdrawals were terrible -- but in some ways, survivable. I missed six and a half weeks of school my sophomore year of high school because of acute depresssion (which was most certainly not helped by the various withdrawals and side-effects of the drugs my various psychiatrists were trying on me) and had to take time off in college too. But at least I had that luxury.

Four years ago, I got into a depression, and stupidly stopped talking to my shrink, and let my medication prescriptions lapse. I had to go through cold- turkey Effexor withdrawal, and aside from being 21 and coming off of a tricylic, it was the worst experience of my life. But this time, I didn't have the luxury of taking time off of school. I had to go into work each day.

Last year, when I reconnected with my shrink and got back on meds, he was legitimately shocked I got through the withdrawal. In retrospect, I am too. I had a boss who was not understanding (I was told "everyone has problems") and clinicians have compared the type of withdrawal I was going through with opiates or cocaine detox.

I went back on the Effexor last year but earlier this year, decided to switch to something else. It took MONTHS to actually come off of it -- even at its lowest dose. I honestly cannot believe I did it cold-turkey last time.

The worst part? As terrible as the withdrawal is and can be -- for me, it's still better than the alternative -- which is not be on a medication that works and to suffer a debilitating depression, which is honestly, even worse.

<comment><USER29> Thank you for sharing that. I feel it's important more people share their stories. I am planning to write a book to share my experiences including the solutions I found that helped me, the problems with the healthcare system that I have encountered along the way, and my proposed solutions for that as well.

I am grateful to be able to say I survived and learned my lesson regarding medications in my early 20s (35 now), after an SSRI caused me to develop severe hyperacusis (hypersensitivity to sound) - where I could hear at -14 Dbs at different frequencies, could hear through a soundproof sound room, etc. I was in what I considered a torture state for 8 months, after which I had years of post-traumatic stress from the experience to try to deal with - which is mostly what got me into yoga.

Prior to that a different medication had given me intense burning sensation through my body, however the doctor to counter that (not believing me either) just put me on 4mg of benzodiazepine per day - which eventually the burning sensation caught up and surpassed the numbing of the benzos. I had other very negative experiences from medications. They all made everything worse - <USER3> doctors not listening, while essentially lying and continuing the medication experiment on me - until I stopped trusting doctors. There is a very real problem of indoctrination and of industrial complex influencing the healthcare system including inherently being integrated into the education system.

The first medication I was put on was at 17, it's always shocking to hear about children and young teenagers being medicated - and I know it's common that medications are the first thing tried without even much basic testing other than to do blood work to see if nutrient levels et al are within a normal range.

I have a complex history more than relating to depression. I had been diagnosed with depression - though I later learned from my own research and seeking answers/solutions - my depression was caused by a disconnect to emotion/a developmental block likely caused by painful childhood ear infections, and that was only unblocked through a sound therapy called Auditory Integration Training; at 1,000 Hz frequency if a person has an imbalance showing there then they 100% will be depressed: medication won't help them, talk therapy won't help - they're just stuck in that state. There's a book called "Hearing Equals Behaviour: Updated and Expanded" that shares the science, case studies, research on it all. The neat part is you can do a diagnostic through an audiogram and get concrete evidence of the imbalance before actually doing the sound therapy - and it's non-invasive and it will help development continue properly for at least 6 months - so you continue to get improvement.

There were also food sensitivity issues that caused some of my problems, one of those foods being wheat - where interestingly there is also an association to wheat and ear infections. Wheat fully acts like an opiate for me, where if I had even a single slice of bread made with wheat within 20 minutes I'd start to feel relaxed/almost euphoric - and then within 45 minutes I'd start going through withdrawal, irritated/irritable; imagine eating wheat (hits of an opiate) 2-3 times per day during your body-brain development, and how that could impact development of your nervous system/brain. It was in fact the audiologist who helped me with the hyperacusis who told me to stop eating wheat, and so eventually once I was healthy enough and not eating it - I could really notice the impact of when I would accidentally eat it.

My journey of pain and suffering unfortunately didn't end there though with medications. Fast forward to about 3 years ago, skipping plenty of details: as I did more and more holistic health practices I eventually stumbled into Ayahuasca ceremonies. Ayahuasca is considered a plant medicine and my overall experience is that it is healing. Many people describe a single ceremony as to being the equivalent to 100 therapy sessions - for how much emotion you process in a single night, the insights you can gain about yourself, your environment, the universe; Ayahuasca's main mechanism is breaking down the ego mind, meaning that it can breakdown layers of coping - suppressed/repressed memories - while having you in an environment and state that allows you to process those emotions/experiences that at the time of the suppression/repression the person wasn't able to process them for whatever reason. I had emotional benefit from the ceremonies - among giving me clarity on , unfortunately I wasn't only exposed to emotional pain - however I was also exposed to physical pain from a series of old injuries throughout my life - starting at the age of 5 or 6.

The past few years I have been slowly healing the pain mostly through stem cell injections. It's been a slow process for a few reasons, partly that regenerative medicine is relatively new - and because my case seems to be quite unique and how debilitating/disruptive the amount of physical pain I had severely impacted my executive function. I'm normally in Toronto and area, though currently in San Francisco to pass some time and be in a warmer climate, needing to wait another 2 months for the next stem cell treatment in Colorado; it's hard to quantify though the last treatment I had ~2 months ago reduced the pain overall by ~60%.

It looks like we already follow each other on Twitter - can't remember where we know each other - maybe through AVC or where we would have met? I remember your name though! Maybe it was at a Mashable conference many years back..

</comment></comment><comment><USER30> anecdotal counterpoint to the anecdotal issues: I've tapered off Prozac, Wellbutrin, and 1 other SSRI without problem.

<comment><USER29> Age, dose, length of time on it, the person's natural sensitivity level, and other factors will certainly factor into how a person responds to getting off of a medication.

</comment></comment><comment><USER31> I was on flux. Then i dropped it and started taking withania somniferia 500mg. I've nearly same effect.

<comment><USER4> For others reading this, you probably know this as ashwagandha.

<comment><USER32> Fascinating to see the difference between English and Chinese wikipedia content on this species.

</comment></comment></comment><comment><USER33> Another really scary thing about SSRI usage is post-SSRI sexual dysfunction (PSSD). It can be permanent. Google that and read, it's a nightmare.

</comment><comment><USER34> I suggest searching for a phage that infects this bacterium.</comment>


Ask HN: How can a US citizen get work abroad at a startup? - <AUTHOR>

As a US citizen, I know a little bit about obtaining visas for foreign nationals coming to work in the US. I don't know, however, how an American could work abroad.<p>- For engineers who are US citizens, where are the best places to work abroad?<p>- What kind of regulation and/or tax issues might an American expect?<p>- Has anyone done this, have good or bad experiences working abroad? <comment><USER2> I can speak to the 2nd question. The one thing that Americans really get shafted on is "global income". The IRS doesn't care if you don't live in the US anymore, they still want to see a tax return.

When I left Canada a number of years ago, I simply filed a tax return that said I left. I haven't filed one since.

Not so if you're an American. You need to keep filing each year. The good news is that the US has tax treaties with most developed countries, so as long as you're paying as much tax as you would if you were working in the US, you won't have to send a check to the IRS. For example, if the tax rate in your new country is 40% and you would be in the 35% bracket in the US, you will owe no US taxes.

<comment><USER3> _Not so if you're an American. You need to keep filing each year. The good news is that the US has tax treaties with most developed countries, so as long as you're paying as much tax as you would if you were working in the US, you won't have to send a check to the IRS. For example, if the tax rate in your new country is 40% and you would be in the 35% bracket in the US, you will owe no US taxes._

The IRS website suggests that there doesn't need to be a tax treaty if you live in another country for a full tax year. Even if I live in a tax free country for a full tax year or 330 days out of any 12 consecutive months, the first $90k+ are tax free. I think that is reasonable, given all that being an American citizen or resident will benefit me even while abroad (embassies, defense, etc).

[http://www.irs.gov/businesses/small/international/article/0,...](http://www.irs.gov/businesses/small/international/article/0,,id=96817,00.html)

</comment></comment><comment><USER4> I'll swap you my UK passport for your US one :)</comment>


The Story of Mel (unsung genius from when programmers were men)  - <AUTHOR> http://www.jargon.net/jargonfile/t/TheStoryofMel.html <comment><USER2> Mel seems to come up every few months :-)

<http://searchyc.com/story+of+mel>

<comment><USER3> Which is as it should be. :)

</comment></comment><comment><USER4> I don't think he can be called unsung given the frequency at which his story shows up on sites like hn and reddit...

<comment><USER5> Has anyone ever tried to track down "Mel"? Not that I doubt the veracity of the story, it'd just be interesting to read an interview with the guy, if he's still alive.

I guess if he was programming in the late 50s odds are against him still being around, though.

<comment><USER6> <http://en.wikipedia.org/wiki/Mel_Kaye> .

</comment></comment></comment><comment><USER7> Title is on the sexist side and exclusive of female programmers. To a female reading this, you would be glamorizing the time when they weren't in this field.

You can glorify past events without being sexist. Try setting up a true scottsman.

<comment><USER8> > To a female reading this, you would be glamorizing the time when they > weren't in this field.

Are you one of the offended females or a "white knight"?

<comment><USER7> Exactly how is that statement not sexist?

</comment></comment></comment><comment><USER9> While there are many tales of retro-computing, ROMs to download to play old favorite games, articles about "the good old days", and links to computer history museums, this is by far and away my favorite. And the things mentioned in it predate my career by a good bit. All hail Mel!

</comment><comment><USER10> I'm not voting for this only because I've seen it on HN before, but if you haven't, it's a true must-read.

</comment><comment><USER11> I had written a blog entry inspired by this article (but not entirely related to it)

[http://lifeasparesh.blogspot.com/2009/09/my-obsession- with-y...](http://lifeasparesh.blogspot.com/2009/09/my-obsession-with-your- nostalgia.html)</comment>


Ask HN: Recommendations on Android outsourcing company? - <AUTHOR>

We're dealing with the challenge of managing iOS, Android, WindowsPhone for an app we have.  And we're thinking of expanding to the web.  It's a handful managing all the people.
PG wrote today (http://news.ycombinator.com/item?id=4332278), "To most startups we fund, iOS is way more important. Nearly all build for iOS first and then maybe one day port to Android. There are a few exceptions like Kyte (http://kytephone.com) who use Android to do things you can't do on iOS. And of course Apportable (http://apportable.com) has been very successful auto-porting iOS apps to Android."
It got me thinking of maybe focusing our team just on iOS, and then porting our app to Android via an outsourcing company.
I'm wondering if there's a good Android outsourcing company that HN companies prefer.  Or if anybody else has any suggestions? <comment><USER2> Plugging ourselves at intohand.com (I am one of the founders) we have been involved with the Android scene before there was hardware, I personally have given talks and workshops at Droidcon and the Future of Mobile, we have several successful apps and can assist with iOS, Blackberry, Qt and pretty much any other mobile platform you care to mention apart from WP7

Email is in my profile, if you would like to chat more

</comment><comment><USER3> Might as well plug myself too. I build primarily on Android as my apps are free and it has the larger user base (and I love Android)

I mainly do client work on iOS, though my next big self funded project will be on both platforms.

Contact form and more details about me are on my website - <http://jamesjguthrie.com>

</comment><comment><USER4> I'll go ahead and plug my consulting company Androidworks. We are a strong team specializing only on Android. We've done several iPhone ports making sure to convert the UI into the appropriate Android design patterns. We take pride in writing quality code and would love to hear about your project. My email is in my profile, drop me a line anytime.

</comment><comment><USER5> What about building the app using mobile web application and deploying the app using Cordova (ex PhoneGap) ?

</comment><comment><USER6> I'll throw in a recommendation for my $DAYJOB employer, Open Software Integrators (via their Bull City Mobile subsidiary).

<http://www.bullcitymobile.com/></comment>


Trying to Buy a Town with Ethereum - <AUTHOR> My colleagues and I are attempting to crowdfund the purchase of a town with an Ethereum smart contract.<p>You can find the contract source code and additional information here: [link redacted] <comment><USER2> To pick one of many red flags: if they bid for the town and lose to a higher bidder (price might be around $2M), "There is no refund mechanism coded into the contract per se; this does not mean refunds will never be possible, though."

That seems like the sort of eventuality one should think through in advance.

</comment><comment><USER3> So, if someone donates more than me, then I would lose my patron status and do not get donation back?

It is possible to donate more than someone and still not be patron, e.g:

1\. I donate 1000 eth, become patron #1.

2\. Someone donates 1003 eth, he becomes patron #1, while patron #1 (me) is just forgotten (does not become patron #2).

3\. Let's say places #2 and #3 already occupied too with donations of 999 and 888 eth.

4\. I donate another 500 eth, so my total contribution now is 1500 eth, but I still do not make it into patrons list, despite I have donated more than anyone else.

5\. Sad. Cevfefe.

<comment><USER4> It also seems to be based on the account balance of the patron, not the amount they contribute.

<comment><USER3> You are right. The code does not stand any critique.

<comment><USER5> It does not. But my team has at least established that interest exists, and we are actively working on a new contract, stay tuned!

</comment></comment></comment></comment><comment><USER6> Is the "binding arbitration" section a common thing in Ethereum contracts? IANAL, but it seems like participants are agreeing that if shit goes sideways they (#1) can only seek arbitration which (#14) they have to pay for which can (#12) not pay money damages - and which (#9) they're never allowed to talk about.

</comment><comment><USER7> Why not convert to USD after a token sale and use that money to buy the town? Smart contracts are a solution searching for a problem. To date no one has done anything even remotely impressive with smart contracts except lose tons of money.

</comment><comment><USER5> Thankfully, people have torn this source code to shreds. The good news is, the constructive criticism will allow me to update the code and release a new contract by the end of this weekend, stay tuned! Thank reason for open-source code!

</comment><comment><USER8> Funny, I just stumbled upon that real estate listing the other day and live in the northeast. Is there anyway to reach you to hear more about the project? Crypto real estate crowdfunding is super interesting!

<comment><AUTHOR> Send me an email at [address redacted]. I'd love to network with other interested people!

</comment></comment><comment><USER9> Is that the entire plan? Purchase a town with Ethereum?

I think our president at least supplied a bullet pointed one-sheet with his tax plan.

</comment><comment><USER10> What will you do with it?

<comment><USER5> The town should basically be a cryptoanarchist haven. We could put in servers, run fiber optic lines, set up mesh networks, the possibilities are endless. Basically if we're the local government, we don't have to deal with the red tape involved with having a local government

<comment><USER11> Tax in Bitcoin or other crypto currencies. Native IPv6. Symmetric fiber internet connection. Count me in.</comment></comment></comment>


Emacs & the birth of the GPL - <AUTHOR> http://www.h-online.com/open/features/Emacs-the-birth-of-the-GPL-969471.html?view=print

<comment><USER2> This is a fantastically dishonest account of the story; ask if you want something more approximating the truth.

Although there's one bit of libel I don't want to go unchallenged: "Russell Noftsker, who had left the Lab in strained circumstances back in 1973...."

"strained circumstances" as in taking the fall for an act of fraud committed by two people who it really was best to keep out of Federal prison, despite their attitude that the ends justify the means.

It's also worth pointing out that for the founding Symbolics hackers excluding Greenblatt and Stallman from the company was a non-negotiable. There were always going to be two Lisp Machine companies as long as Greenblatt managed to start one up.</comment>