Processing for Android - <AUTHOR> http://wiki.processing.org/w/Android

<comment><USER3> Anyone else hoping this will eventually allow coding on the device itself?

Of course someone would have to come up with a more programmer-oriented virtual keyboard. I've already messed around with using bash and python without a physical keyboard and you really want easier access to all your punctuation and braces.

<comment><USER4> I've been thinking about this on and off for a couple of years. I reckon there's a case for a highly syntax-directed touch-based editor for scripting on these devices. Freeform text is too awkward.

Imagine the program as a tree of nested boxes: a leaf node / box for each single-line statement, an inner node (= outer box) for compound statements. Introduce some modalities: insertion between nodes, selection of node subtrees. Edit and create nodes using aggressive code completion. Complete initial keywords, consider using 'let' and 'call' or equivalents for assignment and invocation expressions (avoids starting statements with an identifier). Complete identifiers aggressively, starting with params, locals and most-recently-used, being able to browse up into an outer scope, possibly converting long lists of potential identifiers into Patricia trie navigation to avoid laborious scrolling.

A typed language would probably be better, though with inference wherever possible, because completion has much higher quality there.

<comment><USER5> What I imagine will be most annoying about programming on a mobile device is the amount of scrolling needed to move around the code. Sometimes I find my 17" laptop screen too small, so a phone seems unusably small.

<comment><USER6> You are so right. Seriosly, I would never, NEVER code on my Android phone. And why should I? It is a small device with a small display and small keys - <USER2> would not like to search for a specific line of code in a 2000 LOC document.. seriously. I am a CS guy, so I have my laptop around me most of the time when I feel like I need to code something. That's far enough I think.

<comment><USER4> When I was a kid, I sometimes went to toy shops during school lunch hour and coded BASIC on a toy computer with one LCD row of text (couldn't afford a home computer).

Why would one want to code on an Android device? Not everyone uses laptops all the time. Laptops need to be lugged around (even though mine's a Toshiba Portege, and is lighter than most at ~1.2kg, I seldom bring it anywhere), opened up, resumed (takes a second or two), balanced on a knee (so you need to be sitting), etc. Hard to do when you're e.g. waiting in a queue, walking in the countryside, lying in bed (without rearranging pillows, sitting up, lighting up the room from the screen, fans and light disturbing your significant other, etc.)

And then there's the idea that you're writing programs for your device without the need for a deployment stage. You're running them right there on the device. No need to faff about with cables, or build / deploy steps.

As to lines of code, in a structure-oriented editor, I think that would not be relevant. I would imagine program navigation to be spatial with drill-down, up and out; all identifiers are hotlinks to their definitions; MRU lists and the same Patricia trie technique, or incremental search, for more random access, etc.</comment></comment></comment></comment></comment>


Would you switch to Coda2? - <AUTHOR>

Personally I prefer vim or sublime2 over fancy. <comment><USER2> Oh not this again. If you prefer vim or sublime2 as a matter of course you are not even remotely within the target audience of Coda - so I suspect this is just another invitation to yet another round of "I'm a badass and you're all pansies". I apologize if this wasn't your intention but it certainly comes across as such.

But since you asked, I need an editor with good syntax highlighting and very good SFTP support. I practically don't care about anything else. Code completion, in-editor documentation, refactoring tools - all that doesn't matter to me. I don't care if Coda is considered "fancy", it does those two basic things for me and it does them well. It does them better than skEdit or anything else that I used before. vim, sublime, or most other "hardcore" editors don't or do them poorly or do them only with badly bolted-on plugins.

I believe this is true for many programmers (maybe not the most vocal ones though), they want something done and they don't really care if the software that does it is publicly ridiculed as a children's toy. The easiest way to score points with a certain kind of crowd is to publicly proclaim "vim all the way baby" and then privately open a Coda window to get some work done.

</comment><comment><USER3> Let me preface this by saying Coda 2 is a great development tool, assuming that it works the way that you like work. Personally, it doesn't fit into my development workflow. Coda 2 wants to be a one-stop shop for all of your development needs. So, if that's what you want in a text editor then I would definitely recommend you try it out.

I, personally, do not work that way. I want my text editor to be as absent as possible. I want it to correct indentions and maybe auto complete tags as I go. I want to FTP everything myself. I want to preview the site in Safari and Firefox. I want to use SSH through terminal and Git through GitHub. That is where Coda 2 and I do not agree. Coda 2 is full of amazing features with a fantastic implementation that is too bloated for my needs. However, that comes down to how you want to use your text editor. For me, TextMate and BBEdit are the only editors I will ever use.

</comment><comment><USER4> As someone that works on Rails projects almost all of the time, no, for a few different reasons.

1\. Coda (1+2) are geared towards one file = one file output to preview. Obviously Rails doesn't work this way.

2\. Starting a project from the CLI, I often open it in Sublime 2, TM, etc from the same window. I don't see the value of adding all my settings for project folders, remote servers and git details a second time in Coda, when they're all in the folder already. I deploy everything on Heroku and store them on Github.

3\. Haml, Scss and Coffeescript largely eliminate the need for validation. If your code is wrong, they won't compile it.

4\. Keyboard Shortcuts. I use Sublime on a MBA without a mouse or trackpad most of the time. I much prefer working through shortcuts than I do by clicking on stuff, which the majority of the Coda UI is geared towards.

5\. Quick Open/Peepopen. I saw nothing about Coda 2 having this. It's absolutely necessary IMO. All text editors should follow the same behaviour as Peepopen, something that Chocolat doesn't do (but it should).

Coda is a great editor for designers and for lightweight PHP devs, but I don't see it's value for people who spend all day looking at code.

</comment><comment><USER5> As someone who recently switched to Mac, I tried Coda first. It was looking beautiful and everything, but stops at being just that. Beyond eye-candy, I could not use it much - after a month of dabbling around with many editors, I have now settled for Sublime2.

<comment><USER3> I would definitely recommend TextMate and BBEdit. Or even Chocolat which is still in development.

<comment><USER6> Definitely recommend sublime text 2. Currently nothing comes close.

<comment><USER7> I bought licenses for Coda2, TextMate, and Sublime Text 2.

I haven't opened TextMate in months. ST2 I use every day on every machine - including my Windows and Linux machines at work, and my Mac at home.

Also, the Vintage plugin gives me close-enough vim commands to navigate and edit, and can be toggled with a keystroke.

I'm in heaven.

Coda2, is nice for design and live preview on the iPad is crazy cool, but the keyboard shortcuts feel very ergonomicly awkward and it doesn't seem to have the incredibly useful 'list all commands in fuzzy search' thing that TextMate and ST2 do so well.

I use Coda2 when I'm messing with CSS, but for everything else, it's ST2.

</comment></comment></comment></comment><comment><USER8> If I was using a similar product and Coda2 provided more/better features, maybe. Since I'm not, no.

I've downloaded it yesterday out of curiosity but I didn't expand the archive. If my general lack of interest for the Panic hype machine is a good indicator, I suppose it will stay untouched in ~/Downloads for some time before going straight to the trashcan.

But why do you ask? Are you going to switch if enough HNers answer yes?

</comment><comment><USER9> Since i've committed myself to invest and learn emacs i no longer worry about editors. Like the book Pragmatic Programmer book suggests, pick one editor that is extensible and be very good at it. Emacs was just my choice. Any editor is good. Just learn it well.</comment>


Show HN: Craigslist Notifications (Chrome Extension) - <AUTHOR> http://www.craigshunter.com/ Here is my last weekend project that turned into useful extension. Basic version (Chrome Extension) will always be free and I will try to make money charging for SMS notifications. <comment><USER2> Cool. Want a job at craigslist? (I work on search there.)

<comment><USER3> Is craigslist officially okay with this kind of app? Prior attempts to automate, with varying degrees of aggregation/automation, have been shut down (see: [http://www.wired.com/entertainment/theweb/magazine/17-09/ff_...](http://www.wired.com/entertainment/theweb/magazine/17-09/ff_craigslist?currentPage=all)). The "SMS coming soon for $3.99" seems like it would not fly.

<comment><AUTHOR> From what I understand, Craigslist is cool with client-side automation (look at numerous Android and iPhone apps that query Craigslist).

<comment><USER4> I'm also working on a Chrome and Firefox extension which uses Craigslist as a data source, and this is my understanding as well

I think that rich client-side js apps packaged as browser extensions offer some interesting opportunities in general - being able to behave more like a normal client, instead of a giant aggregation host, allowing you to avoid angering services like Craigslist, being able to ask the user for permissions for increased localstorage limits (the default in most browsers is a measly 5mb) and the ability to do cross-domain ajax requests, etc.

</comment></comment></comment></comment><comment><USER5> If this thing does anything to de-dupe, it would be a must-have, would-pay- for-it app.

Trying to use Craigslist to find a new apartment means sifting through the same listings, posted day after day after day. They lower the signal/noise ratio a great deal.

<comment><AUTHOR> Interesting idea. Are these posts are exactly the same or do they have different title/message?

</comment></comment><comment><USER6> You should charge money for the more advanced features (eg: auto email)</comment>


Help test the alpha release of ScienceHack.com - <AUTHOR> http://sciencehack.com/ <comment><AUTHOR> ScienceHack is a search engine for science videos. I`d love to hear your thoughts on the user interface and functionality. Thanks, Rami

<comment><USER2> Please make a logo :P

<comment><AUTHOR> Yes, soon. The current logo was creatively designed in Paint :P

<comment><USER2> I just spent a minute making this, you can use it if you want.

<http://images.redial.net/sciencehack.png>

<comment><AUTHOR> Thanks Kyro.

</comment></comment></comment></comment></comment><comment><AUTHOR> New updates with more ajaxy goodness</comment>


Why Don't We Just Nationalize the Internet? Shouldn't It Be a Public Utility? - <AUTHOR> http://www.techerator.com/2010/12/net-neutrality-a-lose-lose-situation/

<comment><USER2> I literally can't think of a worse idea.

</comment><comment><USER3> A ridiculous article. The author doesn't understand net neutrality. NN does not ban usage-based pricing plans, for example.

To most techinical people (read: people who know how the internet works), NN only means that you cannot discriminate based on location, destination, or type of traffic.

That leaves bandwidth pricing intact, which would allow Comcast to charge people based on how much they use the evil, parasitic Netflix service.

If ISPs think they deserve more money, then they need to charge more for access, or cap data usage. They shouldn't block or degrade certain protocols and websites with prejudice.

What they SHOULD do is get off their asses and build out infrastructure instead of whining about capacity requirements.</comment>


Nunjucks – A rich and powerful templating language for JavaScript by Mozilla - <AUTHOR> http://mozilla.github.io/nunjucks/ <comment><USER2> I love me some Python/Jinja/Flask/CherryPy, but after having written JS apps in React that run seamlessly on the client and the server, I can't imagine going back to something like this. The best case scenario, you have to maintain a JS port of your app to support rendering your Jinja templates on the client. Or, you can just use Node, Webpack, and React to serve a single codebase that renders on either end. Save Python for your data API.

<comment><USER3> Why is the top comment on Hacker News always a nay-sayer? Not everyone is working on greenfield projects. Nunjucks is a huge improvement for many large codebases.

<comment> ezequiel-garzon Well, right now there are three top-level comments, and the one you refer to is the only one of those presenting more than a sentence. Also, it seems to be no longer ranked first.

In any event, I must say I like this kind of comments: a bit opinionated but putting forth some rationale, and hence inviting a healthy exchange of opinions.

<comment><USER4> > and hence inviting a healthy exchange of opinions.

There is no "inviting a healthy exchange of opinions",he is basically just trashing the project.There is nothing interesting in what he is saying,though he's free to say whatever he wants.Proof is the answers to his comment.

</comment></comment></comment></comment><comment><USER5> What I'd really like to see would be a nice templating language that recognizes and takes advantages of the regular structure of HTML rather than just treats it as a giant string. Can you imagine writing a program using string templating rather than functions, objects and libraries? Sure, it would be possible, but it would be rather awkward...

The closest I've seen to what I want is DRYML: [http://hobocentral.net/manual/dryml- guide](http://hobocentral.net/manual/dryml-guide)

The big advantage of DRYML over systems like React & builders is that it has a really nice story for customization. Rather than customizing just through XML attributes, it also has a system for passing in snippets through XML children. But not just snippets for the top component, but but snippets for children of the components you're instantiating.

This has huge advantages for reusability. There are millions of jQuery widgets out there. How come you never use any of them? They never fit the style, behaviour nor requirements of your app. Yet on the server side, you pull in tens of gems, npms, etc from random authors.

DRYML allows customization in both the small and the large. It works well for both defining and customizing <a> tags as well as huge custom components. That huge custom component will use your customized <a> etc, so it automatically picks up your theme and behavior.

DRYML has some major disadvantages though: it's really nice to use, but defining new components looks like line noise. It's also tied to a heavyweight, lightly used framework for Ruby on Rails called Hobo.

One of my many projects abandoned due to lack of time is a port of DRYML's "standard library" Rapid to React. React isn't quite as nice as DRYML for re- use and customization, but it has a large number of advantages in popularity, speed and readability. If anybody else is interested in the project, give me a shout.

<comment><USER6> There were a whole family of older template systems that worked on this model. They suck because in practice they are much more restrictive, difficult to work with, and in most cases inefficient, since fundamentally they are working in the domain of a fully parsed node graph, instead of simply being lightweight control structures for basically memcpy().

See e.g. [https://en.wikipedia.org/wiki/Template_Attribute_Language](https://en.wikipedia.org/wiki/Template_Attribute_Language)

On the flexibility front, the same template language (and especially ones with good whitespace control, e.g. Jinja2) can be used for any text-like format. If browser or device quirks force you to emit invalid XML to trigger some desired behavior, you don't end up in a fight with your perfectionist templating system (and probably resorting to regexes over its output) to achieve the desired result.

I'd say (and probably, a younger version of myself turns in his grave as I say it) that in this case, worse turns out to be much better.

<comment><USER7> TAL as it was implemented for ZOPE was a total abortion (especially when they threw in other crap to make up for its gaping weaknesses like TALES, METAL, and those goofy expression what were not anything like any other language, plus "acquisition" which was a terrible and useless approach to scoping). The ZOPE stack's approach to templating and scoping and components and their entire way of thinking about it was totally demented and wrong headed. I used it a lot in my wild and crazy ZOPE days, and I hated it then and won't ever go back.

On the other hand, there are other similar attribute based xml templating languages that are much much better, because they didn't try to reinvent the wheel out of tapioca and rusty iron filings, but instead they simply acted as a thin veneer over Python, so everything you knew about and could do in Python applied without any distortion or unnecessarily creative reinterpretation.

Specifically, TurboGears used the "Kid" templating language, the next generation of which was re-implemented as "Genshi". I have used both extensively, and although they do have some problems and limitations (many of which Genshi addressed), I really like them a lot, and they are easy to use and think about, and not so full of surprises and disappointments as the horrible stuff from ZOPE that they (distantly) descended from. I've used Kid and then Genshi in large template-heavy projects over many years, and I still use Genshi and like it. It is actually quite elegant and minimalistic, and super easy to learn.

[http://genshi.edgewall.org/](http://genshi.edgewall.org/)

Genshi operates on pure clean XML internally, has real Python loops, conditionals, variables, functions, parameter passing and extensibility, and has plug-in serializers for various formats like XML, XHTML and HTML5, that know about all the formatting rules and conventions and browser quirks and superstitions like <BR />, and never produce incorrectly quoted or formatted content. You can also use it to product plain text as well as markup.

</comment></comment></comment><comment><USER8> > "Nunjucks has allowed us to port all of our existing templates from a Django > project to something that's easier to manage.

why is it easier to manage?

</comment><comment><USER9> Looks exactly like swig. Only the async operations are new.

[http://paularmstrong.github.io/swig/](http://paularmstrong.github.io/swig/)

<comment><USER10> That's because both are Jinja reimplementations (given the name, I expect Swig is a JS version of Twig[0], itself a PHP implementation of Jinja, and originaly started by Armin Ronacher — Jinja's author[1][2])

[0] [http://twig.sensiolabs.org](http://twig.sensiolabs.org)

[1] [https://github.com/mitsuhiko/twig](https://github.com/mitsuhiko/twig)

[2] [http://fabien.potencier.org/article/34/templating-engines- in...](http://fabien.potencier.org/article/34/templating-engines-in-php)

<comment><USER9> Yes I figured that out. I just don't understand why this has to exist. It's adding nothing noteworthy and very likely not faster either.

By the example of async which initiates value lookups... it can only be slower and promotes the bad habbit of putting too much logic into views.

</comment></comment></comment><comment><USER11> It would be interesting if the templating languages stopped being "for X programming language".

I'd like to see a sane templating language that is based on a spec and it could be supported under different programming languages.

<comment><USER4> > that is based on a spec

No,because your spec wouldnt suit everybody and you'll end up with 20 other specs. That's why there is not just 1 programming languages.Because silver bullets dont exist.

<comment><USER11> There's no problem with 20 other specs.

I didn't mean spec as in a universal standard.

I meant a language that defines its syntax and functionality as a spec so it can be implemented in the same way in many languages so you can pick your favourite flavour and use it in as many languages as you want without surprises.

So given the template 'T' and template context 'C', you could always produce the exact same output regardless of whether you used javascript or python (assuming the libraries implemented the language based on the spec).

The spec doesn't mean it has to be a silver bullet, it will be a single bullet and there will be many bullets, but whatever bullet you pick, you can use it in more places.

</comment></comment></comment><comment><USER12> On the surface, this looks very similar to Twig, a PHP template engine also inspired by Jinja.

[http://twig.sensiolabs.org/doc/templates.html](http://twig.sensiolabs.org/doc/templates.html)

</comment><comment><USER13> Is this string templating? I can't find anything about that on the site. (I'm guessing it is, if it can run on the server and the client.)

</comment><comment><USER14> This reminds me a lot of the template language in Django.

<comment><USER2> Jinja is a reimplementation of the Djano language (but improved). This is it's JS port. It's a spiritual successor to Django, ported to JavaScript.

<comment><USER15> This is its JS port.

</comment></comment></comment><comment><USER16> Another "ninja" name, pushing programming toward stereotypically "dude/violent" interests for no reason.</comment>


Ask HN: Good Postgres Native Clients? - <AUTHOR> I was using mainly mysql where sequel pro was great, i switched recently to postgres and the clients are lacking, pgadmin3 and pgadmin4 are lacking features or running inside browser (slowly). DBeaver is not missing features but is heavy and slows my whole machine (4core 2017 macbook pro).<p>Is there a fast alternative (i haven't tried paid options). <comment><USER2> Postico ([https://eggerapps.at/postico](https://eggerapps.at/postico)) and TablePlus ([https://tableplus.io](https://tableplus.io)) are the best ones.

</comment><comment><USER3> I've been using Table Plus and like it so far [https://tableplus.io/](https://tableplus.io/)

<comment><USER4> Thanks, just bought a 2-computer license.

</comment></comment><comment><USER5> Dbeaver is the all-around best tool. If it's slow, there might be an issue with your java install and configuration. Try reinstalling that first.

Other options are JetBrains DataGrip, HeidiSQL, TablePlus, and Navicat.

</comment><comment><USER6> pSequel is a free option but best for reads and not writes.

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

</comment><comment><USER7> Datagrip is a great database IDE.

</comment><comment><USER8> psql</comment>


Technology companies have their eye on Africa. IBM is leading the way - <AUTHOR> http://www.economist.com/news/business/21571889-technology-companies-have-their-eye-africa-ibm-leading-way-next-frontier

<comment><USER2> If you enjoy these kind of articles check out <http://AfriTech.org> (this is where I found it and submitted here, but someone else beat me!) See about page: <http://AfriTech.org/blog/about>

<comment><USER3> Meta for those interested: Based upon the format, it apparently uses a version of the HN code base.</comment></comment>


Decentralized Reddit using a DHT to store content and a blockchain to rank it - <AUTHOR> http://www.slideshare.net/lmatteis/kudos-a-peertopeer-discussion-system-based-on-social-voting <comment><USER2> Re: the hosting of topics/subreddits in the DHT, I've done quite a lot of research [1] into a very innovative yet not well known P2P publish-subscribe network design [2] from some Norweigan computer scientists that removes the role of hosting for nodes not interested in a topic, even designing a decentralised microblogging platform on top of it [3].

It's called PolderCast, and the way it works is that it models subscribers of a topic as a ring, and then uses 3 different overlay networking modules to efficiently constructing the network (a basic gossip one, one that finds nodes with intersecting interests, and then a final one which constructs the neighbours for a node in the topic ring). Thus, only subscribers of a topic are responsible for hosting, in contrast to a DHT where every node would be (even for questionable content that they may not agree with).

[1] [http://liamz.co/wp-content/uploads/2015/03/Computer- Science-...](http://liamz.co/wp-content/uploads/2015/03/Computer-Science- Extended-Essay_Liam-Edwards-Playne.pdf)

[2] [http://acropolis.cs.vu.nl/~spyros/www/papers/PolderCast.pdf](http://acropolis.cs.vu.nl/~spyros/www/papers/PolderCast.pdf)

[3] BitWeav [http://liamz.co/wp- content/uploads/2015/03/whitepaper.pdf](http://liamz.co/wp- content/uploads/2015/03/whitepaper.pdf)

<comment><USER3> I have an idea for a federated blockchain to support a subjective crypto currency. So each coin's value is unique and determined by whoever might be trading it. The way that knowledge of the network state will flow looks like boosted gossip, maybe similar to PolderCast layers.

Here's a user's eye view of it: [http://thenewstack.io/why-art-could-become- currency-in-a-cry...](http://thenewstack.io/why-art-could-become-currency-in- a-cryptocurrency-world/)

</comment></comment><comment><USER4> One question; what protections are in place to prevent some of the problems which plague user aggregated links (which are selected/ranked according to votes)? Is there any anti-vote cheating mechanisms in place? Anti-Spam measures?

One of the biggest problems that digg (RIP) and reddit have been fighting is organized groups of people (and/or their sockpuppets or network of bots) voting up their own links. Everything from SEO companies, marketing agencies to just plain old greedy spammers all attempt to game the system. There's quite a monetary incentive to reach reddit's front page and people have been abusing the system for over a half a decade now. What keeps those people in check, those who discover ways around or through their automated anti-vote cheating code (which is the majority), are the moderators. They're the fail safe. Having the entire thing decentralized removes the mods from the equation and your fail-safe as well. That's the problem; removing the mods may give you slightly less censorship, but you're not accounting for all the good things that come with having mods.

I don't mean to be cynical about this, but I do know _for a fact_ this will never be more than a small experiment. I know this because if this ever got popular, I'd abuse the shit out of it myself and I have little to no incentive too. I can't even begin to imagine the abuse level from people with an actual motive.

<comment><AUTHOR> You can only abuse it as long as you have points. With Reddit (or systems like it) you have no limits - for instance, you could upvote all content on the front-page every hour. On the other hand, with this Kudos system, you would run out of points rather quickly if you did that.

I agree, as others posted in this thread, that there are many other problems that need to be addressed. Frankly I don't know if a p2p network system can even be built to address all issues - social voting networks based on reputation are rather complex.

However I hope to have shed the light on some interesting properties that can be achieved by combining the decentralized aspects of DHT keys, with the consensus features of a blockchain. Moreover, the idea of of using cryptocurrency tokens, for things other than currency, is a field that needs to be explored more.

<comment><USER4> > You can only abuse it as long as you have points.

You seem to be implying that this is some sort of road block or hurdle for those interested in gaming the system. Unfortunately, it's not even a speed bump. I think you underestimate just how resourceful and clever these people are. I'm a mod of a few large subreddits on reddit and I can assure you, "having points" is no more a hurdle to them than saying "on reddit, you have to have an account to vote".

</comment></comment></comment><comment><USER5> What I don't see covered is the following problems:

1\. Do people have to buy points from miners? 2\. What prevents someone from buying lots of points to promote their content?

<comment><USER6> 1\. Not sure.

2\. It looks like the transaction sizing rules make it _exponentially expensive_ to upvote multiple times.

<comment><USER7> Could you elaborate on how it is exponentially expensive? I don't see how that would work. If 100 people are allowed to vote on a topic with this system, then one person with 100 sock puppets should be able to vote on a topic, as there isn't a technical difference.

<comment><USER6> It looks like funding all those sock puppets with coin would cost lots of money.

From the slides:

      Sending 10 points to someone would require 10 addresses
      with at least 2 points each. Creating 10 addresses with
      2 points each would require 10 transactions of 4 points
      each, meaning 40 points.

Those 10 addresses require the same funding amount whether from sock puppet accounts or from one account.

Perhaps it's not exponential though.

<comment><USER5> Well to acquire a point you can use in voting would have to get one from a miner. That would be the same, no matter if you are a real person or an advertiser/spammer. Unless you gained points before with your own content.

Even if the price would be 4x the amount of the cost of other votes, it can't be a deterrent because 4x a little amount is still a little amount. If a vote costs 1 cent then the spammer would pay 4cent. Not a big deal.

</comment></comment></comment></comment></comment><comment><USER8> You do not need a blockchain to do this. If you can represent something using an append only data structure, a DHT is enough.

<comment><USER9> > If you can represent something using an append only data structure, a DHT is > enough.

Can you elaborate? Is the blockchain not an example of an append-only data structure?

<comment><USER8> A block-tree would be append only. The blockchain is a block-tree + a canonical leaf (or a head) which is a mutable variable.

[https://medium.com/@arthurb/what-do-blockchains- accomplish-e...](https://medium.com/@arthurb/what-do-blockchains- accomplish-e9a5efa246bf)

</comment></comment></comment><comment><USER10> Self-censorship and censorship by others will continue to hamper online discourse until people feel safe from reprisal. A decentralized P2P discussion system would be a huge step toward this goal. I've been following Ethereum for a while now; have you considered using the platform to build this as a dapp?

</comment><comment><USER11> Some additional details: [http://lucaa.org/docs/kudos.pdf](http://lucaa.org/docs/kudos.pdf) [https://bitcointalk.org/index.php?topic=1148175.0](https://bitcointalk.org/index.php?topic=1148175.0)

</comment><comment><USER12> This is clever and interesting, but I'm not sure it addresses the central problem.

Reddit made the news in the last year for some (mostly unfair) claims of censorship. However, rather than directing censorship which the plebes had to accept, the social pressure from the plebes necessitated these overt acts. For weeks afterward with FPH, we kept reading comments like "well, what about coontown?". These commenters may have felt they were being ironic, or espousing fairness (hey, what's good for one is good for the other), but the collective/aggregate effect was to clamp down even further. These same people are the ones who were able to push Reddit's management in that direction in the first place.

These people won't disappear if you implement blockchain-reddit. (Though, there's probably a plausible argument that they might stay away.) There will be no blockchain-reddit management to pressure into overt censorship, but they ruined reddit long before they got that far. They'll ruin this too. Downvotes are, after all, a "fuck you" and not a "you're fallacious". Disagreements are, after all, evidence that the other person is wrong/stupid/uncool, and not a difference in perspective.

The problem is people, and there is no computer science fix for that.

</comment><comment><USER13> Doing the same technology for political ideas would be an interesting experiment of new form of people driven democracy.

Lets see hackers invent decentralized currency, hackers invent decentralized government democracy 2.0, people encrypt all their data and decentralize communications.

reboot

<comment><USER14> So people's level of input into political decisions will be directly tied to the amount of money they're willing to spend?

Sounds like it would pretty much legitimise the problems with the current system. Or maybe I'm missing some key part here?

<comment><USER15> There will never be a human power structure that avoids catering to the powerful, whether expressed with money or some other proxy. The most you can hope for is that the structures also make catering to the non-powerful worth doing.

<comment><USER14> So do you think a system based on buying votes on the blockchain would make catering to the non-powerful worth doing?

I don't.

</comment></comment></comment></comment><comment><USER16> The DHT is good, although I wonder whether the routing is centralized through relying on DNS, or whether it's completely decentralized.

What is the point of the blockchain, though? Is it just to avoid a double spend problem? Proof of work is terrible now for new blockchains because people have rigs that can easily execute a 51%+ attack and destroy the network. It needs proof of stake, which becomes better the more participants there are. But proof of stake has a more centralized character not unlike a website with moderators controed by the initial host.

Isn't there a better way these days to prevent sybil attacks? All you need is to make it very expensive to make more than one account. How do you do that? You take what 99% of people have one of (such as their body, or their house, or their cellphone) and have them prove they own it. But that defeats anonymity, doesn't it?

Isn't there anything that people have only one of, can prove they own it, but doesn't reveal their identity?

Someone should implement this. THAT would be the real way to prevent sybil attacks.

</comment><comment><USER17> The problem I see with this is that there's no moderation. Moderators are usually the difference between a good and a terrible subreddit.

<comment><USER18> 1\. Blockchain. 2\. ??? 3\. Profit.

</comment></comment><comment><USER19> Reading stories like this makes me always wonder what's wrong with NNTP? Can be decentralized and federated, just run your own server.

<comment><USER18> NNTPs exact problem is that it works.

It's like if you decided to start making CPUs out of silicon on a RISC architecture, that's boring because it likely works and is a simple way of solving the problem of computation in a fast way. Essentially any idiot with sufficient engineering know how could do this.

However, rather than buy a CPU for a few dollars and get down to the business of computing you could start making logic gates out of balls, water, or something wholly unsuited for computation, and then try to build a CPU on top of that. At that point you'd have something very impressive that solved no problem people actually had before that point. And everyone who bought a CPU would look and think, why make all that fuss to do slower what we had been doing for years before?

</comment></comment><comment><USER20> I was hoping it would use something inspired by NNTP, since "decentralized Reddit" is basically Usenet with voting.

<comment><USER21> I had an concept once for a decentralized reddit-like that used NNTP to distribute content and an inflationary cryptocurrency to store karma. The idea was that karma is only valuable while the thing that is generating it is relevant. If you wait long enough, your "karma-coins" will be, essentially, worthless. The deflation of your coins is dependent on your average net-worth over some period of time and the state of the global economy. (Maybe?)

I got busy with work, so I never got into the implementation stage, but it is on my backlog. Hopefully I get to it some day.

</comment></comment><comment><USER22> Do they say anywhere what mining scheme they're considering? It seems a weakness of this scheme would be the distribution of points. If they have a scaling difficulty similar to bitcoin, it seems possible that early adopters could wind up with vast quantities of points which late adopters would be starved for, allowing them to control what content is rewarded and published for a goodly while, impairing the initial attractiveness of the platform.

</comment><comment><USER23> Sounds like a great idea, although I fear people may stockpile points in order to promote their own material later.

<comment><USER7> Why is that a problem? The person got a lot of points because people liked this persons contributions. People with more reputation should be allowed to post more.

<comment><USER4> The problem is promoting quality content people want to read. What if hackernews was just all viagra ads from spammers? Would you be fine with that? I sure wouldn't. That's the problem. Instead of quality content making it to the top or 'front page', people who pay the most can make it to the front page regardless of content quality.

</comment></comment></comment><comment> Ono-Sendai Using the blockchain for something like this is a total waste of energy. Just run it on a single fast server. (or a small cluster)

<comment><USER24> Wouldn't that then make it centralized? I think the point is to make a reddit wherein censorship - beyond voting bombs - can not be enacted.

<comment> Ono-Sendai Yes. Centralisation is just much more efficient in this case. (and maybe in all cases?)

<comment><USER6> Much for efficient, yes. But also much less decentralized, which is the point of this presentation.

</comment></comment></comment></comment><comment><USER25> Sounds like hosting on maidsafe would be a secure option, once it's ready anyway.

</comment><comment><USER26> Interesting, we're doing something similar with Open Publish, Bitstore, and a couple of DHT backed delivery systems, namely IPFS and BitTorrent.

Content is published by registering a SHA-1, BitTorrent InfoHash, an IPFS key and a URI pointing to the content on the Bitcoin blockchain.

[https://github.com/blockai/openpublish#register-media- with-a...](https://github.com/blockai/openpublish#register-media-with-an-open- publish-transaction-posted-to-the-bitcoin-network)

Payments or tips towards that content are registered by creating a Bitcoin transaction that pays the person who registered the content by referencing the SHA-1.

[https://github.com/blockai/openpublish#tipping-and- micropaym...](https://github.com/blockai/openpublish#tipping-and- micropayments)

We've experimented with some Reddit-style ranking algorithms where we consider payments or tips as upvotes.

One big difference between what we're building and what this presentation is describing is where and how the content itself is stored.

We expect the content to be available on BitTorrent (and WebTorrent) as well as IPFS, both content-addressable data stores that use DHTs, but we also have a fallback to a URL for the content.

We made our own service called Bitstore, a content-addressable file hosting and distribution service that uses Bitcoin public key infrastructure for authentication and payment.

[https://github.com/blockai/bitstore- client](https://github.com/blockai/bitstore-client)

So instead of having to run your own IPFS or BitTorrent node that's always serving up your content, you can pay a small fee in Bitcoin to have your file hosted... something like a coin operated S3.

Both Bitstore and Open Publish use the same form of authentication and permission, the public key nature of Bitcoin wallets. Users are identified by their public wallet addresses. This login mechanism has been implemented in a number of wallets that support the spec Common Wallet interface.

[https://github.com/blockai/abstract-common- wallet](https://github.com/blockai/abstract-common-wallet)

This opens up a number of really interesting interactions, such as something like "tip to comment", where a web service can check the Bitcoin blockchain to see if a self-identified wallet address did indeed tip the content it is attempting to comment on.

[https://github.com/blockai/my-two-bits](https://github.com/blockai/my-two- bits) [https://github.com/blockai/my-two-bits- client](https://github.com/blockai/my-two-bits-client)

<comment><USER27> What are the problems with existing services that you are attempting to solve?

<comment><USER26> In short, the entire nature of how information is published and monetized.

There are numerous problems with the current ad-sponsored publishing systems with web content, but some of the more interesting ideas we're looking at deal more with the professional publishing industries around photography, music and books.

We were very excited to read this report from the Berklee School of Music that outlined a system very similar to what we've been building!

 _In addition to the aforementioned benefits, a compre- hensive, accurate database of music rights ownership information would provide a platform for new technol- ogies to be applied in potentially game-changing ways. We encourage the investigation of the use of emerging crypto-currencies, such as Bitcoin, and their underlying technology, Blockchain, as new royalty- distribution mechanisms for the music industry.

...

A database of accurate rights ownership information, like the one we have proposed, could form the founda- tion of a similar cryptocurrency log. In addition to rights ownership information, the royalty split for each work, as determined by a mixture of statute and contracts, could be added to the database. Each time a payment is generated for a given work, the money would be auto- matically split according to the set terms, and each par- ty's account would instantly reflect the additional reve- nue. For example, suppose a song is purchased from a digital music store, such as iTunes. After the store takes its cut, for ease of demonstration, we will hypothetically assume the revenue generated by the purchase comes to US$1.00. This money would be split between the two different works contained in the song, with a 9.1 cent mechanical royalty going to the musical work, and the remaining 90.9 cents going to the sound recording.

Next, if the contract between the publisher and songwriter specifies a 75/25 split of revenue from downloads, the publisher would receive 6.825 cents and the songwriter would receive 2.275 cents. With an identical split at the record label, The label would receive 68.175 cents, and the recording artist would get 22.725 cents. The block- chain network could also further divide this 22.725 cents between the members of a band, if applicable. This entire process would take place in less than one second, allowing all parties to access their money immediately after it is generated. Further, this payment system is fully trackable and would ensure that royalties are not held by third parties, such as labels and publish- ers, before being passed to the artist and songwriter. This would eliminate concerns about accidental or intentional underpayment of royalties._ \- Fair Music: Transparency and Money Flows in the Music Industry, p.27-28

[https://www.berklee.edu/news/fair_music_report](https://www.berklee.edu/news/fair_music_report)

<comment><USER27> Hey, thanks for the detailed and considered reply. So many of the proposals I see (including the slides in the main article) seem to be either technical plans without any obvious motivation (other than 'because we can'), or are people trying to use technology to magic away laws that they personally don't like. It makes me very cynical of it all at times :(

<comment><USER28> > people trying to use technology to magic away laws that they personally > don't like.

Isn't this a good thing? If the law is unjust then technology will expose its weakness (copyright law for instance). If the law is just, it will be strengthened by being tested by technology and if it's applicable in new areas.

Law should not impede progress, progress should push law.

<comment><USER27> There's no magic that means good laws will get strengthened and bad laws will be weakened. The other way around is just as possible.

<comment><USER28> That's what makes you cynical?

</comment></comment></comment></comment></comment></comment></comment><comment><USER29> I originally wrote this post as a response to Osmode, but it ended up swelling more than I'd intended. I fundamentally agree with his goals of supporting free discussion and suppressing self-censorship. However, I see several problems with this approach to achieving those goals.

The core problem with social-capital type schemes like Reddit (or indeed HN) is that they're very susceptible to bandwagoning. On Reddit the groupthink varies by community, but there's some mixing bowls and as a result the community does have an overall balance, despite having some short-term bandwagons. HN has a really strong bent towards the opinions of 20-something Silicon Valley startup coders without much counterbalance, and I know that I've certainly self-censored on certain topics that go against the grain here. Yes, in the words of Drew Carry, "everything is made up and the points don't matter", but then why is there still a counter in the corner of my screen?

Here, you're literally talking about putting a pricetag on dissenting opinions. If you go against the grain you're not just getting downvoted, each post actually costs you a certain amount of real money on servicing the blockchain. Conversely, circlejerking will get you a lot of kudos. That is - in and of itself - a strong social pressure that hampers the full spectrum of discourse. Much like the Bitcoin blockchain, it is fundamentally based on the assumption that no one group controls a non-trivial portion of the [social] network.

The same mechanisms that work against reprisal or spam also work against opinions that dissent from the common wisdom. It's vitally important for a strong discourse that sometimes-unpopular opinions be heard. Otherwise it's far too easy for the majority to carry themselves along (the Iraq war immediately springs to mind). I don't know how you counterbalance that against suppressing actual spam - because botnets and such mean that those groups will also have a great deal of capital from blockchain/network operation.

Some of the best communities on the web have actually been gated ones. Back in the day it cost $10 to activate an account on SomethingAwful. If you trolled, well, at least you're helping pay for the servers. If you leech on private trackers, you get banned and someone else takes a hit for inviting you. Gated NZB sites work in a similar way. I don't have a problem with such communities at all, but fundamentally they work on the basis of clearly defined social standards. On the flip side, Twitter and Tumblr have a very low level of discourse, because it's all about pithy soundbytes that get you retweeted. People leech from ThePirateBay all the time, because from their perspective, why not?

I don't see how this is different from "twitter, but using bitcoin". Something like FreeNet seems to accomplish the above goals much more effectively - popular opinions result in distributed re-caching, unpopular ones still get served if they have sufficient traffic, and _really_ unpopular ones can be broadcasted by vigorous network participation and re-seeding.

</comment><comment><USER30> You guys really need to let go of the blockchain trope. It's a hammer seeking nails.

<comment><USER31> The blockchain represents trust-less global concensus, the first time such a thing has occurred in history. From remittances to microtransactions to voting there are very few economic and political problems that the blockchain can say nothing about.

The current market capitalization of BitCoin is $3.7 billion. Did all that money just appear out of thin air because blockchains are worth nothing and solve no problems?

<comment><USER32> The market capitalization of Bitcoin has NOTHING to do with the value of its technical solutions.

A low tech solution like the good old check (ink on a piece of paper) can be worth more than all Bitcoins.

<comment><USER31> Really? Nothing? If the technical solutions were worth nothing wouldn't the value tend towards zero? Surely sustaining a market cap in the billions says _something_ about the economic value it represents.

<comment><USER32> > If the technical solutions were worth nothing wouldn't the value tend > towards zero?

Nonsense. The value of Bitcoins is not the value of the algorithms behind it. People agree to trade Bitcoin for that amount of money and that's it. Market laws.

Just like the value of cash is not determined by the technical solution behind it (essentially colored inks on a piece of paper).

<comment><USER31> So all market valuations exist in a vacuum, and say _absolutely_ nothing about how much something is _actually worth_? And how do you think this economic theory applies to the stock market or commodities markets? Are shares in companies and commodities inherently worth nothing but the price people agree to pay for them? Don't they say something about their collective belief in that asset's future?

Market valuations can become decoupled from intrinsic value, but that doesn't mean the _intrinsic value_ is zero. In the long term if something really repesents _zero_ value its market valuation will approach that.

<comment><USER30> Bitcoin is a cryptocurrency. Bitcoin is also a technology. You're conflating the two. You could have a cryptocurrency without a block chain and you can have a block chain that has nothing to do with cryptocurrency.

<comment><USER31> They are very much linked to one another. If BitCoin didn't offer anything novel over and above other media of exchange, like fiat currency, its value would approach zero. Its differentiating quality _is the blockchain_ and peer- to-peer distributed concensus.

 _You could have a cryptocurrency without a block chain_

Perhaps, but then you'd need to solve the problem of trust-less peer-to-peer Byzantine concensus a _different away,_ using a different mechanism. And that's exactly why the blockchain is novel.</comment></comment></comment></comment></comment></comment></comment></comment>


Star Trek's newest effort is a bust - <AUTHOR> https://www.staticcatgames.com/2020/08/star-trek-lower-decks-impressions.html <comment><USER2> The Orville is currently the only Star Trek series in TV.

Discovery was crap and Picard was 'reheated' Jean-Luc completely lack the ideas behind Star Trek world building or the idealism. They just reuse characters and imaginary to do generic TV-shows.</comment>


Refreshing Firefox search bar - <AUTHOR> http://blog.mozilla.com/blog/2010/10/06/refreshing-the-firefox-search-bar/

<comment><AUTHOR> So bing gets twice the publicity as others now (since it also serves up results for yahoo!). I say unfair!!! :)</comment>


Popular Science Puts Entire Scanned Archive Online, Free - <AUTHOR> http://www.wired.com/gadgetlab/2010/03/popular-science-puts-entire-scanned-archive-online-free/

<comment><USER2> Here is a cover view of all the issues, courtesy of Google Books: <http://books.google.com/books/serial/wzsEAAAAMBAJ?rview=1>

<comment><USER3> It's really interesting to look at the trends of the covers.

If you start looking in the 1930's, you have occasional military themed covers, but primarily civilian themes: [http://books.google.com/books/serial/wzsEAAAAMBAJ?rview=1...](http://books.google.com/books/serial/wzsEAAAAMBAJ?rview=1&lr=&sa=N&start=810)

Then, starting in December of 1940, you only get military themed covers. Between December of 1940 and December 1945, you get exactly two non-military images on the covers (Jun 1944 and Mar 1945), but both have prominent war themed text on them. January 1946 is the first fully civilian cover in over 5 years.

It really makes me realize how distant war seems to us now, even though the US has been involved in international wars for most of the last 60 years. Imagine if PopSci had images of Iraq and Afghanistan on the cover of every issue today.

<comment><USER4> The difference between WWII and the wars of the next 60 years is that WWII was one the people rallied behind. The American people have never supported a war since then.

<comment><USER5> Some accounts of history don't have Americans backing the war until 1942. It could indeed be that WWII changed the way we looked at war and little to do with popular support.

</comment></comment></comment></comment><comment><USER6> The classified ads in the back bring back memories (1980s-1990s): Plans for building a jetpack, helicopters, hovercraft, tv descramblers, "plasma fire sabers", "ion ray guns", "blaster defense weapon". A boy can dream can't he?

<comment><USER7> Remember: <http://www.amazing1.com/>

:)

<comment><USER6> Absolutely!

</comment></comment></comment><comment><USER8> I read this when I was a kid and had a subscription:

[http://www.popsci.com/archive- viewer?id=rAAAAAAAMBAJ&pg=...](http://www.popsci.com/archive- viewer?id=rAAAAAAAMBAJ&pg=99&query=mini+mac)

I've still got the paper copy. Though it was perhaps another year before I actually touched a Mac in person (at, I believe, a department store -- they sold computers in those days) and five years before I could afford one.

<comment><USER9> and it weighs just 20 pounds! How far we've come...

<comment><USER10> and is made out of wood

</comment></comment></comment><comment><USER11> Having a subscription to PopSci in the late 70s-early 80s was like reading Gizmodo or Engadget today. Every month was filled with magical things that you wouldn't see in person for months or years.

Optical discs! Fuel injected cars! Weird crap from DAK!

And Wordless Workshop FTW.

</comment><comment><USER12> I wish someone did that for BYTE too.

But with PDF downloads.

</comment><comment><USER13> Now I can read all those bullet trains stories. I hear someday they may come to America.

<http://www.popsci.com/results?query=bullet+trains>

</comment><comment><USER14> "Prepare to lose the rest of your day to awesomeness."

Indeed. I think I will start with "Secrets of New Color Movies"</comment>


The Complete Annotated CoffeeScript Source - <AUTHOR> http://jashkenas.github.com/coffee-script/documentation/docs/grammar.html

<comment><AUTHOR> CoffeeScript is implemented in CoffeeScript itself, and this is the unabridged source code for it, in literate programming style.

Quick links to other interesting bits (also accessible from the "Jump to" link on that page):

The Lexer, which has some extra smarts to help keep the grammar cleaner than it otherwise would be:

[http://jashkenas.github.com/coffee- script/documentation/docs...](http://jashkenas.github.com/coffee- script/documentation/docs/lexer.html)

The implementation of lexical scope:

[http://jashkenas.github.com/coffee- script/documentation/docs...](http://jashkenas.github.com/coffee- script/documentation/docs/scope.html)

The "coffee" command-line utility:

[http://jashkenas.github.com/coffee- script/documentation/docs...](http://jashkenas.github.com/coffee- script/documentation/docs/command.html)

All of those pages are created by a little literate-programming-style documentation generator called "Docco". If you run it on itself, you get this:

<http://jashkenas.github.com/docco/>

Hopefully we'll get some good patches from having the source in the open like this.

<comment><USER2> Having poked around the source as part of implementing full vim support, I believe that nodes.coffee [1] exercises every single coffeescript feature except splats and js escaping, so that might be interesting to people as well even if it is a less interesting part of the source.

[1] <http://gr.ayre.st/s/nodes.coffee.html>

Also, this isn't 0.5.5? Waiting for interpolation to settle?

* I'll put out my vim stuff when I write the indent script.

</comment></comment><comment><USER3> So if CoffeeScript is written in CoffeeScript, does that mean that the developer had to compile it by hand the first time and is now using each version to compile the next version?

<comment><AUTHOR> The original compiler was written in Ruby, and CoffeeScript started out life as a Ruby gem. Once the language reached a reasonable stage of completion, we ported it over to CoffeeScript and axed the Ruby version.

Now, every time that you run "bin/cake build", you re-write your entire compiler.

It's pretty fun stuff -- if you're working on the language and you break something, guess what, you no longer have a working compiler to dig yourself out with.

So the usual pattern for language work (bin/cake build:full), is to check out the "lib" directory (in case you broke it), rebuild the compiler _twice_ , to get your modifications built-in, and then to run all of the tests.

<comment><USER4> Though I appreciate the code, and will definitely read through it, and I like the idea of a self-compiled language... that seems like more hassle than it's worth (very specifically the double-compilation / failed => super.fail part. A compiler in the language it compiles has advantages for the programmers using it, among other things).

</comment></comment></comment><comment><USER5> just noticed coffeescript for the first time. i think there's a need for a clean, simple, eager, dynamically typed functional language and i'm wondering if this fills the spot.

i realise that is not exactly your aim, but in that context have you thought about adding linked lists (which would complement javascript arrays)? also, what does function composition look like? is currying supported?

<comment><AUTHOR> CoffeeScript is just JavaScript, so to the extent that you can compose and curry functions in JavaScript, the same is possible here. Either directly, or through libraries like Oliver Steele's Functional.js, or Underscore:

<http://documentcloud.github.com/underscore/#compose>

As for adding linked lists, we have something of a golden rule with CoffeeScript -- there are no special objects or functions added to the runtime (with a couple miniscule exceptions). We're not building a standard library, because that would open Pandora's box, and there would be no end to the project's scope. Instead the idea is just to show a certain side of JavaScript in a different light, and to work seamlessly with whatever libraries (server- side or client-side) you choose to use.

<comment><USER5> ok, i understand. not quite what i'm looking for, then, but thanks...

<comment><USER6> Haskell can be compiled to Javascript. Perhaps that's what you're looking for?

<http://www.haskell.org/haskellwiki/Yhc/Javascript>

Haskell has dynamic typing via the Data.Dynamic module, but I don't find it to be useful. I can't think of any reason why anyone would want dynamic typing, anyway. Eventually you need to know the type of your data, why not figure that out before you start the program running? (But if you disagree, Haskell is not going to stop you.)

<comment><USER5> No, it's not what I want thanks. It's not eager and it's not simple and it's pretty fiercely pure. What I am thinking of is something more like a functional Python, or a Scheme with a "nice" syntax.

<comment><USER6> Use Scheme for more than five minutes and I think you'll find you don't care about the syntax anymore. Plus you won't have to write your own language, which is always nice.

Strict evaluation is a pain, though, IMHO.

<comment><USER5> Thanks, but I have used Scheme for more than 5 minutes.

[edit: more generally, what is the point of this conversation? You've stated that you don't understand how anyone could want dynamic types, and that strict evaluation is a pain. It's pretty obvious that you want completely different things to me. Given that, are you really trying to help me here, or just being a bit of an asshole? You're welcome to disagree, but simply repeating your opinions as if they are somehow more valid than mine isn't helping anyone.]

<comment><USER7> He's not being an asshole, he's just trying to help. Perhaps if you were a bit more forthcoming about what you do want (or why you don't want X), his comments might be a bit more on target.</comment></comment></comment></comment></comment></comment></comment></comment>


Ask HN: Please review our site FourthBranch.us - <AUTHOR>

http://www.fourthbranch.us<p>We have been working on building this site and just launched it a few days ago to meet the YC deadline. We are now looking for constructive criticism and suggestions on how to improve the usability of the site and advance the concept of bringing social networking to the legislative process. Thanks and we look forward to your feedback!<p>- Kris Neuharth (krisneuharth) and Ryan Manley (ryanmnly) <comment><USER2> I can see this being a useful and popular niche app, but what's your exit strategy? You're applying to YC with this, who's likely to acquire you? How will you monetize?

Not necessarily a critique of the site, just some questions YC or investors will certainly ask during the application process.

<comment><USER3> First, we definitely need critiques, and as many as possible.

Aside from ad revenue, the plan for monetization is to charge for the data we collect. On a subscription basis, we want government officials, interest groups and lobbyists to pay for the data we collect. We give anonymous and accurate data that identifies earmarks, demographic trends, hot button items, etc. The catch is that the people receiving the data need to agree to a minimum amount of interaction with the users on the site (social networking). We also charge them monthly.

I have no doubt that if just a couple reps/groups find this useful, everyone will jump on board so they aren't left behind. Not to mention, most are spending other people's money, not their own. :)

As for exit plan, this is not completely established. We expect that the application continues to evolve and automate on the back end, leaving us free to hand off to new management without a significant learning curve. Right now, we envision our target buyers to be large news sources, especially if they are political and intend to take advantage of social networking. CNN maybe? FOX? MSNBC? Washington Post? Since newspapers are going by the wayside, there are plenty of companies out there who need a new niche fast.

Thoughts?

</comment></comment><comment><USER4> imo, just right off the top of my head, the design and presentation needs work. what exactly does the site do? what is it for? how do i use it? etc..

i can't really tell just looking at the first page, so, you're probably going to have a high bounce rate (especially since its such a crowded-with- information, not-aesthetically-appealing page). you want that first page to explain and draw people in. you have more leeway for ugliness and untidiness once people understand whats happening.

<comment><USER5> I second this. I know that you are addressing bills going through congress, but I don't know what you want me to do. I also had a hard time trying to reading the bills in the list.

<comment><USER3> You are both right, thanks for the feedback. These are the types of things we need to iron out immediately. We've been working with a few different layouts, but without users actually engaging, it is difficult to assess what works best. We will change it tonight, and through some trial error, hopefully we can express what the site actually does. The concept is sound but what good is it if nobody can figure out how to use it?</comment></comment></comment>


Never ask who is using staging again - Introducing Divergence - <AUTHOR> http://layervault.tumblr.com/post/33781162425/divergence

<comment><USER2> Wow, this is pretty awesome. We run into this issue all the time. Mainly using staging for an external demo, but needing to deploy production updates before the branch on staging is ready to go live. Great work LayerVault!

</comment><comment><USER3> This looks amazing. We've got a few QA servers, but still run into the same problem.

</comment><comment><USER4> Wow, I want this at work.

<comment><USER5> I'd imagine that it's a QA engineer's dream. Imagine never having to worry about spinning up some brach to test. That's kinda cool.

</comment></comment><comment><USER6> I definitely have to try it!

How do you handle migrations? What if there is a migration in the feature-1 branch which breaks other branches?

</comment><comment><USER7> what happens with changes that have impact on the datastore such as adding migrations? Do those get executed when the appropriate branch gets checked out? What happens when two branches create conflicting changes in the datastore?

<comment><AUTHOR> At LayerVault, each migration always happens on its own branch separate from the feature. We've been operating like that since day 1, and it hasn't been an issue yet.

<comment><USER8> That's really interesting. Have you or someone else written up that workflow?

</comment></comment></comment><comment><USER9> Does it support subdomains?

aaa.staging1.example.com api.staging2.example.com</comment>


Focus Hard. In Reasonable Bursts. One Day at a Time. - <AUTHOR> http://calnewport.com/blog/2009/08/20/focus-hard-in-reasonable-bursts-one-day-at-a-time/ <comment><USER2> "Once there I'd get my Chai tea, open up my laptop and set my alarm for one hour, I worked diligently for at least one hour each day, I could go longer but at a minimum I had to put in one hour of thesis work each day."

I like this rule. I think that having a whole day off doesn't make as much sense for knowledge workers as it did for factory or farm workers. I think working an eight hour day is extremely exhausting for a programmer, unless we're _really_ enjoying what we're doing. On the other hand, problems tend to simmer in our heads on weekends and sometimes are forgotten by the time Monday rolls around. For me, a little work each day beats trying to work a full day five days a week.

Edit: Oh, and if I didn't have to commute 45 minutes each way, 8 hours might be easier. That's a whole other issue, though.

<comment><USER3> Yeah, I find it draining when working too long on the same thing and get distracted. I can (and do) work for long periods of time, but I feel it after and it makes me less efficient overall. I think working for many short bursts throughout the day lets me get a lot more done (and this is how I work on my own projects, eg during weekends: work for 1 to 4 hours (depending on the task), 1-3 hours off, 1-4 hours on etc and at the end of the day, I'll have racked up 5 or 6 hours of good, highly productive, efficient work. If I do 8 hours straight, I'm guessing only about 2 are actually efficient. When I was in uni, I often leave my assignments until the last day (BUT think about them before hand) and then sit down for maybe four blocks of 1.5 hours and get them done in 6 hours of work - compared to people trying to sit down for full days and spending a lot lot longer on them..

I agree - commuting means I'm tired before I even start. (Being a night person means I'm tired when I get up for the day job in the morning too, but thats another matter).

The full day off is important to me, but probably a lot less if I didn't get drained from doing 8 hour days.

PS: forgive my bad comment structure, its Friday, long and busy week, I'm pretty drained right now.. see above..

</comment></comment><comment><USER4> One of the comments reads

 _Historically I've approached big projects with the nonstrategy of "let them overwhelm you in your head, then put them off till moment when the fear of not finishing exceeds the fear of starting."_

This is well put, and exactly how I handled all of college. It worked OK there because project size was generally reasonably bounded.

The "fear of starting" is pretty insidious. A project often looks hugely different on either side of "started working" line -- it can be a really quick change from "I'm not really sure how this is going to work" to "I'm in a groove, this is going great!"

<comment><USER5> I had this exact conversation with a girl one time. She was the standard "work and work and work and work and work and you'll do well" kind of person, and I was more like you.

We were both in the lab, and she was working on finishing her assignment up for our class later in the day. I was reading Reddit and working on a side project at the time, and she asked how my assignment went. I replied that I wasn't yet finished, and she seemed horrified. I told her I had only about half an hour's worth of work yet, and I just simply didn't feel like doing it. My project was more interesting. She asked why I didn't just finish it and then I could "screw around" with the remainder of the time, because then I'd know I was done, and I couldn't really give her a better answer.

I started twenty minutes before it was due, and finished the work in ten.

</comment></comment><comment><USER6> I've found that I only have about 2-3 hours of "genius" (for me) level work in me per day. That's when things are clear, and I see new connections (inspirations). If I try to push beyond that, I start to go backwards, and/or I am exhausted the next day.

Of course, there's lots of other work to do in a day that doesn't require "genius" level.

</comment><comment><USER7> This is interesting also (linked from the article): [http://calnewport.com/blog/2007/10/15/monday-master-class- ho...](http://calnewport.com/blog/2007/10/15/monday-master-class-how-to- schedule-your-writing-like-a-professional-writer/)

I liked this comment:

 _If you sit down at your specified time and are drawing a blank, get a new document/piece of paper and freewrite. Write ANYTHING, even if you just write "I have no idea what to say" over and over. Ignore spelling and grammer. Write stream of consciousness. Just get something on the page. Eventually something will click and you will start to come up with ideas that are more useful. But staring at a blank page is intimidating. You can always delete/throw out what you wrote later but you have to start somewhere._

I'm not sure there's a programming equivalent though. Playing on the REPL?

<comment><USER8> _Ignore spelling and grammer_

Alas, our REPLs and compilers won't. Computers are demanding creatures.

<comment><USER9> I will often do this when I am drawing a blank. Write psuedo-code, or code that is how you would _like_ it to be, if your language / macros / libraries supported it. Then you can worry later about making your language support what you just wrote. This eliminates a whole set of mental blocks to writing code.

</comment></comment></comment><comment><USER10> Good advice.

I read Stephen King's book on writing earlier this year. There's similar advice in there as well (and this author references the fact that most writers work in a similar manner).

What I've found is that I've recently slipped into a habit of doing this same exact thing, unintentionally. Every night after dinner, I start up the laptop and shoot to get _X, Y and Z_ done before going to sleep. (...on my programming project...)</comment>


SpaceX's spacesuits are getting design input from Ironhead Studio - <AUTHOR> https://www.reddit.com/r/spacex/comments/4hi1jo/spacexs_spacesuits_are_getting_design_input_from/ <comment><USER3> >SpaceX, the company run by Elon Musk, reached out to me to ask if I would create a space suit. I didn't know what SpaceX was and I thought it was a film. Then I realized it's an actual space program.

We live in fairly interesting times it seems.

> I worked with him for six months and at the end of that, we created a suit > that they are now reverse-engineering to make functional for flight.

Form over function is a pretty bold move. Clearly Elon is greatly invested in SpaceX's image. The inside of the Dragon looks like a sci-fi prop as well. Not sure if this actually has any real benefit for him. Just seems like you're shoving engineers into boxes they don't need to be in. On the other hand, when your ultimate goal is space tourism/civilian space then Apple-like marketing and image probably aren't optional. Its just odd for this long-time space watcher to start seeing industrial design and costume design be part of something that was usually a strictly nuts and bolts affair.

I suspect the space tourism market will have a lot in common with the luxury car market. People want their creature comforts and eye-candy it seems.

<comment><USER4> There's also a little confidence imparted by a smooth, modern UI.

While super dependable, proven, spacecraft, the current Soyuz ferries are closer to U-boats inside: purely functional, clunky, and claustrophobic with exposed plumbing, wiring, and dated avionics.

<comment><USER3> A part of me is anxious that all this touch screen stuff is less reliable than old fashioned controls and we'll have a F-35-like problem with SpaceX's more progressive ideas: too much new stuff all at once that's not battle tested meaning delays, issues, workarounds, risk, etc.

I like to think there's a middle-ground between the Space Shuttle's cockpit and the Dragon design. Falling back to old school switches and displays should be an option I suppose.

<comment><USER5> I heard a rumor that the touch screens are all on something like velcro, and can quickly be removed and old-school mechanical switches are underneath. No idea if it's true, but I guess that's the sort of middle ground you're talking about?

<comment><USER3> Yeah, I'm assuming the wall panels come off or something and those touchscreens are just a nice UI to a more mechanical system. I just can't imagine relying on touchscreens for space travel.

</comment></comment></comment></comment></comment><comment><USER6> Going to Mars is no enough you have to do it in Style.

<comment><USER7> PR is an important part of a space program; especially one so bold. The Space Shuttle became a symbol for things other than its designed mission. This suit may be seen by billions of people and represent ideals and dreams on a worldwide scale.

</comment></comment><comment><USER8> Literally who? Apparently they design costumes for movies.

<comment><USER9> > _Literally who?_

Funnily enough, the same thing that they asked when SpaceX approached them.

<comment><USER8> Do most HN visitors know who they are? This title could have been better is what I was trying to (crudely) get across.

<comment><USER9> Blame HN's short title limits, or an insufficiently creative submitter - <USER2> Reddit title actually explains who they are.</comment></comment></comment></comment>


Why China's Economy Is OK but China's Government Is Not - <AUTHOR> http://globalreports.columbia.edu/blog/2015/08/why-chinas-economy-is-ok-but-chinas-government-is-not/ <comment><USER2> Most Chinese, I ever spoke to, talk about how corrupt their government is. Isn't that something that Xi was trying to make country less corrupt? From that perspective, I am not entirely sure if government has enough trust from people that is eroded by this fall in stock market. People may stop trusting government's recommendation for investing in stock market, if they ever did, but I am not sure if this is radical enough of a change to trigger any political changes in the government.

<comment><USER3> I'd wager that many Americans would also talk about how corrupt our government is. Maybe it's corrupt in a different way or to a lesser extent, but any government of any size will have some level of corruption, and most will have a higher perceived amount of corruption than the reality suggests (because discovered exhibits of corruption will be interesting news and thereby over- observed).

<comment><USER4> I really wish people would take corruption seriously enough to study it as a professional discipline. It is one of the most important and difficult problems in human history, and there's a lot of room for innovation in dealing with it.

>and most will have a higher perceived amount of corruption than the reality suggests (because discovered exhibits of corruption will be interesting news and thereby over-observed).

You could argue that most corruption is not reported because it is effectively legal. Like nepotism, for instance.

<comment><USER5> Technically speaking nepotism means family but people generally use the term to mean friends and colleagues.

On one hand hiring people you know over people you don't know is bad and corrupt. On the other hand it's literally what everyone does because it's the logical, sane, smart decision to make. The #1 way to hire good people for any company is for employees to recommend friends and past co-workers.

<comment><USER6> nepotism, noun

The practice among those with power or influence of favoring relatives or friends, especially by giving them jobs.

... i think you're mistaking the original meaning with its definition.

<comment><USER5> Nepotism is favoritism granted to relatives [https://en.m.wikipedia.org/wiki/Nepotism](https://en.m.wikipedia.org/wiki/Nepotism)

: the unfair practice by a powerful person of giving jobs and other favors to relatives [http://www.merriam- webster.com/dictionary/nepotism](http://www.merriam- webster.com/dictionary/nepotism)

No, I'm right. Originally it's a familial term. But modern usage includes friends.

</comment></comment></comment></comment></comment></comment><comment><USER7> China's working age population peaked four years ago, currently they are losing over a million workers a year. Property values are down around 6% year over year, shadow banking is collapsing, I'm going to humbly disagree with the title of this thread

<comment><USER8> Yep, China's population pyramid looks like Japan's in the late 80s, only with a sex imbalance.

<comment><USER9> They can easily resolve it with a three child policy....

<comment><USER7> Right, because the effects of that will be felt immediately....

<comment><USER9> Better late then then never!

<comment><USER7> Perhaps its best if population gradually declined....

</comment></comment></comment></comment></comment></comment><comment><USER10> I do not understand why China is unable to divert its resources at this point to things like better education. Strong independent domestic institutions.

The biggest problem was assuming that the market players are rational in the absence of information.

Markets only works with information. Its seems pointless to talk about the one without the other.

If someone had 100 dollars. The difference in yield between 2% and 7% is not as big of a deal as transparency.

Since loosing your entire 100 dollars is much more worse.

As someone who is close to india. I find it amusing whenever people tell me how much better China is compared to india and that maybe india should be more like China. Multinationals constantly complain about Indian red-tape not realizing that its not so simple to displace farmers to build a highways in a democracy. I also see the same thing happening in america with people like Donald trump openly saying that China is beating the US.

It seems capitalists really like china - which says a lot more about capitalism then it does about china.

<comment><USER11> There is no doubt that free(er) markets in China have not only helped the Chinese people to a better life, but through the magic of free(ish) trade, have made the lives of people throughout the world better.

The one thing China does better than places like the US is in the savings rate. Everyone could learn from that.

<comment><USER12> 'Savings' is not a worthwhile goal in and of itself.

If all you do with your savings is stuff it under the mattress or lend it to banks who in turn lend it to homebuyers to perpetuate the greatest property bubble in history... you're going to have a bad time.

<comment><USER11> Savings are a necessary pre-requisite for investment. On balance it is better to have savings than debt.

Creating bubbles in certain asset classes is usually the fault of differential tax or regulation treatment for that class. It can be avoided by not creating special classes.

The story of savings being stuffed into mattresses is usually followed by some type of incorrect Keynesian thinking. It's so rare that it is not a problem. A 'general glut' as it used to be called has nothing to do with hoarding savings.

</comment></comment></comment></comment><comment><USER13> China's economy is definitely not OK.

The distortion in the system are massive, the main things that work well (and extremely well) is the export sector. BUT China's export sector has always been more dependent on foreign investment, foreign management and external inputs. Even the height of it's manufacturing boom, China could run a trade deficit because its export sector was so oriented to labor-intensive final assembly activity. The real estate sector is well know for its ungoldly distortedness, it's science establishment is riddled with fraud, it's economic statistics are generally falsified. The pollution produced by it's industry (and corrupt state) is now making a true deadly impact on its society but the pollution is also a product of its energy sector's costs being falsified and so-forth.

</comment><comment><USER14> I was hoping the author would provide further elaboration on why he thinks China's economy is doing ok when I read the title. However, there does not seem to be much substantiation for why he thinks China is doing ok. It would be ironic if he had based it on China's release of GDP growth figures.

"For all the frenzy, the economy is still growing, if somewhat sluggishly by Chinese standards, and most ordinary citizens are not invested in the market. What's at stake is the government's credibility."

</comment><comment><USER15> Tyler Cowen had a great post on the government's incentives in this stage of China's development, it's worth a read. [1]

> But recall that the "citizen trust contract" with policymakers is ultimately > a fragile one and based on a series of quite short-term evaluations. When > the tailwinds are less positive, the policymakers must take on a much > shorter time horizon. They will prop up stock prices now, or try to, even if > that is foolish.

…

> The same leadership structure can perform either very well or very poorly, > with both the same leaders and the same citizens. And the switch can come > fairly quickly, and be occasioned by events which are significant but not > transformative on a world-historic or even a country-historic scale.

[1] [http://marginalrevolution.com/marginalrevolution/2015/07/a-v...](http://marginalrevolution.com/marginalrevolution/2015/07/a-very- particular-theory-of-political-leadership.html)

</comment><comment><USER16> I think 'OK' is being used very loosely. And I believe a bad government will help lead to a bad economy (although some may debate that with a government closer to home)

<comment><USER17> > And I believe a bad government

Depends of what "bad" means. If it means bad AT controlling the Economy, that may be a good thing for the private sector. If it's bad as in, controlling the Economy in a way that is damaging to industries/entrepreneurs, that may indeed be a very bad thing.

</comment></comment><comment><USER18> The Chinese economy isn't doing ok.

\- Imports and exports have been crashing lower. [1]

\- They've spent decades lying about their unemployment rate, leaving it mostly unchanged around 4.x% perpetually. [2] It's likely far higher, some good estimates peg it around 2 to 2.5 times higher.

\- They've rapidly become one of the most indebted nations. Most of that occurred in just seven or eight years, taking on debt of epic proportions in record time. They took their total debt to GDP ratio from around 158% in 2007 to over 300% today. [3] [4] [5]

\- They have perhaps 500 million people living on ~$3 per day. Most of those people are poor farmers, not allowed to own the farm land they work on. In any mid-tier or above economy, about 400+ million of those people would be unemployed, because farming productivity would be vastly higher. Instead, in China farming productivity is held artificially low, because those people would have nothing to do otherwise. South Korean farmers are upwards of 40 times more productive than Chinese farmers. [6]

\- Since the great recession when China's boom ended, they've turned to stimulus programs and debt to fake growth, and have inflated at least two major asset bubbles, in real estate and equities. Both of which are now falling. The article notes that if you had bought stocks a year ago, you'd still be up nicely - I've noticed articles keep saying that as the market keeps falling, pretty soon it'll no longer be true. Then what?

\- They had to aggressively devalue their currency, as a next to last ditch effort to shore up falling exports, and tumbling competitiveness.

\- Return on invested capital domestically has been falling for years. As has the return on debt.

\- Capital is rapidly fleeing China, to the tune of roughly 3/4 of a trillion dollars in the prior year. [7]

\- China has begun eating their foreign reserves, consuming upwards of $300 billion over the last 12 to 14 months. [8] They have significant reserves of course, however only half of those are accessible without causing serious consequences for the global economy and their biggest customers.

\- China may have vaporized $6.8 trillion on worthless investments. [9] The estimates could be off by a lot and it would still be a massive sum.

\- China has spent hundreds of billions of dollars trying to prop up their stock market bubble. The fall of that bubble, and the fall of their real estate bubble, will wipe out perhaps $10 plus trillion of assets. That removes a lot of assets that are needed to help offset their huge debt burden.

\- China no longer has a significant advantage in manufacturing costs. Countries such as the US, Mexico and Vietnam are increasingly competitive versus China in manufacturing.

\- Container rates for Asia and China are crashing, indicating deep economic problems. [10]

\- Core industries like steel are falling hard. [11] [12]

This list just keeps going.

[1] [http://www.businessinsider.com/chinas-imports-hitting- record...](http://www.businessinsider.com/chinas-imports-hitting-record- lows-2015-8)

[2] [http://www.economist.com/blogs/freeexchange/2015/08/unemploy...](http://www.economist.com/blogs/freeexchange/2015/08/unemployment- china)

[3] [http://www.bloomberg.com/news/articles/2015-07-15/china-s- de...](http://www.bloomberg.com/news/articles/2015-07-15/china-s-debt-to-gdp- ratio-just-climbed-to-a-new-record-high)

[4] [http://www.wsj.com/articles/chinas-debt- bombs-1435512036](http://www.wsj.com/articles/chinas-debt-bombs-1435512036)

[5] [http://www.bbc.com/news/business-26225205](http://www.bbc.com/news/business-26225205)

[6] [http://www.businessinsider.com/chinese-farmer- productivity-2...](http://www.businessinsider.com/chinese-farmer- productivity-2012-8)

[7] [http://news.investors.com/ibd- editorials/072715-763627-china...](http://news.investors.com/ibd- editorials/072715-763627-china-economy-will-not-return-to-10-percent-plus- growth.htm)

[8] [http://www.bloomberg.com/news/articles/2015-08-18/china- rese...](http://www.bloomberg.com/news/articles/2015-08-18/china-reserves- seen-dropping-40-billion-a-month-on-yuan-support)

[9] [http://www.cnbc.com/2014/11/27/china-has- wasted-68-trillion-...](http://www.cnbc.com/2014/11/27/china-has- wasted-68-trillion-in-investment-warn-beijing-researchers.html)

[10] [http://gcaptain.com/asia-europe-container-freight-rates- have...](http://gcaptain.com/asia-europe-container-freight-rates-have-fallen- off-a-cliff/)

[11] [http://www.bloomberg.com/news/articles/2015-06-11/china- stee...](http://www.bloomberg.com/news/articles/2015-06-11/china-steel-output- falls-as-low-prices-weigh-on-mill-profits)

[12] [http://www.bloomberg.com/news/articles/2015-08-09/china- stee...](http://www.bloomberg.com/news/articles/2015-08-09/china-steel-flood- deepens-cutting-earnings-fanning-trade-rows)

<comment><USER19> We have several tons of scrap steel I was going to recycle. It was quoted at 2 cents a pound US! Last year scrap got 7 cents, and a year or so before that it was 11 cents. It was not worth hauling it in, maybe I will make sculptures with it instead.

<comment><USER11> That is a very big drop in price! No wonder the iron ore price has dropped through the floor.

I wonder if the innovation needed, then, is a mobile recycling plant rather than having to haul the raw goods to the scrapyard. I'm sure such a thing is pie in the sky, but I've seen the mobile sawmills in action, they're quite a sight to behold.

<comment><USER19> we will turn the stuff into garden art or something. They are the remnant skeletons from plasma cutting parts. 4'x8' sheets with 6" holes in them basically.

the art will go for a few dollars a pound, if we are lucky. But it is slow, and more complicated than just scrapping the stuff and getting cash today.

</comment></comment></comment></comment><comment><USER20> > _The Chinese economy is doing OK_

A bunch of _ghost cities_ would beg to differ. Apparently this guy thinks malinvestment on a _massive_ scale has no effect on an economy.</comment>


Sushma Swaraj warns Amazon after e-commerce firm sells doormats with Indian flag - <AUTHOR> http://www.firstpost.com/india/amazon-canada-sells-doormats-with-indian-flag-sushma-swaraj-demands-apology-warns-visas-to-company-officials-will-be-rescinded-3199636.html <comment><USER2> Guess India solved all their other problems then, to have time to get worked up about something so ridiculous.

</comment><comment><USER3> People really get caught up in a colour pattern.</comment>


Is it better to specialize or become proficient in backend and frontend? - <AUTHOR>

A couple months ago I started learning how to code, and started with the front-end (CSS, JS, etc). However, I've reached a point where I am not sure what I should be spending my time on -- should I try and pick up frameworks like Backbone and Node, or start learning a backend language like Python or Ruby?<p>I guess a better way of framing it is, will employers not hire somebody just because they don't have experience with a specific framework, or will they hire on growth potential (the idea that you can pick it up quickly)? <comment><USER2> I think it depends on the job you're looking for.

Want a job at a big company? You'll definitely want to be really good at a smaller number of things.

Want a job at a startup? You'll need to do everything from marketing to design to every type of programming.

<comment><USER3> Whilst you need to be more of a generalist in a startup, you also need greater depth of experience. Having a small amount of experience in many different areas is unlikely to get you a job in either area. Better to be good at something you enjoy and then broaden your skill base into other areas.

Based on your question, if you already have some front-end skills and JavaScript knowledge, then you might find NodeJS a good place to start with the backend. At least you don't have to learn a new programming language and its best practices.

</comment></comment><comment><USER4> There are front-end only jobs (HTML, CSS, Javascript). I imagine these positions would require programming with Javascript as well as some basic familiarity with Jquery and other front-end frameworks.

Some jobs require you to know the full stack - everything from front-end to back-end SQL.

And some jobs are for back-end development only - with back-end languages python, java, ruby, or PHP. If you use python or ruby you should learn the associated web frameworks as well (Python+Django and Ruby on Rails being the most notable).

It depends on what you want to do. Do you want to code your own websites or work at a dev agency? \-- You need to learn the full web stack. Do you want to work for a hip startup? \-- you should probably learn a back-end language and a web framework and build a project website with it. I'd recommend either ruby on rails or python + django.

</comment><comment><USER5> This is a very funny question to ask actually. Shouldn't you be doing just what you like to do? Is your question more like- 'What will get me a job?' well, both of them. Or, 'What will get me a better pay?' well, both of them. Please don't do something you suck at, simply because someone told you to.

<comment><USER3> Have to agree! You need to gain some experience in both areas and then chose based on where you feel more at home.

</comment></comment><comment><USER6> It won't hurt learning a bit of backend as well, especially if you're considering learning a frontend framework like Backbone. It will give you a deeper understanding on how your frontend code interacts with the server. I'd start by learning how the request/response cycle works, how to setup your dev environment and how to create simple API's that feed your frontend with json. If you're into python I'd suggest the excellent Flask framework (<http://flask.pocoo.org/>). It's extremely lightweight and the documentation is superb.

</comment><comment><USER7> Learn both then specialise in the one you like better. Regardless of which you end up choosing it will make you a more valuable developer.</comment>


Looking for early adopters for ClutterMe.com - <AUTHOR> http://www.clutterme.com/news

<comment><AUTHOR> We're looking for a few early adopters to tell us that they think.

We would love to pick your brains and will listen to every detail you suggest.

We want to work closely with you because we recognize the expertise on these meesage boards and want to make something you would want.

Sincerely, Mark ClutterMe Founder</comment>