From Minimum Viable Course to 100,000 Users – GrowthHackers - <AUTHOR> https://growthhackers.com/from-minimum-viable-course-to-100000-users/ <comment><USER2> I definitely have Eliot and John to thank for my recent career switch. I was working as a technical recruiter for various major/global financial services institutions (yes, shoot me now please) and I took their iOS7 course and within 4 months was able to find work as a junior developer for a NYC based startup.

I've never considered making a course myself, but I will say that I could certainly learn some more from those two on how to be successful!</comment>


Linus: please write good git commit messages - <AUTHOR> https://github.com/torvalds/subsurface/blob/master/README#L161 <comment><USER2> I'm curious about this:

 _please do proper word-wrap and keep columns shorter than about 74 characters or so_

How come word-wrapping is left as a task for humans here? Is there a technical/stylistic/cultural reason why lines can't be wrapped automatically to any desired width by the log presentation layer?

<comment><USER3> I hate to ask an off-topic question here, but is it considered good/bad practice to word-wrap plain text emails?

<comment><USER4> I think so, yes. Certainly, something like this is very common in Mutt configuration files:

        set editor="vim -c 'set tw=75 ft=mail noautoindent'"

The 'set tw=75' bit, sets the text width to 75 columns.

<comment><USER5> Not actually necessary these days. vim knows to match the names used for mutt temporary files, and automatically puts uses mail mode and a sensible text width.

<comment><USER6> IIRC tw=72 is set whenever you change the filetype to 'mail'

</comment></comment></comment></comment></comment><comment><USER7> Am I the only one that thought this was someone asking Linus Torvalds to write better commit messages?

<comment><USER8> The submission text was right, though. It would have been a comma instead of colons if "Linus" were in the vocative case.

<comment><USER9> Et tu, Line?

</comment></comment></comment><comment><USER10> It's hard to understate the importance of this.

GitHub's online editor has a default commit message along the lines of "Edited path/to/file", and I see a lot of pull requests with that message, and nothing else. That's about the most useless message possible, since it adds no information that isn't already implicit in the commit. It would be better to leave it blank and force users to at least write _something_.

<comment><USER11> Be careful, we do that by default and we get a lot of "commit", "commit", "commit $date", "merge commit" messages from some programmers. Either a programmer accepts that a meaningful message is important on commits, or they don't. It's a people problem not a technical one.

<comment><USER12> Ah, but what if we encouraged programmers to write better commit messages? What if we splashed on a bit of gamification to raise everyone's level of awareness? Maybe a badge on your profile page...?

<comment><USER13> How would you objectively determine the usefulness of a commit message, though? While it might contain all the necessary parts, there is no way to determine if the sum of the parts adds up to a useful whole.

Also, badges are done to death. Everyone's got badges these days - so much so they're like ads. Personally, I've developed a blind spot to most of them.

<comment><USER12> Objectivity is irrelevant and impossible in this context of raising awareness and fun. If the mechanism was something as simple as an upvote next to the commit message, you would let the community define usefulness of the commit message.

<comment><USER14> Upvoting itself might be all you need.

</comment></comment></comment></comment></comment></comment><comment><USER15> Basically, your git log should read like a blog about your project.

</comment><comment><USER16> Not to sound like I'm boasting, but most of my commits are far too atomic to warrant more than a first line. If I need to write several paragraphs about the changes I'm making, it's definitely too large a commit.

<comment><USER17> So, you've _never_ had a commit like this one?

        deep/magic: Commit changes even if not dirty.

        Changesets are somewhat magical these days (obviously!); even if they are
        not dirtied; they could end up being really, *really* bogus as far as
        their on-disk status. The reason, as far as I can tell, is that in
        deep/wizardry, we are being very liberal about our modifications to the
        on-disk data structures without actually considering whether or not any
        other owner of that structure is pending changes to commit. As a result,
        we could end up heavily corrupting these structures if we're not careful.

        I'm not altering the comments in the file because, frankly, the comments
        imply that we should have already been doing this. I just changed the
        code to match.

        Fixes #4242. Finally! Time to go grab a beer. :3

        Tests: +5 working

        mad/deep/magic.py | 1 +
        1 file changed, 1 insertion(+), 0 deletions(-)

<comment><USER18> I would prefer to see that rationale in the comments or some implementation doc or something. In the git history it's eventually going to be troublesome to unearth, unless the change remains intact enough for "git blame" to give you a pointer to that old commit, or your whole team standardizes keywords for more searchable commit messages. And if your team does have a way to find that explanation, you then need some way for them to discover whether it has become inaccurate over time.

<comment><USER19> Comments about the change itself, and the rationale behind it, should go in commit messages. Comments about the implementation itself should go in the code. Granted, there is some overlap between the two, in which case, go with code only (since it's part of the commit anyway).

</comment></comment></comment></comment><comment><USER20> <http://stopwritingramblingcommitmessages.com/>

</comment><comment><USER21> This is a good post about readable commit messages:

[http://tbaggery.com/2008/04/19/a-note-about-git-commit- messa...](http://tbaggery.com/2008/04/19/a-note-about-git-commit- messages.html)

</comment><comment><USER22> I try to stick to that format but very often struggle to squeeze a meaningful summary into the first line.

74 chars is just awfully short...

<comment><USER23> I have the same problem but I decided that first summary line is ok to be a little long. I regularly have my summaries be about 100 to 120 chars long. My rationale is that you aren't reading a paragraph, just a single line in isolation. For me, the hard part about reading long lines is jumping from the end of one to the beginning of the next. When the entire paragraph is on one line that problem just does not exist. Plus I always give a 1 line blank before the body of the commit so there's less visual confusion.

</comment></comment><comment><USER24> we use

      ISSUE-1234: persist client-side display configuration to settings

and our issue tracking and code review software recognize issue numbers and hyperlink to the actual issue, with comments, reported-by, description, environment, replication steps, related changesets, code reviews, etc. pretty great especially considering multiple commits on the same issue which can't be rewritten into one commit because they've already been pushed. it also makes `git log --oneline` useful.

<comment><USER21> Is this usually the case that exactly one commit maps to a single issue? I'd rather expect a whole branch to cover one issue (unless it's completely trivial). In this case, repeating the same issue number in every commit message on a branch doesn't seem very useful.

<comment><USER5> For bugs, I'd expect a single commit to provide the fix; otherwise, the bug report needs splitting into multiple independent bugs. :)

Feature requests might require a whole branch, though. But in those cases, each individual commit in the branch would build towards the feature, and should reference the feature request.

<comment><USER21> From my experience, a bug can be simple to describe and atomic, but still require a significant amount of work to fix. I'm all for linking to bugs and feature requests in commit descriptions, but I wouldn't make it a hard requirement and put on the first line. Your mileage may vary.

</comment></comment></comment></comment><comment><USER25> I'm terrible. I'll edit things randomly then make commits _before_ I'm about to do something.

<comment><USER26> This is one of the great things git makes it easier to do.

</comment></comment><comment><USER27> At first I thought someone was asking Linus to do this.

But this comes up over and over and people should really start doing it! Especially on large and/or well known projects. This isn't just something that's useful to others but it can help you too! I'm a naturally long-winded person but the point isn't to write an essay, you just have to sum it up on line 1 give some context and details for the commit, then let us know who you are and how to get in touch.

Fortunately I've never had to revert Amy changes in my work (weird, right?) but if and when that day comes I'll be prepared. 99% of my work is done alone but I still write some decent commit messages. Who here remembers the date of your changes? Do you remember the exact state of the project at that time? Even if you remember that "well, the project was in X state Y commits ago" it'll only help you for about 5 commits max then you'll forget.

You need to know what you were doing and so do others. Even if you don't plan on working with others, I'd you're on GitHub with a public repo someone may unexpectedly like your project and want to see what's up with each commit. I recently had a project up on github that I thought was literally only useful for myself. It was a basic brochure style website for someone I made as a favor. Well it turns out someone here on HN wanted to learn to code, got in touch with me privately, then started exploring my github repos nth at guy actually used the stupid website I was building as a way to look at some code, tear it apart, and see how it worked. I was flattered and now I'm glad I write decent commit messages even if I'm only working with myself.

The point is, you'll never know when someone else or even yourself will need to look back at the logs and if the commit message is nothing but a date or something like "fixed the link" then you aren't reverting to a known past state - you're guessing.

I know a lot of Git newbies get scared after pressing return in the command line and nano or whatever built in text editor pops up. I didn't know how to end the commit message the first few times and save it or get back to the "normal" terminal so this may be part of why this happens but not a big part.

In any case, I feel strongly that this is an important thing that's overlooked and I'm glad it was brought up again. Hopefully people do it.</comment>


Radio Sputnik, Run by Russian Government, Broadcasts in Kansas City MO - <AUTHOR> https://www.nytimes.com/2020/02/13/us/russian-propaganda-radio.html <comment><USER2> And yet I am unable to get my simple LPFM station up. Also we dont have any kind of LPAM program setup in the US. Thanks worthless FCC.

<comment><AUTHOR> Do it outside the law! I have a 15 watt FM stereo transmitter that I run on special events....</comment></comment>


Canada Teams Up with Tech Giants to Counter Extremist Content Online - <AUTHOR> https://www.reuters.com/article/us-canada-tech/canada-teams-up-with-tech-giants-to-counter-extremist-content-online-idUSKCN1TR2WT <comment><USER2> Why yes surely more censorship will finally stamp out wrongthink. It's all so simple.</comment>


Fast Iterative Algorithms for the Tower of Hanoi Puzzle - <AUTHOR> http://hanoitower.mkolar.org/algo.html <comment><USER2> Before reading, I thought they had found a faster sequence of disk transfers (stop the press etc) -- but it turns out the article is just about generating the same sequence of moves in less time, given the C compilers of late-90s workstations.

<comment><USER3> Highly unlikely to happen, since the upper bound corresponds to a well-known lower bound.

<comment><USER2> Yes, unless you find premises to drop, thus changing the problem. Sorting is Omega(n log n) under the premise that all you have is a computable ordering relation. Radix sort removes that premise and reaches a different lower bound.

In the particular case of the Hanoi problem, I don't see droppable premises (except "you can only move one disk at a time" -- drop that and there may be an O(1) solution).</comment></comment></comment>


Show HN: Fancy PNG/JPEG/SVG optimization with trade-off charts, 100% in-browser - <AUTHOR> https://recompressor.com/ <comment><AUTHOR> Hi, I'm the author of this tool, happy to answer any questions. Built it to get more nuanced insight into the per-image tradeoffs at varying levels of compression, and to get something that supports SVG. Most of our assets are SVGs these days, and other image optimizers don't give you trade-off graphs and most don't support SVGs.

The algorithm does pick a reasonable trade-off so you don't have to futz with the graphs if you don't want to.

(Your images never hit our servers, which is why this can and will stay free)

<comment><USER2> Hi, any chance you'll be releasing the code? It's a really well done little project.

<comment><AUTHOR> The PNG code is based on UPNG.js, the SVG is based on SVGO.js, the JPG is based on MozJpeg (run through Emscripten), and the charts are done with Chart.js.

The rest is just some web workers, the UI code, and a small quantity of HTML and CSS.

The goal of the project was to realize the vision of the trade-off chart, and to build an essentially serverless image compression tool so that it could be totally free without burning server dollars.

</comment></comment></comment><comment><USER3> This is fantastic, and going to be very underrated by HN. The visualisation is extremely useful.

<comment><AUTHOR> Thanks. You seem to be spot on about the HN community not finding this interesting. We've announced a number of projects on HN over the years and while I didn't think it was a slam dunk I did expect a better reception than this. Oh well.

</comment></comment><comment><USER4> This is really cool! Incredibly useful but also beautifully polished. Well done!

</comment><comment> yoz-y Very neat! It would be great if it were also available as a desktop app. How does it compare to ImageOptim (or does it use it in the background?)

<comment><AUTHOR> You can always save a Chrome shortcut to your desktop, but the app is entirely serverless javascript, so making a desktop app would be not much more than that, but with the disadvantage of not getting the Chrome updates.

</comment></comment><comment><USER5> That blue is hard to read...

<comment><USER6> Yeah, super painful on the eyes. Ouch!</comment></comment>


Coronavirus researcher shot dead in the US - <AUTHOR> https://www.nbcnews.com/news/us-news/researcher-verge-making-very-significant-coronavirus-findings-shot-death-n1200896 <comment><USER2> The fact that this has the word "Coronavirus" in the title feels like an inappropriate attention-grab here. Something truly terrible happened to a post-doc researcher. The title makes it sound like some sort of conspiracy is at play.

<comment><USER3> If true, I'd say "a medical researcher said to be on the 'verge of making very significant' coronavirus findings" being murdered makes the headline totally appropriate. I understand that the mind leans inevitably toward the question "was the murder related", making the headline seem like it's implying an inappropriate theory, but I just don't see another way of wording the headline any more neutrally, and I think it would be ridiculous to remove a relevant description from the headline just to avoid that inevitable thought.</comment></comment>


George Soros: Facebook and Google are a menace to society - <AUTHOR> https://www.theguardian.com/business/2018/jan/25/george-soros-facebook-and-google-are-a-menace-to-society <comment><USER4> I agreed with him until his conclusion:

"[Google and Facebook] claim that they are merely distributing information, but the fact that they are near monopoly distributors make them in to public utilities - and should subject them to more stringent regulations aimed at preserving competition, innovation and fair and open universal access."

George Soros always seems to be selling something, so hearing the billionaire cry foul gives me pause.

I don't disagree with the stated ambition – "preserved competition, innovation and fair and open universal access", but I'm hesitant to join the rallying cry for heavy handed regulation at this point. These always seem to come down on other companies that don't have the resources to manage the regulations and create an even more protectionist environment.

What are the unintended consequences of these regulations? We've all benefited from the work that Google and Facebook have open sourced (definitely pushed outside innovation forward), and many incredible businesses and entrepreneurs have found footing on the solid platforms of each.

I don't know. I imagine that if we view these companies on a longer time frame, we'll see that they end up folding in on themselves like every other company – just maybe a generation or two later.

<comment><USER5> I feel like the solution doesn't necessarily need to involve _new_ regulations. Maybe just the application of existing ones to those companies would be enough? Like his mention of "public utilities" \- what would happen, if search engines / social media started getting classified as such?

<comment><USER6> Almost every public utility I've dealt with is completely dysfunctional, so I'm not sure I'd advocate that unless my real aim was to destory them (which it seems to be for some).

It's never clear to me what people even mean by this - it seems like a fashionable phrase to throw around. So I second your question - <USER2> practically speaking would happen under this scenario? I'd prefer to hear the people advocating it be explicit about what they want and why.

<comment><USER5> I'll be honest here: I don't know. I've been thinking for some time now whether Facebook and Google should be "socialized", and I just can't see that working. In fact, I only mentioned utilities in hope someone who has an idea how it could work would share it. And the main question I wanted to ask is if we really need new regulations for whatever-we-want-to-do with Google & Facebook, or can we just reuse the old ones, and skip the part when we give governments more power?

FWIW, in my perfect imaginary world, Google Search would work as it had worked few years ago (back when it had less ads), while social networks like Facebook would be forced to interoperate through some shared protocols. But then again, my vision of the perfect Internet involves significantly reducing control the publishing parties have - that is, those parties should publish content and services, not dictate the way I should consume said content and services. I should be perfectly free to render any site any way I like, including not rendering it at all, but navigating through my own (or third party) software.

<comment><USER4> But regulations strike both ways. Your consumption patterns might not mirror the mandated consumption patterns set forth by the government. For instance, this is what folks against socialized medicine advocate - your freedoms as an individual are reduced.

I think this strikes at the heart of my contempt for heavy handed approach to regulation.

I kinda want to take that back and say we shouldn't be having this conversation at all. This narrative that everything needs to be regulated and the Internet is a something makes me more worried that we'll be required to do things as much as we'll be protected in doing other things.

E.g. a relationship between the government and Facebook in any fashion pushes us closer to allowing Facebook as some form of shared trust - perhaps making it an eligible Voting ID. We get to a point where it becomes more hassle than it's worth, benefiting the Gov and FB, but not really benefiting the end user.

Maybe that's the real Net-Neutrality: keeping a hands-off relationship between how I consume information and the regulation of such.

Yes, I feel like the regulatory movement is underway, and the narrative is beginning to brew. And, I think we're having someone else's conversation.

</comment></comment></comment></comment></comment><comment><USER7> From the speech transcript [ [https://news.ycombinator.com/item?id=16237684](https://news.ycombinator.com/item?id=16237684) ]:

"Social media companies deceive their users by manipulating their attention and directing it towards their own commercial purposes. They deliberately engineer addiction to the services they provide. This can be very harmful, particularly for adolescents. There is a similarity between internet platforms and gambling companies."

Good points to raise, but as a former Googler, I'm a bit surprised how he does not distinguish between Google and FB at all. Are we all Google addicted then? Remember Google's main business, Search, is still about getting you away from Google as quick as possible.

<comment><USER8> _Google's main business, Search, is still about getting you away from Google as quick as possible._

It used to be. But that was a while ago. Most of the Google search results today for popular topics lead to Google properties or are ads. As I've pointed out for years, when search works right, the search engine doesn't make any money. Page and Brin made that point in the original Google paper.

<comment><USER7> > Most of the Google search results today for popular topics lead to Google > properties or are ads

This does not match my experience. Can you give some examples? "are ads" \- do you mean AdWords, or websites in the search results that are actually ads?

As a single data point, I just did a Google search for [music subscription services]. First result (for me) is Wikipedia, followed by several comparisons, Spotify on 5th place, and Google Music not ranking in the top 10. Looks good to me.

<comment><USER9> What I see is a list of cards that take up most of the page. Each card has a logo in it. First card is Spotify, second card is Google Play. When I click on a card I get a search for that brand where the first result is an ad for that brand's website.

On the original page, the only other visible links are an ad for Amazon Music, and (mostly below-the-fold) "best music streaming services" from Consumer Reports.

</comment></comment></comment></comment><comment><USER10> I think Facebook and Google enable populism. George Soros doesn't like that, because if populism took care of everything they wouldn't need his billions funding organizations that seek to start populist movements that promote his values and narratives.

The main narrative that Soros promotes is "nationalism is racism" and the corralary "strong states are fascist". This is why he is unpopular with nationalist governments in Eastern Europe for example that reject EU immigration rules and why he attempts to undermine those government's legitimacy in Hungary for example. He can pay for media campaigns to support his positions and he can exert influence financially over media networks, but he can't control the masses on social media which thwart his vision.

<comment><USER11> This sounds like a rant by someone under influence of Hungary's hate campaign against Soros. The fact is that Hungarian government is dismantling democracy and both EU and Soros are right in pointing that out. And while immigration is a matter of national sovereignty, the attitudes towards Muslim immigrants in eastern Europe are driven by nothing but pure xenophobia.

<comment><USER12> Right on. The government in Hungary are scandalous in their treatment of immigrants and their own Roma people. And to think, it was only 13 years ago we let them into the EU. When, in turn, people on their doorstep in trouble come knocking, the door is firmly slammed in their face.

<comment><USER13> Eastern European and Western European countries' past history and experience is _very_ different from one another. And events that happened 600 years ago influence that world-view to this day.

The way an "enlightened" Frenchman or Italian might view Turkey is very, _very_ different from how a Bulgarian (such as myself) or Serb would view them. As to who's more "correct" in their view, well - that's a whole different subject.

These are complex issues and calling Hungary a bunch of racist twats is _exactly the same_ as what Hungarians are doing to "refugees", who, interestingly enough, are _disproportionately_ young men, in good physical condition, running away from countries that are _not_ Syria or otherwise in a state of war. Some of the photographs I've seen of the border crossing show a distinct and very noticeable lack of women and children. And that in itself is also a very interesting subject we could debate for hours.

<comment><USER14> > Some of the photographs I've seen of the border crossing

and you trust those photos?

<comment><USER15> The most popular set of photos used to spread this meme are scenes of a group of migrants arriving by train in Munich (not at a border crossing) that are exclusively young men; for reasons not entirely clear to me they were on a separate train from the women and children in the same group, who arrived the next day.

There's also pictures of groups of _boat_ refugees that show a large imbalance, which is true of those using that mode of transport, who often leave women and children to follow on once they've found a place because of the extreme danger of the route (which, yes, might evidence some degree of non-progressive concept of gender roles, but that's not the issue being raised.)

</comment></comment></comment></comment></comment></comment><comment><USER16> Facebook and Google both have histories of actively shaping user behaviour and directing attention which are very problematic. I definitely agree with that. Particularly Facebook, which seems much more aggressive and tone deaf in that regard. It's a problem that I think is a legitimate area for regulation or at least oversight combined with voluntary restraint, because users are being deceived. They should at least know how their attention is being directed and have some controls over it.

I don't agree that treating them as utilities is going to foster innovation. Really? Utilities are examples of innovation? Both Google and Facebook are still highly innovative companies, that's how they created and consolidated their positions. They key is that the future success of their innovations should be based on merit versus other innovative companies, rather than based on leveraging their current market strength in anticompetitive ways.

This is all really hard to do. There is just as much threat that clumsy regulation will stifle innovation, fossilize market positions and increase costs as there is that lack of regulation will lead to abuses by these companies. It's good that this issue is being debated, but I don't think anyone has good answers yet.

<comment><USER17> _Utilities are examples of innovation?_

It's funny, I take streaming 4k from Netflix totally for granted but I am genuinely impressed by the way natural gas and fresh drinking water appear in my house as if by magic.

<comment><USER18> And urban life as we know it would be impossible without sewage and sanitation services.

<comment><USER19> We've had that technology since Rome. I think it's fair to say most current internet and cable monopolies have been dragging their feet on upgrades, and even actively resisting innovation.

<comment><USER20> > We've had that technology since Rome.

No, the Romans did, through their _government_. Then it all disappeared until the last century, when _governments_ brought them back.

</comment></comment></comment></comment></comment><comment><USER21> A comparison to oil monopolies confirms that he's entirely confused. There is absolutely no historical analog to Google or Facebook.

Everything about the internet and computer technology is uncharted territory. The most technical human on earth can't predict what will happen even 5 years in the future.

It is safe to predict that Google and Facebook are going to be obsoleted by newer, cheaper, better technology. Google/Facebook operate highly inefficient businesses and that's the weakness that will wipe them both out. No government intervention will be necessary.

Hint: #decentralization

The big internet risk is the last mile, controlled by Comcast/AT&T. We need a campaign to move the whole country to fiber conduit powered by local internet providers.

<comment><USER5> > _Hint: #decentralization_

Any idea how it's going to happen? Historical evidence so far suggests technologies tend to _centralize_. And it's quite obvious why - <USER3> systems are generally more efficient in terms of energy use, time and (important for market) money. There's a solid incentive gradient pushing things towards further centralization, and very weak one in the opposite direction. I do not see anything on the horizon that would change it (and no, blockchains don't count for now - if anything, cryptocurrencies are a lesson in just how quickly systems centralize).

<comment><USER21> "Historical evidence" does not exist! There are new decentralized protocols being launched every ~day now. This is how decentralization really works, it's crazy and wild, and not at all planned by anyone.

Even just an evolved version of this, a ten thousand centralized internet currency marketplace, would constitute a decentralized internet currency _system_. And this is probably the weakest system that could result.

<comment><USER22> > There are new decentralized protocols being launched every ~day now

That may be true, but why does it matter if there's no adoption? As the guy you replied to pointed out, there's no incentive to use a decentralized system for the average user as it's more inefficient and slower by design.

I'm not saying that I'm not interested in decentralized systems, I'm simply arguing that there's no incentive to use them except for a few people whose interest in privacy is very high.

</comment></comment></comment></comment><comment><USER23> A long time ago, the printed word was the way to influence and disseminate ideas. Some ideas good, some less and most people could not read.

Then came Radio with it's ads and shows. It was another way to nudge the masses and shape the 'public' opinion. Everyone who had a radio could tune-in.

Television, the moving image! The joy: everyone could watch an endless stream of shows. This was not lost on advertisers ,corporations and propaganda arms of the states.

Now comes FB, Google, Twitter and all these attention hoarding 'services'.

I am not a user of any social medias (not do I condone their use), but how is that different from the previous innovations which allows mass communication? If anything it seems to me that Soros and others might find it decentralizes and weakens their power of media convergence? Would Soros think the same if he had been CEO of FB?

Of course I am sad of seeing so many young people wasting their attention on their illuminated mobile screens, and certainly see the harm in it. But Soros, what is you 'beef' with FB? I doubt that the devolution of humanity makes him loose sleep at night.

<comment><USER24> David Foster Wallace addresses this in his essay "E Unibus Pluram: Television and U.S. Fiction" [1]. The essay was written just as computing technology was starting to get to the point where it was clear it was about to be ubiquitous. For context, DFW is attacking Gilder's hypothesis that the decentralized nature of the next big medium will give people some measure of control over their reality, and he is using a novel by Leyner about a future in which everybody can slice and dice their experience of reality at will to illustrate his point.

"Leyner's world is a Gilderesque dystopia. The passivity and schizoid decay still endure for Leyner in his characters' reception of images and waves of data. The ability to _combine_ them only adds a layer of disorientation: when all experience can be deconstructed and reconfigured, there become simply too many choices. And in the absence of any credible, noncommercial guides for living, the freedom to choose is about as "liberating" as a bad acid trip: each quantum is as good as the next, and the only standard of a particular construct's quality is its weirdness, incongruity, its ability to stand out from a crowd of other image-constructs and wow some Audience."

I found it disturbingly descriptive of today's cultural landscape.

(NOTE: Obviously fiction analysis != analysis of reality, but the essay has some very good points.)

[1] [https://jsomers.net/DFW_TV.pdf](https://jsomers.net/DFW_TV.pdf)

</comment></comment><comment><USER25> How about we start treating internet as a public utility before we start demanding that web apps are.

</comment><comment><USER26> I would rather solutions to large concentrations of tech power not come from above, in the way of government further expanding its control over the private sphere, but from below, via technological innovation in the form of distributed technologies like blockchains.

<comment><USER5> I'd rather that too, but it is quite likely impossible. Technological innovation unleashed on the free market is what _caused_ this. Monopoly is a natural end-goal of a company, and it's the usual job of governments to prevent companies from achieving that goal.

(Also, I don't think governments need to approach this problem by expanding scope of their control; they could use the control they already have. Just break up too big companies, and the next time someone gets this large, break them up too. No need for extra special regulations.)

The only way blockchains can be effective at combating large concentrations of tech power is by cooking the planet, so there's no more technological civilization, and quite probably, also no more humans.

I just can't see why the one technology that has unbounded energy waste problems and is primarily used for get-rich-quick schemes is also seen as a _feasible_ way to solve societal problems.

<comment><USER26> These technologies broke up arguably worse monopolies, over information (Google democraticizing access to information) and media (Facebook and other social media companies breaking the hold that mass media had over people's opinions by giving them an avenue to directly communicate).

I think people forget how bad the mass media situation was. We had a handful of companies disseminate one way broadcasting to the entire population. The audience were passive viewers whose choices in programming were extremely limited, and who had very little ability to participate in the creation and curation of the media content.

So I don't think it's clear that the market, left to its own devices, doesn't evolve toward the direction of greater personal autonomy and empowerment, and it's certainly not clear that it doesn't have the potential to.

>>Monopoly is a natural end-goal of a company, and it's the usual job of governments to prevent companies from achieving that goal.

Bottom up switch over to open source is a viable market solution to market monopolies. If Android or Linux become the market standard in OSs for example, that is not a proprietary monopoly that gives one group control over the OS.

<comment><USER5> > _I think people forget how bad the mass media situation was (...)_

Good point. Come to think of it, Facebook _is_ a huge improvement over what came before. Some could say that the pre-Facebook blogging era was better, but I don't think those times ever had a chance of growing to encompass regular people. Most of the people who now share their lives on social media wouldn't bother hosting their own blogs. This thought colors my next point:

> _Bottom up switch over to open source is a viable market solution to market > monopolies._

I don't buy it for the same reason I think Internet-of-blogs wasn't a stable state - it's much easier to take open-source code and turn it into business than it is to take a business and make it open source. Open source, by its nature, avoids attracting money, and money is exactly how you win mindshare. You say, "If Android or Linux become the market standard in OSs for example", but the truth is that the only Android that could become a market standard is the _Google_ Android, and Linux has no chance in hell as long as Microsoft and Apple have money to better tailor (and market) their OSes to end users (regular people and corporations).

If anything, Open source has proven to be primarily successful for building blocks - libraries, frameworks, server operating systems, etc. Basically all the things that are not core to doing business. Sure, some of the things that open source displaced were market niches before - but they were all supporting infrastructure. The only sort-of-exception I can think of here is Google Chrome, but it only reduced Microsoft's monopoly, while enabling Google's monopoly.

Ironically, web browsers are what ultimately _killed_ end-user open source software. With SaaS being the dominant model of software deployment these days, _there is no open source_. You don't know what code actually runs on third party servers. You can't run it yourself easily (or most commonly, _at all_ ). We've completely lost the ability to download, inspect, modify and share most of the software we use, and "in exchange", we also let third parties take our _data_ hostage.

No, this development does not sound like open source being an alternative to market monopolies. In fact, it sounds like the exact opposite.

<comment><USER26> >>Some could say that the pre-Facebook blogging era was better, but I don't think those times ever had a chance of growing to encompass regular people.

Agree entirely.

>>the truth is that the only Android that could become a market standard is the Google Android, and Linux has no chance in hell as long as Microsoft and Apple have money to better tailor (and market) their OSes to end users (regular people and corporations).

Well Google Android has a much less entrenched position than Windows did, and it's precisely because it is open source. One can run non-Google Androids that are fully compatible with other Android apps, and Google would never be able to charge for its version for that reason.

>>Open source, by its nature, avoids attracting money, and money is exactly how you win mindshare.

While that's often the case, there are times where its nonproprietary nature facilitates its adoption. The fact that no one group owns an open source project can be an attractive feature, especially when disparate parties are looking for a common protocol or platform to collaborate through.

Cryptocurrency is both open source and attracts money. That's why I think blockchains might succeed against traditional web companies.

All-in-all I think our chances of being to solve the market monopoly problem with technology is good given the space of possible solutions. Of course this is just an opinion and I can't prove that it will work.

</comment></comment></comment></comment></comment><comment><USER27> To bring some counterweight to all the hatred towards George Soros:

A recent Freakonomics Radio show taught me he is a skilled Esperanto speaker. Esperanto enthusiasts generally belong to the more altruist type of people. This might or might not apply to him, but I considered this a sign he probably means well.

Edit: I see he learned it as a child from his father. I guess in that case it says little about his personality.

<comment><USER28> > A recent Freakonomics Radio show taught me he is a skilled Esperanto > speaker. Esperanto enthusiasts generally belong to the more altruist type of > people. This might or might not apply to him, but I considered this a sign > he probably means well.

Let me get this right, your argument is bluntly 'all Esperanto speakers are nice'?

How utterly ridiculous.

<comment><USER27> As I wrote: I think, on average, Esperanto speakers are more altruistic.

Someone who knows more about it should jump in, but as I get it: due to the limited use of the language, a lot of sharing is involved in the community.

Also, learning an almost useless language is hardly a selfish thing to do.

Why do you think this reasoning is ridiculous?

</comment></comment></comment><comment><USER29> A world famous hedge fund manager who made a fortune betting on the right side of billions of dollars worth of trades calls tech companies a menace to society.

Please, do tell.

</comment><comment><USER30> I agree with all except that it needs to be regulated. Nor Google nor Facebook (nor any social media) are pushed down our throats, and it is the choice of the people to use it. I don't understand how consumers can build judgement and learn to be responsible for themselves if we always shelter them from poor consumption choices through regulation laws. Furthermore if they're unaware enough to need regulation laws, it means they're unaware enough to be abused by regulation laws, so it's definitely not an actual solution.

</comment><comment><USER31> Dataism is here to stay: if it is not Google / Facebook, it will be somebody else. Progress can not be stopped. Those regulating their technology industry will be left behind. Taking a line from Jurassic Park: "Life finds a way".

We are doomed to become irrelevant, unless we are _really_ special, which is not probable.

</comment><comment><USER32> The real problem with Google, Facebook and other social media companies is that they are two faced. They present themselves as information sources based on organic interactions and ratings of their users but there can't be any guarantee that they don't manipulate feeds for other purposes.

Even without an advertising model, we can't go back to a time without curation. People try to game rankings and ratings for other reasons. That means that we can't trust what we see on social and, more importantly, draw any inference from what we don't see.

Society needs avenues of unmediated communication. I don't know what that would look like for social.

</comment><comment><USER33> Pot, meet kettle...

</comment><comment><USER34> It seems inevitable to me that these monopolies on search and social (and in other areas) will be replaced by something less centralized/subject to surveillance/propaganda and more sane and decentralized. We need open distributed, flexible, evolvable but also on some level holistic software protocols and systems that can be widely deployed rather than giant servers/ platforms controlled by for-profit companies in league with over-powered government.

See r/rad_decentralization on Reddit.

</comment><comment><USER35> If the rumours that Zuckerberg is prepping for the US presidency are true then this will be one of the first attacks to come on his business and character.

</comment><comment><USER36> Yup, and mr. Soros is such a nice guy. It's manipulating the society a bad thing, not the tools the bad guys use. Social media democratized manipulating the society, made it cheaper, that's all.

</comment><comment><USER37> Google+ is the best social network, I haven't been there in years.

</comment><comment><USER38> [https://i.ytimg.com/vi/PnRiGs3wYPg/movieposter.jpg](https://i.ytimg.com/vi/PnRiGs3wYPg/movieposter.jpg)

</comment><comment><USER39> We are seeing more and more news and speeches like that recently. While I agree with a lot of them, in terms that these big players are really bad for society, I keep thinking, what is making all of this to be published now? Who is actually behind that? If FB / Google fall, if the web with ads as we have today fall, who will get a ton of money?

Some of it might be a trend as we are seeing a lot of books, paid articles about focus, ditching social networks, etc, but I dunno if that is the trend or just a bi-product of the articles in the big media.

<comment><USER40> I would say that to some extent it's always been there. At different times, the public is more or less willing to hear certain arguments.

So arguments that only existed in say academia or quarterly political journals are now allowed to flow into more "regular" news sources.

Also, it doesn't help that now Google / Facebook are hated by both the left and the right. Usually you can survive for a while by playing both one side off of another. Very quickly though they got surrounded surrounded on all sides, like the Germans at Stalingrad, and there is no way out, and the vise grows tighter everyday.

</comment></comment><comment><USER41> George soros himself seems pretty menacing to me

</comment><comment><USER42> It feels like we're just trying to find something to get pissed off about. No one is forcing anyone to use these services. Everyone is using it by their own volition.

</comment><comment><USER43> I kind of feel like a billionaire calling anyone or anything a threat to society (in the sense of communal support) is very much a case of Pot Kettle Black.

</comment><comment><USER44> This is entirely peripheral to the discussion but I actually attempted to "watch" the live feed of Soros' speech on facebook.bloomberg.etc You know, where the little face emojis, each with a comment, flash across the stream. Never saw such unabashed hatred for anyone. Lies that a nine-year-old Jewish kid was a Nazi collaborator, implications that he was Satan, plaintive wishes that he would just die, "the works." It was a remarkable focus and quantity of pure hatred of a single person.

<comment><USER45> Do you think it would be any different for a speech from one of the Koch brothers? People who use their wealth to directly influence the political process are particularly reviled by their ideological opponents.

<comment><USER46> [https://www.google.se/search?q=ben+garrison+soros&tbm=isch](https://www.google.se/search?q=ben+garrison+soros&tbm=isch)

[https://www.google.se/search?q=infowars+soros](https://www.google.se/search?q=infowars+soros) (400k+ hits)

Try this with breitbart, glenn beck, fox news, right wing subreddits etc.

Is there any similar counterpart for Kochs and Mercers et al?

<comment><USER45> Are you wondering if there are lots of political cartoons for them? Seems to be.

[https://www.google.com/search?q=koch+political+cartoons&sour...](https://www.google.com/search?q=koch+political+cartoons&source=lnms&tbm=isch&sa=X&ved=0ahUKEwiZgt__1vXYAhULrFMKHdKnDSsQ_AUICigB&biw=1360&bih=752)

</comment></comment></comment></comment><comment><USER47> He's right, but I don't like that he's the person saying this. Our society has a serious problem with giving too much weight to the opinions of rich people and celebrities. Soros is not an expert on anything except investing. No one should care about what he thinks. I hate the fact that George Soros saying this is news but all the _real_ experts are largely ignored by the press.

I see the same thing with pretty much everything Elon Musk says. He's very rich, so whenever he makes some asinine comment about transportation or AI or tunnel boring every news agency is all over it.

</comment><comment><USER48> Takes one to know one.

</comment><comment><USER49> Says the guy who bankrupt 3rd world country central banks just because he could.</comment>


Ask HN: How do you find a good domain name these days? - <AUTHOR> I'm starting a consulting business .. trying to establish a business name and a web presence, I met a huge struggle during the past 2 weeks trying to come up with a domain name that is (remotely) relevant, available, and short. That, alone, is not the major issue really! but those who buy domain names and park only to trade them and turn a few bucks of profit as a business model! <comment><USER2> You could also look to alternative tld, xyz, io... [https://en.wikipedia.org/wiki/List_of_Internet_top- level_dom...](https://en.wikipedia.org/wiki/List_of_Internet_top- level_domains#English)

</comment><comment><USER3> Complaining about people who own domains is like complaining about paying for land. Pick the names you like, make a serious offer, and someone will accept. A good domain name is something you pay for like a good office or a good designer.

</comment><comment><USER4> Don't worry too much about metastatic optimization / pencil pushing :) Just stick a semi-memorable prefix (e.g. "get", "try") in front of the name you like

</comment><comment><USER5> panabee.com</comment>


Show HN: Rapid prototyping and development tool for web and mobile apps - <AUTHOR> http://www.steveapp.com/demo

<comment><USER2> "Stop looking for a developer." -- this is an interesting trend that is slowly, but surely, gaining traction. It's really taking hold in the indie game world, a lot of people now make games with GameMaker, Stencyl, and the like and often don't need a developer.

It makes a lot of sense that this will take place in the website and mobile app world too. I wonder what developers will be doing in 5 years, when most/all CRUD apps can be built with drag and drop.

<comment><USER3> This is nothing new and has been around since people started to make usable software for computer systems. The idea has been tried to death with countless software writing tools. MS DOS Dbase tools on top of dbase, written in clipper or what not to make CRUD applications by non programmers. There are generating tools from before that generating compile CRUD from just 'a business person definitions'. I have seen presentations from countless products like Filemaker, MS Access, Foxpro etc claiming that boring CRUD is gone and no programmers are needed anymore for application building.

When I was younger, one of the product managers for the Dutch product SDW told me that programming business software was something of the past as business people could just input 'how the app should work' and the app would be automatically built.

Outsystems have claimed this, as do Longjump and web based systems.

They all have something in common; they work for some cases, if you want more you have a problem. You CAN do it, but it's hard and the resulting 'code' (usually visual programming or 4GL) will usually be bad. Ohyeah, and you're still programming. Worse than you would have with actual developers from the start.

Note that most of them start out as simple systems, like this SteveApp. That's nice; it serves a purpose. But when you get users, people will request features and these feature will, in the end, require a full fledged programming language. So now you have non programmers creating an app up to a point which they still get and for more they'll hire you. They did a bit of 'programming' though in the built in language, which was made easy (which usually translates to visual and/or 'very much like English), so not very terse and often not very well written. Now you have 'code' like this [http://dl.dropboxusercontent.com/u/6134596/Screenshots/uo079...](http://dl.dropboxusercontent.com/u/6134596/Screenshots/uo079r9j~q3b.png) and you only have to fix some extra features :)

<comment><AUTHOR> I agree that the code generated by most software writing tools is horrible. That's why SteveApp doesn't even try to generate code in any programming language (unless you consider HTML a programming language of course).

The trick used by SteveApp is to generate dynamic HTML views which have the ability to save the data over a standard server API. Dynamically generating a markup language is easier, and I think it can be done successfully with a software writing tool.

<comment><USER3> I like that you are trying this anyway. I know and have worked with the tools I mentioned because I have a more than passing interest in them. Like you I do believe there must be some better way for a programmer to spend her or his time than implementing trivial but time consuming software (which, usually, has been repeated over the past 40 years 1000s of times without even referring to past endeavors).

</comment></comment></comment></comment><comment><USER3> Nice work. It looks good (on desktop browsers anyway). Please read my other comment in this thread and keep it simple as to something which is easy to use but doesn't 'want' too much. Looking forward to my invite!

<comment><AUTHOR> Thanks! I replied to your comment. It was very insightful. You will get the invite soon. :)

</comment></comment><comment><AUTHOR> I submitted this link a month ago but I learned the hard way that you shouldn't submit your startup on HN when it's not ready (it was downvoted). Hopefully this time I can get some reviews. :)

<comment><USER4> Unfortunately the site looks a bit of a mess on iOS. I suggest a basic browser detect so you can display a nicer looking splash page to mobile users.

You named your product Steve. If you want to go the Jenkins/Ask.com route of having a product with a human name then come up with a memorable and attractive avatar for Steve ASAP. Personally I would be weirded out using a product with a bland and generic name like "Steve". I understand this is subjective, but you may want to iterate on the name until you find something interesting and memorable. This may sound trite, but in a crowded marketplace where every conversion matters you'll want every edge you can get.

<comment><AUTHOR> Thanks for testing. I will fix on iOS. The goal is to make it work on tablets also at least, but I'm not there yet. :)

About the name, the original idea for the app was "Steve, your technical cofounder" (an allusion to Woz obviously). I will definitely think more about the name.</comment></comment></comment>


Judge Promoted by Trump Administration Threatened a 2-Year-Old with Attack Dog - ga-vu https://www.motherjones.com/politics/2019/09/judge-promoted-by-trump-administration-threatened-a-2-year-old-with-an-attack-dog/ <comment><AUTHOR> It needs to be far easier and far more common to fire judges for bad behaviors.</comment>


How to listen to your customers - using Rails and Javascript - <AUTHOR> https://gocardless.com/blog/making-something-customers-want/

<comment><AUTHOR> I've had a few emails about Open sourcing the stuff we've done. We're considering adding a few features and releasing it into the wild, I'd love to hear what people would add?

</comment><comment><USER2> Nice idea. I'd genuinely like to see this open sourced. I could see it slotting into some of our efforts.</comment>


Build to learn – tame your shiny object syndrome - <AUTHOR> https://almostcake.com/buildToLearn.php <comment><USER2> This is really unique approach. I often wondered about doing it that way, but never seen article about it. Thanks!

<comment><USER3> I've heard of "build, ship, learn and repeat" \- so something along those lines.

<comment><AUTHOR> Not heard about it, but will Google it. Thanks!</comment></comment></comment>


New website maps your political stances to the 2012 presidential candidates - <AUTHOR> http://www.isidewith.com/presidential-election-quiz Pretty cool new site that shows a breakdown of which candidates you side with by issue. Definitely worth it if you have two minutes to answer honestly. <comment><USER2> This is really cool. I got a 89% Ron Paul. Interesting to see how I agree/disagree with everyone else though.

</comment><comment><USER3> I love that they included the third party candidates

</comment><comment><USER4> 88% Ron Paul.

Some of the choices could be worded better. There are also some tough issues that might not be easy A/B/C/D answers (example: immigration)</comment>


The Anti-Dashboard Manifesto - <AUTHOR> http://neugierig.org/software/blog/2014/07/anti-dashboard-manifesto.html

<comment><AUTHOR> For anybody looking to apply this mindset on OSX, Bartender is a great app for organizing and filtering menu bar icons:

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

</comment><comment><USER2> You should give rio window manager from the plan9port a shot. There is no cascading, window borders, background etc.</comment>


California considers declaring common pain killer–acetaminophen–as a carcinogen - <AUTHOR> https://apnews.com/fd769fe0f9d417c47a947c12c14ea3bb <comment><USER2> As a California resident, the endless classification of basically everything as a carcinogen has had the opposite of the intended effect. Now I just ignore all the warnings because they're meaningless in everyday life.</comment>


On "magic", once again (from James Bennet, Django dev) - <AUTHOR> http://www.b-list.org/weblog/2009/jul/23/magic/

<comment><AUTHOR> I'd say the money quote is:

"To put it concisely, I think that's what a lot of critiques of "magic" really boil down to: the notion that just because you _can_ do something doesn't mean you _should_. Accepting this can be tough, but I think it's a necessary part of becoming a good programmer; if you don't have a certain sense of discipline and respect for the power you're wielding, well, you might up cloning dinosaurs and getting eaten by them when the power goes out."

Going beyond Ruby, I do have this criticism for a number of the really dynamic languages. Doing one of the mighty wizardly things might work, but it often has side effects that only a wizard will know. Sure, hacking on the Array class in Javascript can be cool, but breaks things like property enumeration in "weird" ways (well, I understand them but a newbie won't)... are you _really really sure_ that your awesome new functionality couldn't have just been done with a simple function that takes an array as the first argument? Or did you actually _need_ to extend Array?

Sometimes the answer is, yes, you needed to extend Array. OK then. But it frequently isn't. Wizardly code tends to tie your code up in snarls; one minute you're wizarding this, the next that, then the wizard hunks start interacting, then all hell breaks loose and you get an incomprehensible mess, when it could probably have just been some functions with a bit more verbosity on the calling side. I know; I've been through this pattern at least two big times, including the refactoring back into functions, and I consider this a shameful admission, justified only by "I was young and we all are young at some point"... and I can't help but notice I rarely lose much of significance when I do the refactoring back into functions.

<comment><USER4> The trouble is, many people appear to believe that your argument that there are things which one _generally shouldn't do_ with dynamic languages has the corollary that one _should not be able_ to do them, i.e., that these features should not be available in the first place. The nuance of "Most of the time you shouldn't do this, but sometimes it's necessary or even the correct approach" tends to get lost; only the first clause gets parsed, and we have yet another round of stupid arguments in which one side says "Dynamic languages are _bad_ because you can change the way core objects function", and the other says "Dynamic languages are _good_ because you can change the way core objects function".

There is a possible explanation for this: language fundamentalism is an easy position to hold, while subtlety is demanding. Dogma merely requires one to follow its commands, rather than using one's judgement to negotiate between conflicting demands. I hope that this isn't, in fact, the reason that these arguments perpetuate, but I fear that it is.

<comment><USER5> There's something to be said for language enforced limitations supporting encapsulation when creating an ecosystem of reusable components - <USER2> Java/C# has been great at.

An analogy is enforced immutability. Unlike Ruby, Python has immutable strings and tuples, and requires the use of immutable objects for hashmaps - a great choice for library writers, though a minor inconvenience for application programmers who want to say "trust me, i won't change this object later."

<comment><USER6> Small nitpick -- Python doesn't _require_ immutable objects for dictionary keys, it just won't work correctly in some cases with mutable keys.

<comment><USER7> Well, technically the requirement is to implement both __hash__() and one of __eq__()/__cmp__(). But Python fudges this a bit in how it handles user- defined types.

</comment></comment></comment></comment></comment><comment><USER8> Wonderful article. Well measured and smart.

There can be a lot of hate on Rails over "magic", but a lot of it isn't that hard to understand.

From a comment on the article:

 _The obvious example of 'magic' in Rails (beyond all the activerecord stuff) that I always mention, is that the controllers (equivalent to Django's views) don't take a request parameter in the function definition. They also 'magically' render the relevant template without you have to do it explicitly._

Well, the first part of that is that Django uses functions and Rails uses methods of an ActiveController subclass. It's just that the things that would go into a request parameter were initialized as class variables with accessors and then the method was run. Now, you don't see the initialization, but it's not as if you ever explicitly pass "request" to a function in Django through urls.py. You just declare functions as taking that parameter, but in urls.py you say:

      (r'apple/$', 'project.apple.views.apple_view')

and "magically" the request object gets passed to that view and magically it's imported into the current context without specifying an import statement.

Similarly, one could argue that rendering a template without having to explicitly specify keeps Rails DRY. With Django, there's plenty of opportunity to make things harder to keep track of if you're constantly randomly naming templates.

\--

What makes James' piece so good is that he realizes that it's not about magic or not. It's about a balance. No magic means you're constantly repeating yourself and leaving yourself prone to errors. Too much magic and people can't understand what's going on. Clearly managed memory isn't too much magic in most people's opinion. But it is magic. Is assuming that the action "apple" of the controller "Fruit" should want a template fruit/apple too much magic?

In my opinion, that seems like a sensible conclusion. It's overridable. It follows.

 _The problem is that there's a ton of people that don't seem to realize that Django and Rails aren't that different. People continually want to make silly judgements between the two and claim one the victor - people who usually aren't the ones developing those frameworks. Heck, even DHH has talked about being able to use Rails 3's routing to add Django powered sections so that one could take advantage of GeoDjango's cool spacial stuff if one wanted. The Django core team is never really badmouthing Rails._ There just seems to be people who want to fight over whether you have to say "def view(request)" or "def view" when neither is that helpful or that much of a hindrance. Is this how people keep from having to write their applications? Language and framework wars?

Me, I keep from writing my applications on HN ;-).

<comment><USER9> > Similarly, one could argue that rendering a template without having to > explicitly specify keeps Rails DRY. With Django, there's plenty of > opportunity to make things harder to keep track of if you're constantly > randomly naming templates.

Oh come on, if you're going to constantly randomly name things, no matter what they are, your application will be a mess no matter what framework you choose.

</comment></comment><comment><USER10> I'll repeat my reply here, because I prefer the discussion participants ;)

After 4+ years with Rails, it was very refreshing to read this insightful post. All the spinning plates is the reason the Rails Way is larger than most of my Java books, and about equal in size to my Spring in Action (2 ed) book. Rails has simply baked too much magic in, and keeping track of it is a nightmare. It might be helped somewhat if the docs were better (and the guides are making this much better), but it's still painful. Combine that with an inconsistent API and a codebase that takes advantage of virtually every magic trick ruby has to offer, and you have a framework that excites you at first but wears you down over time. I've developed very large systems with Rails and it's served me well, but it's also made me very weary.

This is the reason both Python in a Nutshell and the Definitive Guide to Django now sit open on my desk. I come seeking clarity, explicitness, and productivity. I've shied away from Python for years because of some awful inconsistencies in the language and lack of closures (I <3 closures), but if it keeps things straightforward and clean, I'll overlook them.

I'll probably always prefer Ruby as a language in general…as a tool with which to perform magical displays of power and light…but I'm very close to giving up on it for day-to-day real work.

</comment><comment><USER11> Great post. I will say, while I rarely do things in a "magic" way just for the sake of it, I often do it to understand how something works, which, admittedly, may be just as bad. A good example is using generators in python; While writing a program I happened to be reading about generators, so I decided to incorporate them into my code, thinking that doing so would help me understand them better. It worked fine and I understood it at the time, but now if I were to go back and muck with that code, I'd probably have to brush- up on generators just to make changes that didn't break the whole thing.

So I guess my point is, another valid reason, beyond "doing it just because you can", is "doing it so you can learn". However, the end result seems about the same to me.

</comment><comment><USER12> > The right thing, if there is one, consists of a willingness to learn how > stuff works even if it's unfamiliar or seems complicated

The key point is: how hard is this magic to learn, and how much is there learn? For some types of "magic" there is simply no way to learn how they work. They're just arbitrarily baked in in such a way that even a person skilled would never figure it out. You just have to hope that the documentation is good and put your faith in it. It's true that programming languages ask us to accept things on faith in just such a way, but that is why languages themselves are so minimalist - they have to be so that we can afford to learn them at such expert level that we can use them competently despite their magical nature. Frameworks like Rails, Grails and Django are anything but minimalist. To ask us to learn everything about them without strong links to the foundational languages they are built on is asking too much - <USER3> doesn't scale.

</comment><comment><USER13> Precisely.

Just because one has a very sharp knife does not mean one should wave it around in casual conversation.</comment>


Ask HN: What resources do you use to lighten your heart? - <AUTHOR> Recently, three of my closest friends passed away due to various reasons. It made me reflect and realize that I am reading too much serious content that makes me knowledgable but not necessarily peaceful and content. Curious to know how everybody else is balancing serious reading with stuff that lightens your heart. <comment><USER2> Lately, I just bury my face in Neal Stephenson's Snow Crash.</comment>


Ask HN: Should someone write something "complex" without reading about it first? - <AUTHOR> I'd like to write an interpreter, and thought it would be nice to write one without learning/reading about them and then once it's done, read a book about it to see what I should have done differently. One of the appeal for me is that many things I read these days solve problems I haven't encountered which makes me sometimes wonder If I'm not just doing certain things because I read about them rather than because they actually are useful/solve an issue.
However, a downside, is that it may be an enormous waste of time and be almost impossible with little to no benefit. What do you think?
And do you believe there is a threshold (in difficulty, complexity...) at which point it isn't advisable? (An interpreter could be before or after that threshold) <comment><USER2> If your goal is to learn, I believe this is THE way to do it. My experience has been that reading about something complex without attempting it first isn't effective. If you are not familiar with the problems you won't understand or appreciate the solutions. It's like listening to a lecture about rocket science without a background in Physics - there is useful information, but you won't be able to process or connect them to anything you know. And that also means you won't retain the information.

Of course there is a limit to this. It wouldn't make sense to intentionally avoid looking up solutions if you are stuck on a specific problem for several hours or days. But IMO it also doesn't make sense to read a whole textbook without trying to implement anything. What has worked well for me is to do it in an iterative fashion. Read when necessary.

</comment><comment><USER3> > be almost impossible

Just for this reason, I'd say no. You won't learn much from something that feels impossible, because it's too complex to analyze your findings.

What you should do is rephrase the problem into something that is possible... I'd say with about 50% chance of failure. Instead of a full interpreter, write a component of one maybe. Or try reverse engineering a simple one. Maybe try cloning an existing one so you can see where problems lie.

Just the act of breaking down an impossible problem into a possible one is a major skill.

</comment><comment><USER4> Go for it! You won't know until you try and so long as it's not 'mission critical' or anything you'll have a lot of fun!

And ignore 'threshold', often it's an imagined difficulty, check out George Dantzig[0], he mistook two unsolved maths problems for homework and solved them both!

[0] [https://math.stackexchange.com/questions/533146/dantzigs- uns...](https://math.stackexchange.com/questions/533146/dantzigs-unsolved- homework-problems)

</comment><comment><USER5> For hobby and learning? If you have time to write it blindly and then review the literature afterward, go for it. It's a fun and enlightening experience. The only real tradeoff is that you might have been able to learn about two different topics in the time it takes you to start from scratch and then rewrite after a review of the state of the art.

For job-related work? Definitely not. Always survey the state of the art first.

</comment><comment><USER6> I think definitely go for it. Once you've experience problems firsthand you'll have created little questions in your mind that the reading will help you answer.</comment>


Show HN: I'm writing an ebook on writing ebooks with Markdown - <AUTHOR> https://leanpub.com/markdown-to-ebook

<comment><USER2> if anyone else out there is considering using markdown to format e-book files, please get in touch with me -- firstname.lastname@example.com -- if you'd like to experiment with a light-markup system geared explicitly for long-form.

-bowerbird</comment>


An example of an engaging "404 Not Found" page - <AUTHOR> http://null.kiwi.net/foo/404.php?m=1 <comment><AUTHOR> I posted this earlier: <http://news.ycombinator.com/item?id=4122804>

It got flagged, and someone suggested that the title alone might make some people flag it without reading.

        I nearly flagged it based on the title alone ...
        It screams "someone tried to post a link to HN
        but pasted the url in wrong". -- mooism

So this is a re-submit in case you flagged it without reading and in fact would be interested, or in case you missed it because it got flagged, when perhaps it shouldn't.

</comment><comment><USER2> This 404 page isn't used - any mistyped kiwi.net URLs just redirect to the homepage.</comment>


Wildlife collapse from climate change is predicted to hit suddenly and sooner - <AUTHOR> https://www.nytimes.com/2020/04/15/climate/wildlife-population-collapse-climate-change.html <comment><USER2> These articles scare me. Another one with exactly the same message: Things are worse than we thought, it was already bad, we are not coming close to doing enough to save us, there isn't even much of a plan.

And then I see most of the west handling covid-19 just like we handle everything: No clear direction, minimal effort, leaders asleep at the wheel, politicians trying to get the better of each other, rich people get richer.

Climate was an important theme in our last elections, but even the green party had no clue whatsoever, and the voters made it clear they did not even remotely care.

Now Covid-19 is easy stuff compared to the climate. I was hoping Covid-19 could serve as a wake up call for the cost of incompetence in our organisations. But that does not seem to happen.

Covid-19 has a pattern I also see in the climate: First, nobody cares for some theoretical crisis far away, then its in our countries but still not personal, and by now everybody knows about a specific person who died. Climate is a theoretical crisis far away for now.

So how do we proceed from here?

<comment><USER3> > So how do we proceed from here?

Like we always do when our leaders fail us. Organise and rebel.

<comment><USER4> So on top of environmental collapse we can have social collapse as well? Sounds like a recipe for success.

<comment><USER5> A social collapse would coincide with an economic collapse and lower emissions. Honestly, speaking as a former climate change-adjacent geophysicist, I'd take it.

It is becoming fairly clear we will have revolutions. At some point, things will deteriorate to the point it will happen. Normalcy bias is a hell of a drug, and we are all sniffing it really hard.

The ruling class is unwilling and unable to solve this or any other wide-scale societal problem we have. Ruling classes never yield power without force.

<comment><USER4> Why do you prefer that outcome? Social and economic collapse could cost millions of lives, and mostly among the poorest parts of the world.

<comment><USER5> We're headed towards a collapse either way, with many, many millions dying. Very possibly billions over the course of this century. Either it's a major society upheaval leading towards positive change, or it's just general societal breakdown as civilization as we know it becomes impossible. Our current political-economic system is simply not up to the challenge, so not having upheaval is not an option.

A comparatively mild collapse sooner is better than later. This really is an existential threat like we have never experienced.

<comment><USER4> Have you considered alternative scenarios?

<comment><USER5> Yes. This is something I think about quite a bit, since I did used to work on climate-change related geophysics. If we started combating climate change decades ago, we wouldn't need such a drastic change. Realistically, no real change will happen for another decade, but our backs are already up against a wall.

Having waited so long, the changes required are unbelievably radical and painful, in that our entire way of life must change. AOC and Bernie's Green New Deal is woefully inadequate, and that's considered extreme. I can't see that happening when we can't even figure out how to make paper face masks.

<comment><USER4> But if human civilization has flourished in much warmer earth in the past, why are you so convinced that a warming globe is necessarily a bad thing? Humans seem pretty adaptable, especially if the change is slow like climate change seems to be. That would seem like a good alternative view to investigate before putting all your money on "destroy the current world order".

<comment><USER5> Human civilization has not flourished in a much warmer earth. That is 100% falase.

Human civilization has only existed during the Holocene, which has been a period of stability. We are now in the Anthropocene.

These changes are also very fast. By 2050, we will be living in a different world. Even in the 2030s, climate change will cause massive amounts of instability in developing countries due to droughts and famines, and huge migrant crises. It only takes 2-3 major food producing regions to have significantly failed harvests at once to have a famine on the scale of 1-2 billion going hungry. With a stable climate, this hasn't happened. However, it becomes more likely all the time.

The changes we are facing will lead to large portions of the tropics being uninhabitable without A/C and unsuitable for agriculture. That is where most of the world lives. This change is happening very fast, faster than we can adapt. Our industrial civilization depends on immense resource consumption on a global scale. This will be completely disrupted.

Trust me, I know a lot about the climate and its effects. It is a bad thing. No one seriously says it isn't. It's delusional to think it could be a good thing. Your line of thinking is just a continuation of the denialist garbage that got us into this mess.

<comment><USER4> I'll take your word you are an expert, and what you say sounds alarming. I cannot make all the connections, though. For instance, much of the Middle East lives in temperatures that fry eggs during the midday. I was in Afghanistan during the summer, not always with A/C. Not pleasant, but I wouldn't say uninhabitable. I also wonder about being unsuitable for agriculture, since plants flourish in greenhouses, which are quite hot and humid.

On the other hand, I can accept there will be large droughts, famines, and huge human migrations in the future. Our population continues to both climb dramatically, while congregating in a few very dense areas, mostly the cities where living is easier. That is clearly an unsustainable model.

<comment><USER5> I used to be a glaciologist, specifically. People don't grow significant crops in those hot deserts. Afganistan has hot summers, but not horrifically hot compared to some areas. Afganistan also has low humidity, which is key for our ability to perspire. The worst-hit areas are humid tropical climates.

Middle eastern populations in the hottest and humidest areas usually have AC. Most other places aren't quite so bad, due to lower humidity if not lower temperature. Traditional populations lived in stone or mud brick houses that can withstand the midday heat better.

There has been several occasions recently where the heat index has gotten near fatal in Rajasthan and Punjab, which caused quite a few deaths.

Greenhouses aren't that hot, usually not more than 30C. Not many plants like it super hot. Even plants in hot climates will do better if its a bit cooler. With hotter climates, plants (at least the ones people rely on) undergo more heat stress and have shorter growing seasons. Much of Africa is drying, especially the Sahel. Similar situations will occur in many parts of S. America and Asia.

A big distinciton here is timeframe and how much mitigation happens. We are more or less locked into a 3C rise, which is really bad. And that's our effective best-case scenario. However, if mitigation fails, and it has thus far, a 7C rise by the end of the century is not out of the question. That will lead to a total civilizational collapse and probably eventual human extinction. We wouldn't be able to maintain an industrial civilization in such an environment, and we'd have to fall back on localized, less industrial production. But, the environment would be so degraded that non-intensive agriculture probably couldn't provide enough food to stave off continual population declines.

<comment><USER4> Thanks, this is more convincing. So it looks like it is the,combination of great heat and humidity. Would that combination lead to more cloud cover and then back to cooling?

And, thank you for answering my questions, vs just dismissing me as a denialist. The way you are approaching the issue is making it easier for me to understand.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> _How did you go bankrupt?

Two ways. Gradually, then suddenly._

― Ernest Hemingway, The Sun Also Rises

<comment><USER7> Yeah. But the bankruptcy of the ecosystems make me sad.

<comment><USER8> It's going to make all of us a lot worse than sad.

</comment></comment></comment><comment><USER9> There seems to be a huge assumption that when a species is exposed to higher than usual temperatures they'll be a collapse of said species. Certainly this holds true for some species, but all species?

I'm a little skeptical. Basically the paper says that large groups of species will encounter higher temperatures than they have before (1850-2005, going by mean annual temperature, and higher defined by 5 years all above the previous high mean). And because of that, they'll be a huge ecological disaster.

I get the temperature part. That makes intuitive sense (the whole planet is getting hotter, duh), and doesn't seem like anything new.

What does seem new is the seemingly (I'm up for explanations about why they make sense) arbitrary threshold they use.

Is this a good paper, or just an appeal to fear? (That's a real question, but to me at first glance, it seems like an appeal to fear).

<comment><USER10> It's not whether or not individual members of a species can survive if it's a little hotter. The problem is that climate change is destroying entire ecosystems in which these individuals exist. A polar bear can do ok in a zoo in San Diego, but polar bears will go extinct once their habitat in the Arctic disappears.

<comment><USER11> And don't forget the food chain. Everything at the top is dependent on below.

</comment></comment></comment><comment><USER12> The original paper is talking about "abrupt ecological disruption", but the NYT article title is "Wildlife Collapse From Climate Change Is Predicted to Hit Suddenly and Sooner"

I've read the paper, and if I understood correctly the hypothesis is that because there are less usual seasonal variations of temperatures near the equator, ecosystems in this area are more susceptible to be disrupted by global warming.

Talking about disruption seems safe from a scientific point of view, but collapse is almost synonymous with extinction, this is quite a leap...

</comment><comment><USER13> [http://archive.is/Odrte](http://archive.is/Odrte)

</comment><comment><USER14> The emperor have no clothes!</comment>


The Assessment Gap: Racial Inequalities in Property Taxation - <AUTHOR> https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3465010 <comment><USER2> The thesis of the paper is that house values are assessed higher relative to their market price in poor minority neighborhoods.

This is logical because poor neighborhoods are the most cash strapped and so the government does everything it can to generate cash without raising taxes. The easiest way to raise property tax revenue without raising taxes is to value everyone's home higher.

The difference is that in the suburbs, the home owners are more likely to fight these revaluations and win.

Local voters, elect local officials, who set local tax rates. Not to look at outcomes and put some scheme in place, per the authors' suggestion.

The fix for the problem is to elect a different set of local officials.</comment>