How the most popular Chrome extensions affect browser performance - <AUTHOR> https://www.debugbear.com/blog/2020-chrome-extension-performance-report <comment><USER2> An note regarding the memory usage in Chromium and uBO specifically.

I have observed that even though the memory usage as reported by developer tools under "JavaScript VM instance" stay rather stable in uBO[1] even after a lot of memory churning operations[2], the figure reported in Chromium's Task Manager keeps climbing up after each of these memory churning operation, and forcing garbage collection does not bring the reported usage down in the Task Manager.

There is something happening in Chromium's extension process (and outside the JavaScript VM in which the extension run) which may cause wildly various memory figures for even the same extension depending on how much memory- churning operations have occurred -- I wish Chromium devs would provide technical insights about this.

* * *

[1] Around 8 MB when using default settings/lists.

[2] For instance, repeatedly purging all filter lists and forcing an update.

<comment><USER3> I just want to say thank you so much for uBO

</comment></comment><comment><USER4> Utterly fascinating article.

The main takeaways seem to be that 1) extensions in general wind up _massively_ increasing CPU time (by 5-20x) when loading "example.com", and 2) ad blockers wind up _massively_ reducing CPU time (by 4-20x) when loading a "WCPO news article".

Which makes me happy that I use uBlock (edit: Origin, thanks below), and sad that I have to use LastPass.

 _HOWEVER_ \-- I feel like both these metrics are potentially highly misleading, because CPU time isn't something the user directly observes -- it might be the limiting factor, or it might not affect the user experience at all (because the CPU usage is happening while waiting for further network resources that are even slower, or the CPU usage is happening after the page has visually finished loading all relevant content).

I'd be much more interested to see how extensions like Evernote or LastPass increase the time it takes for a real webpage (e.g. "nytimes.com") to _finish painting the viewport_ not including ads, and similarly whether adblocking actually decreases the same -- or if all the advertising stuff really only happens afterwards. (Because sites are architected differently, you'd need to compute an aggregate score across a range of common sites.)

<comment><USER5> > I have to use LastPass.

I recently switched from LastPass to 1Password because of the added latency from Lastpass. Lastpass adds about 70ms to first contentful paint on example.com. 1Password, on the other hand, runs after the painting is done so it doesn't block rendering. I polished up a blog draft I had lying around about switching to 1Password: [https://joe.schafer.dev/passing- lastpass/](https://joe.schafer.dev/passing-lastpass/)

> I'd be much more interested to see how extensions like Evernote or LastPass > increase the time it takes for a real webpage (e.g. "nytimes.com") to finish > painting the viewport not including ads.

I reinstalled Lastpass to test on nytimes.com. It takes 58ms to evaluate onloadwff.js (the Lastpass entry point) before any content is rendered.

<comment><USER6> I have LastPass, but I keep it in "only activate extension when I click on the toolbar button".

The only annoying thing is that LastPass requires the whole page to reload first - I don't know why Chrome can't load an extension into an already-loaded page.

</comment></comment></comment><comment><USER7> _Most ad blockers work by blocking certain network requests that are initiated by the page. DDG Privacy Essentials reduces the number of network requests by 95% and the download weight by 80%._

 _DuckDuckGo Privacy Essentials reduces the CPU time of the article page from 31s to just 1.6s. All other tested extensions also bring CPU time down to at most 10s._

It seems the single most important thing regarding Real Word Performance is a good content blocking functionality (not to mention other boons). Why don't browsers come with one by default?

<comment><USER8> Because the most popular browser is made by a company that makes the vast majority of their money from ads.

<comment><USER9> And to large extent, the same developers that complain about ads are the ones to blame that Chrome has reached that market leadership.

</comment></comment></comment><comment><USER10> Great research! I'm a user of evernote web clipper and seeing that they're adding 3mb to every page that I'm using is extremely discouraging. My browse to clip ratio is around 1000:1 and I'm probably removing the extension after this.

Just wondering, can browser extensions codesplit their bundles? If it's possible, then it is really disappointing to see these large companies loading huge bundles on initial load.

<comment> Lex-2008 Did you try to set the extension to "run on click"? Right-click extension icon, "This can read and change site data" -> "When you click the extension". I didn't try it myself (it might require reloading the page), but might be an option for 1000:1 browse to clip ratio.

<comment><USER10> Awesome - Didn't know about this trick. I'm reconfiguring most of the my extensions to this.

Gracias!

</comment></comment></comment><comment><USER11> This is a worthy research topic.

On mobile, with slower networks and much worse CPUs, uBlock often completely changes the experience. (thanks Mozilla!)

I would note though that only example.com was examined (and apple.com in one test).

I also did not see information if tests were repeated, as no variance/stddev is given. I'd expect it to be pretty high.

<comment><USER12> How are you installing Firefox extensions in mobile? Is it Android only?

<comment><USER13> Firefox for Android is (at least for my usage) pretty much desktop Firefox with a touch-friendly UI.

Firefox for iOS is not really Firefox.

<comment><USER14> All webbrowsers on iOS are basically safari reskinned.

</comment></comment></comment></comment><comment><USER15> Not at all surprising that the worst two extensions by a long way are both from Avira.

Yesterday I opened Chrome and received a warning that the Avira extension had been installed.

I certainly did not install it willingly. I'm pretty sure I didn't install any other software that sneakily bundled it recently, either - I mean, I'm 99.9% sure that I haven't installed _any_ software in the past week. So how why did it suddenly show up? I reported it to Chrome from the web extensions store. Highly unlikely that they'll do anything about it though.

<comment><USER16> > So how why did it suddenly show up?

If Avira has a pay-per-install program, I would say it's pretty likely that you're part of a botnet.

<comment><USER15> Interesting.

I ran every kind of virus test I could find about a month ago since I was getting weird display/jank issues. Couldn't find anything, and in the end I tracked the issues down to a windows display scaling error.

Any idea how I would go about testing for a botnet?

<comment><USER17> I've seen resetting Chrome fix all sorts of weirdness:

[https://support.google.com/chrome/answer/3296214?hl=en](https://support.google.com/chrome/answer/3296214?hl=en)

<comment><USER18> Resetting chrome isn't much of a solution if the underlying problem is botnet affiliation (trojan, rootkit, etc). Should be reasonably easy to shut down all applications and services, and inspect the traffic going through the router for suspicious domains. If you only have a windows machine connected there should only be Microsoft traffic and maybe the router manufacturer. Anything else, and it's probably malicious.

<comment><USER19> Inspecting your PC's traffic from a sniffer on your PC to find a rootkit seems like a fool's errand.

If something has driver / kernel level privileges it can trivially hide such traffic from any sniffer you have running.

<comment><USER18> Yes, that's why I said to inspect the router's traffic

</comment></comment></comment></comment></comment></comment></comment><comment><USER20> It's entertaining that there is yet another area where "running large numbers of regular expressions, known in advance and not changing all that often" over lots of input is performance critical.

This was a key driver behind writing Hyperscan ([https://github.com/intel/hyperscan](https://github.com/intel/hyperscan)) which I used to work on when it was primarily used for network security (thousands or tens of thousands of regular expression rules for firewalls), but doing this for ad blocking seems pretty sensible too.

<comment><USER21> This is indeed a performance critical problem, but it is already pretty much solved at this point. If you look at the performance of the most popular content blockers, their decision time is already below fractions of milliseconds. So it does not seem like performance is really an issue anymore.

<comment><USER20> Yeah, I don't doubt that it's solvable by other means (notably hashing). It's just amusing that something we started building in 2006 - and open sourced in 2015 - largely solves a problem _directly_ (i.e. you don't specifically have to rewrite your regexes).

<comment><USER21> To be fair, blocklists are not really lists of regexps. They contain some regexps indeed but the syntax is mostly custom and matching relies on both patterns found in URLs (This part could be partially expressed as RegExps) as well as a multitude of other things like constraints on domain of the frame, domain of the request, type of network request, etc.

</comment></comment></comment></comment><comment><USER22> All the tests were done on an n2-standard-2 gcp instance... That doesn't have a GPU. Rendering a webpage without a GPU uses a lot of different codepaths and isn't awfully representative of performance with a GPU.

<comment><USER23> I ran most of the tests on example.com, which is easy to render without having a GPU available.

Looking at on-page CPU time for Evernote, 91% is spent just processing JavaScript or HTML. So I expect any benefit of a GPU to be minimal.

<comment><USER22> But there might also be a performance _hit_ with a GPU... There are various antipatterns like drawing on a canvas and then reading back the pixels repeatedly that perform atrociously with a GPU (due to the latency between the CPU and GPU). Some sites do a lot of that for things like custom font rendering, fingerprinting user hardware, custom data decompression algorithms that use canvas, etc.

<comment><USER24> Lab analysis is always going to have compromises. What's important is the relative change (without and with the extensions), and that the extra work isn't especially slowed down because of lack of GPU.

</comment></comment></comment></comment><comment><USER25> Cool to see our extension tested (an RSS reader). What's great with this is that it gives us a metric to work towards improving. I've always been under the assumption that "cpu is cheap", but it does have real effects.

</comment><comment><USER26> If the author is here, can I suggest testing the Dark Reader extension too?

<comment><USER23> Here are the test results for Dark Reader: [https://www.debugbear.com/chrome- extension-performance-looku...](https://www.debugbear.com/chrome-extension- performance-lookup?search=dark%20reader)

I also briefly mention it in the section on FCP, explaining why it makes sense for the extension to use render-blocking content scripts. [https://www.debugbear.com/blog/2020-chrome-extension- perform...](https://www.debugbear.com/blog/2020-chrome-extension-performance- report#page-rendering-delays)

</comment></comment><comment><USER27> > The Avira Browser Safety extension contains a website allowlist with 30k+ > regular expressions. When the user navigates to a new page Avira checks if > the page URL is in that allowlist

I wonder who thought that would be a good idea... Sounds like something that could be significantly improved by compiling all patterns into a single statemachine.

<comment><USER28> Yeah, back when I was doing similar matching on a big bunch of regexes, it was vastly faster to match on all of them lumped together in a group with the 'or' operator. And I learned of this more than fifteen years ago from a server-side lib that deduced the exact browser from the user-agent: it had a huge regex with various placeholders and a long list of 'if/elseif' checks to extract the values.

<comment><USER27> Exactly. If your regex engine compiles to a DFA, you can have arbitrary many or clauses with no overhead. It's pretty neat.

</comment></comment></comment><comment><USER29> It seems like the included pw managers like LastPass & Dashlane also impact page loading drastically. Is there even an alternative with less impact?

<comment><USER30> Anecdotally, I noticed a browsing speed up when I switched from LastPass to Bitwarden on older laptops.

</comment></comment><comment><USER31> It looks like a lot of the slowness from the slow extensions is from parsing and executing JavaScript. Are there opportunities from the browser side to make extensions faster? It seems like re-parsing the same JS on every pageload is an opportunity for gains from caching, but I'm also wondering about different delivery mechanisms like wasm. Are there security considerations here?

<comment><USER28> Alternatively, heavy code could be kept in the background script while page- injected scripts only do interaction. This would even employ the JIT properly.

</comment></comment><comment><USER32> > _" DDG Privacy Essentials does a simple object property lookup based on the > request domain, an operation that is practically instantaneous"_

This sounds interesting. A bit of searching is not providing much enlightenment - anyone care to explain in a bit more detail?

Also, if it is so fast, why aren't all the filter add-ons doing it?

<comment><USER2> Content blockers in the same class as uBlock Origin ("uBO")[1] have the added burden of having to enforce generic filters which are independent of the request domains, they have to find a specific pattern in the request URL, including with support for wildcards.

Even though, and despite this added burden, I will point out that uBO is almost as performant as DDG Privacy Essentials as per this report.

Furthermore, uBO contains WASM modules but they are not used in the Chromium version of the extension since this would require to add a `wasm-eval` directive to uBO's extension manifest, something I prefer to avoid for the time being, I fear this would cause more lengthy validation of the extension by the Chrome Web Store.

* * *

[1] Able to enforce EasyList, EasyPrivacy et al.

</comment></comment><comment><USER33> I would be curious to see this for Firefox extensions as well.

</comment><comment><USER34> I like Grammarly, but the extension is really crappy.

<comment><USER35> Grammarly causes a surprising amount of frontend issues.

</comment></comment><comment><USER36> Has a browser team ever considered the possibility of creating allowlists for extensions only on certain websites? A native implementation of something like uMatrix that also worked on extensions could help end users at least remove slowdowns on sites they need to be performant.

</comment><comment><USER37> Nice article. This seems like a relevant contrast to share here [https://brave.com/improved-ad-blocker- performance/](https://brave.com/improved-ad-blocker-performance/)

</comment><comment><USER38> I typically run a number of extensions:

duckduckgo privacy essentials, ublock origin, privacy badger, and whatever built-in firefox has.

Perhaps this is overkill but they all cover slightly different things.

</comment><comment><USER39> Can someone give me an ELI5 on Privacy Badger? My current stack is just uBlock Origin, I'm considering layering PB over the top.

<comment><USER40> In my experience, PB pretty much does nothing. UBO already blocks trackers and social media buttons, and if it doesn't, you can turn on those filters. PB doesn't even block the trackers until it "learns" that they are trackers, it just avoids sending cookies (which doesn't stop facebook from fingerprinting you.) The best method would probably turning off 3rd party scripts and iframes in UBO, but that does mean you have to un-break a lot of sites. An extension like cookie autodelete would also do much more than PB, since, if you have no cookies, they can't be sent.

Edit: I realized that I sound like I'm bashing PB too much. PB is definitely better than nothing, and doesn't break any sites, but there are better things you can do which make PB obsolete.

</comment></comment><comment><USER41> I've seen ublock causing CPU to be pegged at 100% making various js heavy applications completely unusable.

[https://github.com/uBlock-LLC/uBlock/issues/1829](https://github.com/uBlock- LLC/uBlock/issues/1829)

<comment><USER42> For anyone glancing by: Note that this is uBlock, not uBlock origin.

</comment></comment><comment><USER43> Am I creating a bottleneck by running Ghostery with uBlock Origin?

</comment><comment><USER44> hello

</comment><comment><USER45> Don't ever install extensions. There is no limit to the trouble and pain they can cause.

<comment><USER46> Never browse the web. There is no limit to the trouble and pain it can cause.

</comment></comment><comment><USER47> Cool, but it doesn't matter that no-extension is much faster because we can't browse without ad blocking. Even if it slows the page, it is still preferable. On the other hand ad blocking wastes less bandwidth and memory.

<comment><USER48> I don't think you read the graph right. Without ad-blocking extensions, the browser is of course much slower, about 15 times slower according to their tests.

<comment><USER22> I am doubtful of some of the numbers here... I mean I know browsing the web without an ad blocker is bad, but it isn't 'takes 35 seconds to load an article on gigabit ethernet' bad....

<comment><USER42> That was a graph of cpu time, not network request time, and 20s of the 30s were spent parsing and running js.</comment></comment></comment></comment>


Show HN: Redesigning the Pulse CMS site - <AUTHOR> https://www.pulsecms.com/ <comment><USER2> I'd probably find a blog post explaining the redesign more intellectually interesting than just looking at the page. That's probably because frequent exposure to web pages causes me to tune out their intricacies.

Curious if there was any testing behind the redesign.</comment>


This Is How to Kill Bad Habits with Mindfulness - <AUTHOR> http://www.bakadesuyo.com/2017/05/bad-habits-mindfulness/ <comment><USER2> One thing that should've been mentioned is the power of meditation when it comes to striving towards a more mindful lifestyle. From my personal experience, meditating has helped me control my mind. It allows me to pay closer attention to virtually everything that I do or say. I believe that meditation can greatly help someone become more mindful.</comment>


A protein called Sestrin might be responsible for many benefits of a workout - <AUTHOR> https://phys.org/news/2020-01-protein-sestrin-responsible-benefits-good.html <comment><USER2> If Sestrin administration truly prevents muscle atrophy, it could commoditize fitness. People would train intensively for a year or two and then take Sestrin for the rest of their life. Everyone would look like an Olympian. That would also single-handedly solve obesity, since baseline caloric requirements would shoot up. Perhaps Sestrin would even negate the need for cardio, by maintaining a strong heart. Quality-adjusted life years and overall lifespan would improve. Lastly, it would be interesting to see how people modulate their musculature just like how they choose their clothes. People would self- select into a conspicuously identifiable group of similarly-shaped people.

Of course, I'm skeptical that Sestrin might fully prevent muscle atrophy on its own. At the same time, there's no evolutionary reason for us to lose muscle anymore, since calories are essentially guaranteed. Intuitively, muscle atrophy seems like a puzzle that can be solved. If the muscle is already there, find whatever phenomenon makes it wither and stop it.</comment>


Show HN: Snap.js - A Library for creating beautiful mobile shelfs in Javascript - <AUTHOR> https://github.com/jakiestfu/Snap.js

<comment><USER2> Do you have a demo online? I'm not going to clone the repo just to check it out.

<comment><USER3> <http://jakiestfu.github.com/Snap.js/demo/>

</comment></comment><comment><USER4> This kicks ass.

</comment><comment><USER5> jakiestfu you're my (CSS) hero!

<comment><USER6> @edude03 this is all Custom JavaScript, Jackie is the man, very generous to the community</comment></comment>


Apple patents technology that will allow authors to sign ebooks - <AUTHOR> http://www.mhpbooks.com/apple-patents-technology-that-will-allow-authors-to-sign-ebooks/ <comment><USER2> I implemented something like this once. The trick is embedding the digital signature into an ebook file format that was not designed to accept it. For instance, the following method is secure, but the result doesn't look like an ebook:

1\. I email the author my public key.

2\. The author hashes a copy of the ebook, signs the hash with his/her private key, and puts the resulting PKCS #7 file on a web server or emails it back to me.

What is needed is an extensible ebook format (or a permissive one like JPEG that lets you append arbitrary data to the file without corrupting it).</comment>


Google Sues The US Government For Only Considering Microsoft Solutions - <AUTHOR> http://www.techdirt.com/articles/20101030/23442911657/google-sues-the-us-government-for-only-considering-microsoft-solutions.shtml <comment><USER2> >Specifically, the DOI stated upfront in the RFQ that the solution had to be part of the Microsoft Business Productivity Online Suite. Google is making the argument that this is "unduly restrictive of competition,"

I don't actually know what the Microsoft Business Productivity Online Suite is, but if they're already using it for a lot of other stuff, I think it's pretty understandable to want their email system to integrate with it.

<comment><USER3> Nevertheless, an RFQ that shapes its requirements in such a way as to essentially name the winner before-hand is a serious problem.

<comment><USER4> This is actually a perfectly legitimate practice - there are various regulations that govern these types of single-vendor/single-product requests. Usually you have to show (based on an analysis of currently available solutions) that no product except the one named could possibly meet your requirements.

In this case, it appears that the DOI actually followed those rules and came to the conclusion that only MS could provide a working solution. Google is essentially saying in the complaint that

a) Their solution meets the stated requirements and the DOI knew about it.

b) It is unclear if Microsoft's solution even meets all the requirements (specifically the security requirements since Microsoft is not currently FISMA compliant and has a bunch of known problems in its exchange server)

therefore the justification for naming Microsoft's solution is invalid and solutions involving Google's product should have been allowed for consideration.

Since I didn't actually read the DOI justification (only Google's summary of it) and I am not familiar enough with the specific regulations that govern this sort of thing to comment on its validity, I simply wanted to point out that "naming the winner" in the RFQ is not enough to invalidate it and is not necessarily a problem if the proper research has been done.

<comment><USER5> IANAL and I didnt read the DOI paper, but as I think you are mostly right.

I think the DOI can require that a solution must be compatible with or have the same features as Microsoft's solution.

However, they cannot say the solution MUST be the Microsoft product, and I think that is what Google is arguing.

</comment></comment></comment></comment><comment><USER6> I don't see governments considering more than Microsoft for most things: desktop OS, office suite, etc.

I would be glad if this changed that, though. There's a potential for quite a bit of money to be saved.

<comment><USER7> The French have adopted Ubuntu as their primary systems. Stock markets now run on Linux. So does whitehouse.gov. Obama's campaign servers ran on FreeBSD.

It's not entirely unreasonable to see it changing. Plus, as you said, it would save the government plenty of money in licensing and support.

<comment><USER8> Maybe, it will save licensing costs, but it will not save on support costs. Contracting companies are not going to lessen their support bids for Linux compared to Windows. I wouldn't be surprised if the bid for support was higher to compensate for the lesser number of Linux-trained support people. It will probably be a wash.

<comment><USER9> Even if it is, the government would have easier access to and better control over an open-source stack than it would with Windows. It would also have a wider possible market because support vendors would not have to get Microsoft's blessing before providing services.

<comment><USER8> Actually, the US government probably could get Microsoft to make a change / add something a lot quicker than it could from the Linux community (money is a fine leverage). Many support organizations don't exactly get permission from Microsoft to bid.

<comment><USER10> Red Hat/Novell/Canonical could add/change Linux features just as easily as Microsoft could add to or change Windows. The Linux community isn't just a bunch of people who are writing code for the fun of it.

<comment><USER9> Not only that, but you can make Red Hat, Novell and Canonical compete against each other for the best solution.

As much schizophrenic as Microsoft's various divisions are, you can't make the Xbox division compete with the Office division on which one wins a contract for adding a feature to the Windows 8 kernel.

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> Does Google actually have a claim under the Tucker Act? Some quick searching limits claimants to those who have an actual contract.

<http://topics.law.cornell.edu/wex/tucker_act>

EDIT: Note that in general sovereign immunity would preclude a contract suit against the government. The Tucker Act permits several types of claims against the US Gov't.

<comment><USER12> Sovereign immunity prevents certain types of lawsuits against the government. It doesn't mean you can't sue the government ever.

</comment></comment><comment><USER13> The news article is a bit light on all the details. I did some work for some of the people bidding and probably the best summary of who 'won' is in the GSA's (who supply the IT infrastructure to other govt agencies) press release found here:

<http://www.gsa.gov/portal/content/193441>

Note that a lot of <http://apps.gov> is based around vendors built on Amazon EC2/S3 and Salesforce force.com platform. Microsoft is not a dominate player in government IT, in fact I probably see far more tax money going to IBM and/or Oracle every year if it makes anyone feel better. /s :)

It is true in the area of office apps that Google have an case here, but another way to look at this is that Google are mighty sore for having gone through all that security accreditation (FISMA) without winning more business. They put a lot of effort into the RFQ (as did Amazon, who did well out of this)

</comment><comment><USER14> Could I also please sue various world governments for not considering me ;)

</comment><comment><USER12> This is a thick-headed publicity ploy on Google's part. Hate on Microsoft all you want, but Google Apps are not even close to Office in terms of functionality.

<comment><USER15> Less functionality is an advantage for most tasks at hand.

The functionality overload in recent versions of MS Offfice was so huge it made Microsoft develop entirely new user interface (`Ribbon') as the traditional pull-down menus weren't able to cope with it anymore.

Are you sure you need Kate the Average Secretary to toy around with countless functions? Will that add to the bottomline?

<comment><USER12> Less functionality can be an advantage if all you ever do is create new documents (i.e., you're a developer or a writer).

It's a huge disadvantage if all you ever do is edit existing documents (i.e., you work in government).

</comment></comment></comment><comment><USER16> This is great in the long run, but seems to be loose loose for google. Either they loose, pay for legal fees, and the goverment continues buying Microsoft, or they win, get a payout from microsoft, and still don't get business, because Microsoft probably won't buy enterprise software from the company they were just sued by.

<comment><USER17> Gah. I thought I was used to the whole "loose" vs "lose" mix up that so many do.

But seeing it 3 times in rapid succession feels like fingernails on the blackboard.

</comment></comment><comment><USER18> I would love a different way of handling Government RFQs: If your company engages in income shifting to avoid paying taxes, you are ineligible for government contracts.

<comment><USER19> I was thinking along the same lines.

However, I assume Microsoft behaves in a similar manner.

<comment><USER20> I'm fairly sure they do - as do pretty much all large corporations. That doesn't make it right, of course.

</comment></comment></comment><comment><USER21> This is a frivolous lawsuit. There is no reason anyone would sue a private company for not using their software.

</comment><comment><USER22> Well that's how closed source software makes money.

</comment><comment><USER22> I think a MS employee wrote this RFQ.

</comment><comment><USER23> am i the first one who sees the hidden message FOCMS in this title ?

</comment><comment><USER24> huh? Potential customer not into you? Time to sue him.

</comment><comment><USER25> I hope Google wins. I don't care if the government uses Google or not, but this unreasonable entrenchment of Microsoft is ridiculous.

<comment><USER26> Like what other solution?

<comment><USER27> Because one of the largest contract purchasers, the government, limits their options to one solution, the ecosystem is really small for alternatives. Once this is opened up, there is increased potential for more options to arise. Having Microsoft being the only option is artificially retarding innovation and options.</comment></comment></comment>


The price of oil is falling, right? Right? - <AUTHOR> http://www.treehugger.com/files/2008/08/price-of-oil-historical-perspective-graph-data.php

<comment><USER2> Could be, but can't you go talk about it on reddit?</comment>


Does my Startup Data Team Need a Data Engineer - <AUTHOR> https://blog.fishtownanalytics.com/does-my-startup-data-team-need-a-data-engineer-b6f4d68d7da9 <comment><AUTHOR>
      At this point a pipeline built on top of Stitch / Fivetran /
      dbt is far more reliable than one built on top of custom-
      built Airflow tasks.

I'd be curious if anyone who has used or integrated these products into their infrastructure could verify or comment on whether they are as effective as the author seems to suggest.

      If you hire a data engineer who just wants to muck around in
      the backend and hates working with less-technical folks,
      you're going to have a bad time.

I'm not sure this was the intent, but I found this somewhat dismissive. I think communication skills are indeed important and being able to effectively explain technical considerations to less-technical parties (or parties whose technical expertise is not aligned with Data Engineering), but I have encountered in my own experience an active disregard for those considerations by data scientists as orthogonal to their needs at best or at worst, details for which they cannot be bothered. This is underscored by the notion that we, as Data Engineers, "muck around in the backend." We do, and we have to, and it helps to like it.

There are a few other areas of input and contribution that a good data engineering team can provide, that I don't think get enough attention in the post:

      1) Machine Learning Productionization
      2) Being a source of data expertise (consulting) with other
         developers (working on services or the main product) in
         the organziation

Regarding 1, while the author seems convinced that the ELT/ETL tooling and ingestion pipeline building can be taken off-the-shelf, I don't if it is as likely that there is the same kind of mature tooling for machine learning model deployment/integration. Though, I believe that is changing, slowly.</comment>


Need a small, possibly disposable discussion board? Try gatcka.com - <AUTHOR>

I've launched a small web project today: http://www.gatcka.com
It's more of an experiment really. I wanted to check how far I can go without needing any registration process, with cookie sessions only, with minimal user interface, etc.
The project aims to be as simple as possible, but usable as well.
Let me know what you think about it, thanks! <comment><USER2> Clickable: <http://www.gatcka.com>

I like the concept and simple design. I could see where this would be useful, but it seems like it needs the ability to do threads or at least replies (or maybe I am missing how to do that?). Another question - who can see the delete button?

<comment><AUTHOR> I'll start with the latter question: it depends which link you give to your friends: simply click 'Link to this wall', and you will be presented with a list of permissions. For each set of permissions you get separate link. It simply depends which link you give to your friend (it's more of an social thing than technical, I think).

As for threads/replies: yes, this is obvious thing to do, but I wanted to check if it's really that useful and demanded before actually implementing this. The same (possibly to lesser extent) goes for voting.</comment></comment>


Ask HN: What are your favorite math or programming YouTube channels? - <AUTHOR> <comment><USER2> Programming for games for machine learning or what?</comment>


Behind the Icons: An interview with Susan Kare - <AUTHOR> http://www.lennyletter.com/culture/a486/behind-the-icons/ <comment><USER2> Susan Kare is a pioneer. Laymen might look at those classic icons today and not think much of them, but UX designers should be able to appreciate the challenge of conveying explicit ideas through symbolism. Now consider the limitations of the Macintosh for a single icon - black and white, 32x32 pixels and little to no prior UX work to draw inspiration from. Kare worked within these parameters and designed some of the most fun and memorable icons of computing history in the process.

Not to mention, her playful approach to design is something we don't see enough of in this modern age of UX. When I look at my iPhone's home screen, I see a grid of geometrically identical, sterile icons. Generally speaking each icon is flat, uses a limited color palette and contains a perfect or near- perfect balance of positive and negative space. Consistent, well-designed and aesthetically pleasing icons; and yet, lacking the personality that make Kare's icons so great.

<comment><USER3> > and little to no prior UX work to draw inspiration from

Not just that, but she had to design icons usable by people _who had never touched a computer or a mouse before in their life_.

UX designers today have the luxury of building on top of a huge pile of computer knowledge that is _already in most users ' heads_. Kare and the rest of the Macintosh folks had no such luxury, and it was their great work getting those early concepts learned that let us take it for granted today.

</comment></comment><comment><USER4> > it (the icon on the Command Key) was designed by Susan Kare back in the '80s

No it wasn't. The symbol is very old and all over Scandinavia. Kare offered it as one of several options presented for the icon of the Command Key.

<comment><USER5> There probably isn't any single symbol-glyph composing five-or-fewer lines that isn't "very old and all over"; there are only so many possibilities on the low end of complexity. It's still a matter of original design to think of using a particular symbol-glyph to visually represent a previously- unsymbolized thing in a new domain.

<comment><USER6> On the contrary, Susan Kare herself mentioned the Swedish origin as the source for inspiration[0]

> So I said, "Let's try something abstract." So I was pouring through books of > symbols, and I thought it was a sign on Swedish campgrounds that meant > "interesting feature," or something to look at that was interesting. So that > seemed to fit. And it lent itself to being digital without being jagged. > That definitely came from a symbol book, or an interpretation of something > in a symbol book that sort of made sense. Because I like the idea instead of > just drawing some shape and saying "That's the control key," even though > nobody who ever saw it-- actually, every now and then I hear from someone > who actually had seen one of the signs. Mainly it is just abstract, but I > knew it meant something relevant.

[0]: [http://web.archive.org/web/20150527143227/http://web.stanfor...](http://web.archive.org/web/20150527143227/http://web.stanford.edu/dept/SUL/library/mac/primary/interviews/kare/mac.html)

<comment><USER5> I didn't mean to imply that she wasn't taking inspiration from a thing that existed already. My point was that, when you're a designer asked to "create" a symbol-glyph, there's nothing you can do _but_ to draw inspiration from something that exists already.

Every little squiggle humans can make with a pen already has some connotation or another; design, then, is about searching the design-space for an existing squiggle that already has the connotation you want along with the least conflicting "ownership."

<comment><USER7> She didn't draw inspiration.

She literally copied it, 1:1.

<comment><USER8> Copying from history is a choice, that's what a designer does. There were many phones before the iPhone. There were computers before the Mac. There were wheels before Firestone. Knowing what to choose and have it work as a design in a skill most people do not have. As Steve Jobs said "Good artists copy; great artists steal" which I believe is also a copy.

</comment></comment></comment></comment></comment></comment><comment><USER9> Kare designed the look of the Mac, some of the Windows icons, some of Facebook's icons, and some of PayPal's icons. She's well known in design, and still active, but few people building software seem to know who she is.

Her web site, www.kare.com, has her portfolio.

<comment><USER10> she must have gotten that domain early on

<comment><USER11> Easily answered:

        $ whois kare.com

        Whois Server Version 2.0

        Domain names in the .com and .net domains can now be registered
        with many different competing registrars. Go to http://www.internic.net
        for detailed information.

           Domain Name: KARE.COM
           Registrar: NETWORK SOLUTIONS, LLC.
           Sponsoring Registrar IANA ID: 2
           Whois Server: whois.networksolutions.com
           Referral URL: http://networksolutions.com
           Name Server: NS75.DOMAINCONTROL.COM
           Name Server: NS76.DOMAINCONTROL.COM
           Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
           Updated Date: 02-apr-2016
           Creation Date: 18-feb-1996
           Expiration Date: 19-feb-2024

_Creation Date: 18-feb-1996_

Yes.

</comment></comment></comment><comment><USER12> "Generally, it's a lot easier to represent concrete nouns than abstract concepts, so "document" is easier to design than "undo."

This is a problem I run into all the time. I was only asking about it yesterday: [https://news.ycombinator.com/item?id=12260700](https://news.ycombinator.com/item?id=12260700)

We need a good standard for abstract concept icons

</comment><comment><USER13> Susan Kare designed the Chicago typeface for Macintosh, which was later used (with some modifications) in the early iPods. Chicago is indeed one of the most intuitive and beautiful fonts I've ever seen.

<comment><USER14> and it was her first project at apple too! bull's-eye.

</comment></comment><comment><USER15> I miss Clarus the Dogcow.

macOS needs more Clarus.

[https://en.wikipedia.org/wiki/Dogcow](https://en.wikipedia.org/wiki/Dogcow)

</comment><comment><USER16> I must admit I was surprised to read how many women there were working in prominent positions back in the 80's at Apple. Jobs was truly a pioneer.

<comment><USER17> A pioneer at getting falsely credited. Susan Kare was invited by Andy Hertzfeld, when Jef Raskin was still the leader of the Macintosh project.

<comment><USER18> Not to put words into merkleme's mouth, but he may not have meant that Jobs himself personally all the women who worked at Apple, but rather that a culture of openness, diversity and meritocracy thrived under his leadership.

<comment><USER16> Thank you, thats exactly what I meant.</comment></comment></comment></comment>


Silicon Valley is Broken. Should We Even Bother to Fix It? - <AUTHOR> http://www.erica.biz/2011/silicon-valley-broken/

<comment><USER2> People here aren't going to want to hear it, but that's the kind of person this site promotes. I constantly see stories about 'You don't need a good idea to start a company' (yeah, that one just got posted!) and how you should just start a company and go for it. About how good ideas are worthless and only doing something matters.

It's bull. Starting a company is HARD WORK and not something you should jump into without adequate preparation. I'm sure YC details the work you'll need to do to get going, but most people don't get accepted to YC.

The problem isn't Silicon Valley. It's the idea that just being in Silicon Valley somehow solves your problems for you. It doesn't. For every problem it solves, it creates at least 1 more. Creating a viable internet-based business has NOTHING to do with location. Or for that matter, any international business.

<comment><USER3> The set of people with whom you can have in-depth conversations _is_ highly location-dependent, and you will be sub-optimally innovative without having such conversations with the right people.

<comment><USER4> Do you have a rigorous definition of innovation? Or, at least, rigorous enough that you can measure it and stick a number on it?

Because, without the ability to stick a number on it, how do you propose to know which sorts of actions are optimal and which aren't?

Engineering without numbers isn't engineering - it's guesswork.

<comment><USER3> I admit I haven't thought about this particularly deeply, but I suppose the best way to measure innovation is to compare the state of the world before and after the innovation takes place.

</comment></comment></comment></comment><comment><USER5> Thank you for this post..it really is a breath of fresh air after all the buzzword-laden but completely substance-free pitches you tend to hear after spending time in the Bay Area.

When startups respond to the question of "How will you make money" with "We'll get VC funding", you know there is a problem.

Here's a bigger problem: It seems that the set of people building the next big thing social whatever and looking for VC funding and the set of people who know about business stuff and lead generation rarely intersect.

This is the great paradox of the valley: It seems that most of the people who know about sales, driving traffic, etc and are thus most likely to succeed are building unsexy businesses in web hosting, B2B services, etc. In other words, the kinds of businesses Valley investors are not interested in it all.

The people who are clueless about marketing or generating revenue get the lion's share of the funding...because they're making a social iPad app(or whatever is hot at the moment).

<comment><USER6> In a way, Silicon Valley has become the tech world's Hollywood. Wide-eyed, talented people are encouraged to move across country and make their fortune in a big way. And like Hollywood, they're not encouraged to slowly build their craft and name, through theater and small roles, they're encouraged to go and pitch their Superman reboot and try and get discovered by David Fincher.

It's why I've always been skeptical of Silicon Valley. I don't like get-rich- quick schemes, even if they sometimes (although rarely) work. The social damage done to those who fail, especially when they make up the vast majority of those who try, can create a terrible reputation for an industry.

Of course, Hollywood has been chewing people up and spitting them out for decades, so maybe this is a sustainable cultural model, if you don't mind the repercussions.

<comment><USER7> Fortunately the world needs more programmers than it does actors so there is some underlying demand to soak up the programmers who don't make it big. A backup plan of $60-100K a year is hardly the same as being a barista at starbucks for the next 30 years.

<comment><USER6> Well, a Starbucks manager in Los Angeles doesn't make that much far off from $60k, but regardless, you're right that that's the case for now, but I would point out that Silicon Valley is extremely young in comparison to Hollywood.

But most importantly, the point I'd make is this: If Silicon Valley is our Hollywood, where is our Broadway?

<comment><USER8> Sand Hill Road.

</comment></comment></comment></comment></comment><comment><USER9> The problem is that the true Silicon Valley way (build great stuff and change the world) has been overtaken by the poser Silicon Valley way (go to parties and focus on raising money). This happens during every boom. Fortunately, the next crash will get rid of the posers again.

<comment><AUTHOR> Chris, I could not agree more. This seems to happen in the Valley every four or five years. I lived through two of those crazy cycles before finally leaving in 2009 along with a bunch of other people. By 2013, another wave will leave.

I also find it interesting that a lot of people live in the Valley in their 20's, but when they hit late 20's/early 30's, they're gone. I'm not sure how it ties in to the above statement (or if it does at all.) The most common reason I've heard is that the Valley is a terrible place to start a family.

<comment><USER10> I find that mentality interesting. Personally, I spent a short time in the valley in my very early 20's (internship) and found it so boring outside of work that I knew I didn't want to spend the rest of my 20's there. I did see how if one already had a family it would be more bearable.

<comment><USER3> Clearly you didn't spend enough time in San Francisco. :)

<comment><USER10> True, but I draw a large distinction between 'the valley' and SF. SF was an hour and a half away in traffic from my employer, and I don't want to spend 3 hours a day of my life commuting.

</comment></comment></comment></comment></comment><comment><USER11> Very refreshing read. If you want to hear a different sound than the usual echo chamber from the valley, read this.

We can argue about some details of the article, but overall it's plain refreshing.

Erica, you just won a free ticket to the Founder Conference (apologies it's in Silicon Valley, will you come :-)

</comment><comment><USER12> Am I the only person who cannot focus on an article without ad-blocking all the animated stuff around it first? I may very well have A.D.D., so that could be it, but it's a huge distraction for me.

EDIT: I didn't intend to imply that this spammy behavior at all, as noahc's reply seems to indicate. There's tons of otherwise fantastic blogs that do the same thing.

<comment><USER13> I go back and forth on the Erica.biz website. She's obviously smart and motivated and knows what she's talking about. But everything comes across as spammy. I don't doubt her methods work well, but there's something about her and her blog that rub me the wrong way.

EDIT: After looking at the parent, her website isn't spam. It has good content, but it LOOKS like spam. Maybe I've just spent too much time on the Internet and these things pop out at me.

<comment><USER14> Maybe you're afraid of success and positivity?

<comment><USER13> That's possible, but I don't think so.

Someone e-mailed her this: "Erica, I need to know how to make money on the Internet. But I need make at least $100,000 in my first year or it won't be worth it for me. Can you suggest something that would help me do that?"

Maybe he is a nutjob, but he felt like she could help him. I think she works super hard and is super smart. She's always been positive as well. I appreciate those things, but her website and the 'feel' of it all seem like spam and get rich quick scheme.

The content is great, if I read it in an RSS reader, maybe things would be different.

Obviously, I'm very happy for her success and ability to keep positive. Her site just isn't for me.

</comment></comment></comment></comment><comment><USER15> The Valley, HN -- places where people herd -- are good for leaders, not great for followers. The group mind that tells us what is good and bad is the average of all the guesses about how to do modern-day startups. Those who are above average, or lucky, can be successful without being followers in herd games.

</comment><comment><USER16> Nice to see Erica's back. I got my first web host account from her company, Simpli back when she was a frequent slashposter. Why? Because I liked her approach to business -- work hard, take care of customers, provide a service worth paying for -- and I wanted to support that. Not that my $10/month account made any difference in Simpli's grand plan :-)

I agree with what she says here. I really don't get the misalignment I see here (HN's my only conduit to Valley thinking) between SV-type startups and what I think of as "good business."

</comment><comment><USER17> Startup news are biased towards success stories, many of which raised funding, so it's natural for outsiders to think "to succeed, raise funding". There's not enough news detailing the failures, or the success stories but the darkest hours endured. We need more of that.

After reading this post, if I ever come home to find a 7-day "pay or get out" notice on my door, I'll at least remember "hey, another entrepreneur has been through this too! I know what to do: persevere and work hard" :)

</comment><comment><USER18> I think a fundamental problem is that people believe Silicon Valley is some sort of panacea in the first place. It only takes a little bit of common sense to deduce that Silicon Valley simply has a higher population of entrepreneurs or VCs. Does it up your chances of networking with the right people? Yes. Does it make living somewhere else worse? No. It's quite absurd to believe that you simply need to be somewhere else in order to prevent failure.

</comment><comment><USER19> Is there an example of an internet company that started in the way she suggests (no funding, biz model first, start small..) that went on to be a major online property? Off the top of my head I can't think of one and all of the biggest successes (Google, Facebook, Twitter) definitely didn't go that route.

I like her article and tone, but I suspect she's talking about a different class of business that doesn't fit with the typical valley startup

<comment><AUTHOR> Hi, I'm Erica (the author of the article.)

I'd say 37signals is probably one of the most common examples on sites like HN. They're the poster child for no funding.

Having been in the web hosting industry for 6 years, I can safely say that my $1.1M exit was a small one for a dedicated server company. Most of the other dedicated server/colo/datacenter company owners I know are millionaires many times over. Robert Marsh of Rackshack nee ev1servers is a popular example of someone who started from scratch and sold out for mega millions. And the guys who started The Planet have flipped several web hosting companies to the tune of 8 figures+.

It's a common thing in web hosting to sell a company, then use that money to start another one, then regain customers and sell for more, and do it all over again. Not sure how doable it would be today, but that was a common thread throughout the past 10 years.

<comment><USER19> Hi Erica, thanks for the article!

I think it's worth denoting a difference between B2B companies (like 37signals) and B2C companies. I'm mainly talking about the really large B2C companies.

Web hosting sounds a lot like a consulting business. A great way to start a business, make a lot of money and have an exit but not the same as the fame and potential money to be had in the B2C game.

Not saying one is better than the other, but there are a lot of people out there (myself included) that could never find satisfaction in a B2B and will always chase the next Google. For those people, the Valley is ideal.

<comment><AUTHOR> Perhaps part of the problem is both the Valley's and tech news sites' almost- obsessive focus on B2C (vs. B2B) companies. ;)

</comment></comment></comment></comment><comment><USER20> That sounds an awful lot like lazy and/or out-of-touch entrepreneurs being broken to me. Still, while the venture and angel money in the area isn't explicitly "must be present to win," you have to admit it helps. But being present doesn't guarantee winning.

</comment><comment><USER21> I really like your article and totally agree in principle, I've found that attitude pervasive in the bay... but are there any numbers around it? Like do we know the percentage of startups that succeed? Obviously a significant percentage of them in the valley make it work, right? Is there an amazing arbitrage opportunity to be had investing in non-valley based companies?

</comment><comment><USER22> Today she would be applying to YC. Sounds like the right kind of founder.

</comment><comment><USER23> Pretty classy, HN flagging brigade:

<http://img228.imageshack.us/img228/8500/flagged.png></comment>


Ubuntu Mate 20.04 - <AUTHOR> https://ubuntu-mate.org/blog/ubuntu-mate-focal-fossa-release-notes/ <comment><USER2> I moved away from Gnome to KDE for several years after Gnome 3 came out. Try as I might, I just couldn't get into other desktop environments (KDE, XFCE, LXDE, I tried quite a few). A few years ago I switched back to Mate and haven't considered leaving. It provides the functionality I need while staying out of my way, which is more or less the reason I can't move away from text editors despite their complete lack of coolness.

</comment><comment><USER3> One thing I do not like about Ubuntu anymore is its embrace of snap packages. It just updates on its own. This has created surprises where a package or program just suddenly stops working correctly. Because I did not manually update it I have no idea what happened that could cause it. [https://askubuntu.com/questions/1131182/how-can-i-disable- au...](https://askubuntu.com/questions/1131182/how-can-i-disable-automatic- update-for-a-single-snap-in-ubuntu)

To me Snap was a bad choice.

I used to run Gentoo but it started to lack in documentation maintenance and I became tired of spending so much time solving problems. Full disk encryption was a bit of a chore to setup on Gentoo and even then I was not sure I was doing it in a reliable way which required more testing. On Ubuntu it was just a few clicks.

<comment><USER4> I've found that simply uninstalling 'snapd' solves that problem.

Complete instructions: [https://www.kevin-custer.com/blog/disabling-snaps-in- ubuntu-...](https://www.kevin-custer.com/blog/disabling-snaps-in- ubuntu-20-04/)

</comment></comment><comment><USER5> Just finished moving from Lubuntu (LXDE) to Mate. I loved LXDE and still think it is the best balance between no-nonsense "stay out of your way", almost all the stuff works and tweak your preferences. Sadly, that project is dead and has been replaced by the arguably better LXQt.

I don't think LXQt has reached the same maturity as LXDE just yet, but surely will eventually.

Left with the task of choosing a new daily OS, I played around with Lubuntu and LXQt, i3, XFCE, Mate and reviewed some others including the interesting NixOS.

Ended up choosing Ubuntu Mate because even though it's a heavyweight, I feel it has made a lot of right choices and works great. Even detects external monitors on plug/unplug.

If Pop!_OS was out already, I would have considered that, but so far Mate is really good.

<comment><USER6> > Even detects external monitors on plug/unplug.

I can already hear all the Windows/MacOS folks' giggles on this one!

<comment><USER7> To be honest most Linux folks giggle on this one as well, it's been more than 12 years that hotplugging screens is not an issue.

I remember having it with vanilla Ubuntu when I started using Linux in 2008/9.

<comment><USER5> Funnily enough, the other topic on the front page (Xubuntu 20.04) has the top voted comment discussing the state of external displays.

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

To be fair, as I've mentioned in another comment, I was not strictly talking about hotplugging alone. Detection of external displays hasn't been the issue, usability in some form or another has.

</comment></comment></comment></comment><comment><USER8> The number of emojis in that text is appalling.

<comment><USER9> Hacker News: where we pine for expressive, DIY web of the 90s/00s but pour scorn on anyone adding character to their projects today.

<comment><USER10> I'm okay with expressive but all the emojis made it a little hard to read. Maybe don't inject them into the middle of phrases.

Good use of emoji

> the Ubuntu MATE 19.10 interim release is our most actively used interim > release to date! :champagne:

> Recognising that we're on to a good thing, :thumbsup: we've repeated this > trick

> Thank you! Thank you all for getting out there and making a difference! > :green_heart:

Annoying use of emoji

> That was a hugely successful :tada: initiative

> with developers to highlight :flashlight: where attention was needed.

edit: apparently hacker news strips out emojis

<comment><USER11> The fact that they are rendered as text provides a good rule of thumb for when they are appropriate :

1\. Can you read your sentence without reading the emoji text and it makes sense?

2\. Can you read your sentence _with_ the emoji text and it still makes sense (and it means the same thing, with emphasis added)?

If the answer to both questions is YES, then using the emoji is OK.

<comment><USER12> 3\. Can you easily differentiate your sentence from a teenagers instagram post?

<comment><USER13> I didn't know teenagers on Instagram wrote in sentences.

Frankly I thought it was hieroglyphics.

</comment></comment></comment></comment></comment></comment><comment><USER14> Love Mate as it is one of the closest to the consistent user interface days of Windows 2000. Fewer WTFs/minute. There is a good dark theme as well, required.

One reason I use it over say XCFE, is that it still has the Locations timezone/day/night map that is perfect for working across timezones. No one else seems to have it, and that is why I stay:

[https://askubuntu.com/questions/312634/how-do-i-get-the- good...](https://askubuntu.com/questions/312634/how-do-i-get-the-good-ol- timezone-world-map-back/1230460)

<comment><USER15> IMO XFCE is a solid point above Mate for win2k feel and low WTF rate.

It's my last GUIlty pleasure :)

<comment><USER14> It doesn't have the timezone thing or a good dark theme, last I checked.

<comment><USER15> Yeah those are fair points but there's something in Mate that feels like a cloak.. while XFCE seems quite closer to the look and feel that I miss.

<comment><USER14> It reminds me of the Win2k installers, I really like it. Just feels unfinished, as Mate does too.

<comment><USER15> I'm confused, what feels unfinished ?

I do have a thing for win2k era installers too.. even though I can't deny unattended package install ala linux (now chocolate and similar on windows) is amazing ofc.

</comment></comment></comment></comment></comment></comment><comment><USER16> Is GNOME the only desktop environment going forward with wayland at this point? Wayland has been the only way I can enjoy tear-free, config-tweak-free video on Linux for the past few years, and that leaves me stuck with either GNOME or something like Sway. Mate would be a great middle ground but I don't want to have to mess with compositors again.

<comment><USER17> KDE is still pushing ahead with Wayland. I just fixed my screen tearing on x11 Kubuntu yesterday though, it was just one command to enable Optimus synchronization. (I know, that's a config tweak). I haven't tried Kde Wayland.

</comment></comment><comment><USER18> > We have given MATE Optimus an update. MATE Optimus adds support for NVIDIA > On-Demand and will now prompt users to log out when switching the GPU's > profile.

I wonder if this will actually work. It seems like, in version 18.04 of *buntu, there was a pretty major regression which required a reboot in order to turn on or off the dGPU and save power in Optimus laptops, when previously it only required a logout. Kind of a pain in the ass for my Dell XPS 15 9570 which seems to take a long time to reboot.

<comment><USER19> I hope someone with context on this issue sees your comment and can confirm if this contains an actual, working, on-demand GPU scheduler. If it does I'll be switching immediately.

</comment></comment><comment><USER20> I know it's a dark theme and not a true 'dark mode', but it really bugs me how many of the screen elements are still light gray.

<comment><USER21> Why exactly?

<comment><USER22> It's low contrast which increases the time needed to decipher the glyphs in your mind.

<comment><USER21> Oh, no, that's what happens in YOUR mind.

</comment></comment></comment></comment><comment><USER23> Mate is my favorite desktop environment, might have to install this on a spare desktop I got lying around.

</comment><comment><USER24> Does anyone have recommendations for a cheap laptop for playing around with Ubuntu? Will use it for light programming, poking around. Wifi needs to work reliably. I can work around all other quirks.

<comment><USER25> Cheap reconditioned lenovo thinkpad wolud be my recommendation

</comment></comment><comment><USER26> Do any of the Ubuntu flavors support fractional scaling without big performance hits? That's really my last remaining gripe with Linux on the desktop.

</comment><comment><USER27> Nice! I think this is what I've been using on AWS Workspaces. It's not so bad.

</comment><comment><USER28> Can anyone comment on the telemetry capabilities of modern Ubuntu?

</comment><comment><USER29> I really wish Ubuntu Mate would come out for the RasPi 4.</comment>


Oldie but goodie: MicroVAX3100 on OpenVMS and 13mbRam effectively runing - <AUTHOR> http://www.reddit.com/r/technology/comments/sl3ll/23_year_old_computer_still_in_daily_use_at_a/

<comment><USER2> Historial items are sometimes better ideas than cuttent ones.</comment>


A PRISM-inspired Google Doodle - <AUTHOR> http://projects.haykranen.nl/google

<comment><USER2> For me the eyes aren't centered properly (if you put the cursor between the eyes both the eyes look to the right), this bookmarklet fixes it:

        javascript:$(window).mousemove(function(e) {var offset = ($('#bg').outerWidth(true) - $('#bg').innerWidth()) / 2;move(".oog1", e.pageX - offset, e.pageY, p1.left, p1.top );move(".oog2", e.pageX - offset, e.pageY, p2.left, p2.top );});

<comment><AUTHOR> Thanks, i've incorporated your fix into the doodle!

<comment><USER3> Haha, in other website this link might have got many appreciation and likes. But in hacker news, "dude you have this javascript issue on your site, look I can fix it too"

Nevertheless nice one @haycranen

<comment><USER4> That's why I like HN - you get useful information instead of likes. Sometimes, at least.

</comment></comment></comment></comment><comment><USER5> Love the comment before including the Google Analytics code in the source:

      <!-- Yeah, this is pretty ironic, but Google tracks you anyway, right? :-) -->

</comment><comment><USER6> Reminds me of this image: [http://i.imgur.com/nAyRx6i.jpg](http://i.imgur.com/nAyRx6i.jpg)

</comment><comment><AUTHOR> If you're having problems loading the page, i've put up a mirror here:

[http://hay.github.io/googleeyes/](http://hay.github.io/googleeyes/)

</comment><comment><USER7> Reminds me of Reggie Watts says something about Google Owl and from the details he's describing I can only imagine the comparison to Google's involvement to PRISM. One of the best Reggie Watts performance IMHO. [http://www.youtube.com/watch?v=eGetsXib_zA](http://www.youtube.com/watch?v=eGetsXib_zA) @ 35:00

</comment><comment><USER8> [http://en.wikipedia.org/wiki/Xeyes](http://en.wikipedia.org/wiki/Xeyes)

</comment><comment><USER9> It would be an interesting experiment to see if using something like this actually makes people more careful about using Google/Facebook etc.

<comment><USER10> Would be interesting to see if Ghostery is downloaded / used more. [http://www.ghostery.com/](http://www.ghostery.com/)

</comment></comment><comment><USER11> i actually wish it executed regular searches so it could be used instead of google.com

</comment><comment><USER12> Google is Skynet</comment>


iio Engine – A new HTML5 App Framework - <AUTHOR> http://www.gamedev.net/topic/642396-iio-engine-a-new-html5-app-framework/ <comment><USER2> Shouldn't this point to their homepage (<http://iioengine.com/>) . Aside from that, this actually looks interesting and I might use it for a app.

<comment><USER3> From the author of the lib: _"BTW - I've been using gamedev.net for a long time to find inspiration and solutions, so I chose this forum to release in first. You guys are the first to hear about iio!"_

</comment></comment><comment><USER4> I think the biggest missing piece in all of this seems to be better multi- channel audio support across devices. There is no real mixboard equivalent to these kinds of canvas/svg solutions in the browser, and different platforms, especially mobile handle things differently.

</comment><comment><USER5> This looks really awesome. Looking through the demos got me really excited to try to make some simple games I've had in mind for a while. I can't wait to try this out.

</comment><comment><USER6> I just finished a game this weekend that could have made great use of this (I used EaselJS and rolled my own collision detection, etc.). I'm not seeing a good way to use texture atlases or sprite sheets in the docs and demos though. That would be a big feature request.

</comment><comment><USER7> I totally confused myself with the "iio Linux Kernel subsystem" [https://archive.fosdem.org/2012/schedule/event/693/127_iio-a...](https://archive.fosdem.org/2012/schedule/event/693/127_iio- a-new-subsystem.pdf)

</comment><comment><USER8> Thanks a lot for sharing your work, looks amazing and fun! I want to start developing some very basic games and did some research a couple of times ago, found about a few GE, such as Crafty.

Any presence in Freenode ?

</comment><comment><USER9> I read through a big chunk of the documentation last night. This looks really cool. I've never made a game before but this has inspired me to sit down and make one for my daughter. Hopefully I'll get the time over the next couple of weeks to build it.

</comment><comment><USER10> I like the API style! Some questions I did not see an immediate answer to on the site:

\- does it deploy to apps (cordova?)

\- what about sound?

\- what's the browse compatibility? (desktop/mobile)

</comment><comment><USER3> Looks good I'm stoked to try this out!</comment>


The Sad State of Web Development - <AUTHOR> https://medium.com/@wob/the-sad-state-of-web-development-1603a861d29f#.tf033b5ia <comment><USER2> Yes let's rehash this conversation every 2 weeks

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

<comment><USER3> I know reposts are allowed in HN, but this was the top post here two weeks ago. Why are people voting it up?

</comment></comment><comment><USER4> Previous discussions:

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

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

</comment><comment><USER5> > Web development used to be nice.

Interesting how we can have so completely opposite experiences. I'm feeling like webdev is just finally geting a tiny bit sane. When I started doing it in '98 or so, it was horrible beyond description. Now, with ES6/7, Typescript, Less and Jade (and the Chrome dev tools), I can actually get some work done instead of fighting the browser at all time.

I would say LOL if only it wasn't so sad.

Edit:

> A SPA will lock you into a framework that has the shelf life of a hamster > dump. When you think you need a SPA, just stop thinking.

Seriously? Backbone is super mature, but with a steady trickle of minor updates and fixes. And it isn't really a framework, just a small library.

There are plenty of great use cases for an SPA. A blog probably isn't one, but like with all technologies, part of your job is knowing when not to use it.

<comment><USER6> Absolutely. He says things like

> Maybe 1 or 2 pages on your app will have really complex UI, but the other > 95% of the app does not.

I guess I wish I had his problems. I work on an app where nearly every page has a complex UI, because it's a control panel for a domain with a lot of inherent complexity. Making manual DOM manipulation calls for every UI change would be a nightmare.

<comment><USER7> Exactly. For simple sites, I pretty much avoid all frameworks/libraries. However, I use babel/webpack though I really like webpack-dev-server and the full set of es6 features. I disagree with the React statement. I believe it's really simple on it's own. Flux/Redux add a lot of complexity, but confers significant gains. The new site I'm writing for work isn't just some stupid CRUD site - it's a complex UI used to monitor and manage industrial assets. Having the ability to organize long data flows and actions makes the code much easier to read and write, especially for other developers. If I had to manually manipulate the DOM (especially for making everything responsive) I'd go nuts. The thing about these tools are that once you learn them well, they save you a lot of time.

</comment></comment></comment><comment><USER8> I must admit, I'm a relatively new developer, and I also get overwhelmed by the number of new technologies coming out every day. I can't speak for "back in the day" web development other than things I've heard from older devs. For example, "back in the day" browsers sucked, like really bad. Compatibility issues were expected. For example, "How do I make sure this is compatible with IE7," etc. Although web development is not perfect, nothing really is perfect, and I think we have come a long way. At least, I'm happy I got into web development when everything was so approachable, open source software is so accessible, and places like HN exist where I can constantly learn new shit.

I think the primary reason people are tired of new JS libraries is because there exists a certain kind of pressure that is hard to describe, but I will try. It's kind of like, "I don't want to miss out on the hottest framework"/"I don't want to fall behind current tech." The truth is, we should all ditch this mentality. Use what works for you and learn what you care about learning.

When a new JS library comes out, don't groan, take a quick peek and decide if it's worth it to try to integrate it into your workflow. I think it's great to have options and the options in web development are seemingly neverending. I'm happy I write software for the web, and I think we should all recognize how far things have come. Yet, we should always strive to make the web better for users and developers alike.

<comment><USER9> My biggest problem with all of the new libraries coming out is that it leaves me with the feeling that nobody want to improve upon what is already out there. I understand that paradigm shifts may require a rewrite. But nobody is shifting every 2 weeks and getting anything done.

When selecting technology, I want to make a decision that will grow with me over the next several years. When perception is that each library of the day will be thrown out in 3 months, falling back to jquery/php is a really attractive option.

<comment><USER10> This exactly. Sometimes I feel like an old fart still using Django (or Flask if the project is small) instead of some new hotness.

But Django has the DSF behind it moving point releases, bugfixes and major releases in a very sane way. The same absolutely cannot be said for angular (major rewrite in progress!) or a lot of similar projects in the Node.js community.

None of this means Node.js is bad, just that there is something to be said for consistency in development. Now watch as Python/Django devs slowly morph into what Delphi devs used to be ;)

<comment><USER8> You shouldn't feel like an "old fart" using Django or Flask. I think both are awesome, relevant, and will stick around into the future.

One of the great things about being a programmer is that we know how to program in general. If we have to adopt a new syntax or learn the intricacies of some new methods that's ok, and not nearly equal to the amount of effort we expended to learn how to write code in the beginning.

Keep writing your Django apps. I agree that it's great that DSF is backing a stable and productive framework like Django.

<comment><USER11> I was working the last year on a Django app. First I hated it, but slowly I started enjoying programming with it. This year I worked mantaining an app with all of this [http://teropa.info/blog/2015/09/10/full-stack-redux- tutorial...](http://teropa.info/blog/2015/09/10/full-stack-redux- tutorial.html) This supposed to be a simple Web app but, it's a complete mess. I miss Django so much right now.

</comment></comment></comment></comment></comment><comment><USER12> All this Javascript machinery does so little. Most sites aren't implementing something like Google Earth, which needs heavy machinery to make it go. They're not implementing a multiplayer game in the browser. They're not using WebGL to display and edit 3D engineering drawings. 90% of web pages just display some static text and images with some forms and buttons, just like they did 10 years ago. There's a little more work required to deal with the screen size and form factor between desktop, laptop, tablet, and phone, but mostly it's basic content.

Yet the amount of code needed to do this has increased by huge amounts, and it churns constantly. Something is very wrong here.

The bad part of this is the disappearance of WYSIWYG editors for HTML. You weren't supposed to write this stuff by hand. That wasn't the plan. Tim Bernars-Lee's first browser had an editor. Mozilla had an editor. Microsoft had FrontPage. There used to be good open source editors. There was Nvu (dead)[1], and then Kompozer (abandoned)[2] Now, about the only thing left is Dreamweaver, which you now have to rent by the month. (Is BlueGriffon any good?) You didn't need a "content management system" unless you were constantly publishing new content, like a newspaper.

[1] [https://en.wikipedia.org/wiki/Nvu](https://en.wikipedia.org/wiki/Nvu) [2] [https://en.wikipedia.org/wiki/KompoZer](https://en.wikipedia.org/wiki/KompoZer)

<comment><USER13> I've tried BlueGriffon a couple of times, and each time I gave up on it after pretty quickly. One problem was the need for various plugins, the most useful had to be purchased. I wasn't sure enough of the quality and hesitated to make the investment. Besides, documentation was pretty sparse about its UI features, which made it not so easy to use.

Interestingly, I was looking around the net recently for a simple web UI builder. Pickings were quite sparse, either online tools attached to some cloud provider, or elaborate proprietary systems way more than I needed. The ironic thing is that current "front-end tools" still require tediously writing out the UI whether in JSX, JsonML or whatever, pointing up where GUI tools would be most useful.

It's crossed my mind that writing a web UI generator in, say Tcl/Tk, would be possible and quite surprised no one has done it. ATM I don't have the time to pursue such a project, but a small GUI application to produce the "boilerplate" part of the code would be particularly helpful.

</comment></comment><comment><USER14> As a back-end dev who recently took on creating an SPA for work, I ended up learning and using React/Redux/Babel/Webpack.

I pretty much hated every min of it, and there's a fair chance things will break if I update any of the deps, but I can't imagine getting something as organized and functional as I did with just jQuery, or even Knockout.

I have code broken up into organized modules (was never a fan of AMD/require.js), and truly re-usable components. The hot reloader renders my changes more often than not without a refresh. Production code is combined and minified into a single .js (no more downloading 15 different .js files). The feedback I have received from the business consistently mentions how fast and responsive the UI is.

Yes, the front-end JS scene kinda sucks, but I don't think I could go back to what it was 10 years ago and accomplish what I was able to in the course of a few months.

<comment><USER15> You can even render React components as views on the server in Express, I was shocked how easy it was having used both React as a SPA and Jade views in Express.

That seems like hands-down the best way to mix server rendered HTML with SPAs, especially if you have to support fallback to pure server rendering.

</comment></comment><comment><USER16> I'm surprised this surfaced on HN, which is usually crazily in love with all the 'innovative' new web technologies that keep popping up. Some of my favorite quotes from the article:

 _" You see the Node.js philosophy is to take the worst fucking language ever designed and put it on the server."_

 _" That's right. All you guys using React like it's the only way to solve every problem ever are using it because Facebook couldn't build a fucking notification icon."_

 _" PostCSS - People actually use this thing. Can a library actually do shit out of the box anymore? I just want to install something and use it, not decide all the little plugins I want to use."_

<comment><USER17> I don't think that javascript can be seriously described as "the worst...language ever designed". I don't think that anyone who has ever written any non-trivial program in AppleScript could agree with that, and I am sure that there are other languages that are, in their own way, unquestionably worse. For me, it set the tone for the article and greatly diminished the value of his observations. After that patently hyperbolic statement, everything he said had to be taken as a possible exaggeration. This is fine if one has direct experience with everything he mentions and just want to read a colleague rant about a frustration one shares, but it means that this blog post is not a _useful_ document to anyone else.

</comment></comment><comment><USER18> I stopped keeping up to date with the latest "trendy" JavaScript frameworks when I realized it was tanking my productivity.

New JS libraries are coming out several times per year, and employers and engineers expect you to be familiar with them in order to get hired (e.x., we need React, Angular, Ember, Node and Meteor skills).

But what really happens, is when you have 12 months of time, and you need to know a new library / framework every three months you are burning something like four months of time per year just getting used to the new tech.

With RoR & AngularJS 1.5 I get a full-stack web application loaded with best practices that I can keep chugging away at building without ever worrying about what I need to hop onto next month.

<comment><USER3> This is what makes people frustrated: They feel the need to change their stack. In reality, what matters is that you ship good software. If you are comfortable with Rails and Angular like you are, there's no need to change your stack to Node and React. Sure, it may be beneficial to take a look at them just out of curiosity, but no one's forcing you to use them if you don't like them!

</comment></comment><comment><USER19> The sad state of HN dupe detection for medium.com links

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

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

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

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

<comment><USER20> One of the tricky things (I presume) about detecting Medium links is that they append a custom hashtag to the URL with each individual share, so that they can track the "path" of the sharing. So everyone who copies the Medium link from their browser will be pasting a new unique URL into the HN system. Maybe there should be a new rule written for the medium.com domain that strips the hashtag when determining if it has already been submitted?

<comment><USER21> Sticking random fragments in place to avoid dupe detection is a very common tactic. Intelligent dupe detectors should ignore fragments. However, people can also throw in random query string variables and it's impossible to tell if those substantially modify the content without visiting the page itself and comparing.

<comment><USER22> It's not impossible. You can just text match the first X characters of that URL segment and consider it a dupe at that point. I can live with the occasional false positive.

gamedevdaily.io uses that tactic.

</comment></comment></comment></comment><comment><USER23> Web development is fine.

\- There are loads of options for the back-end – Rails if you're building something CRUDdy, Java if you're building something enterprise-y, Go if you're building a simple API, Node if you like Javascript… They're all suited to particular niches, and it's great.

\- The front-end is getting much better. For quite a while we had nothing except mad DOM-twiddling, then we had jQuery (which helped to some extent), now we have better frameworks that work more effectively with the way we want to develop apps. And there are options there too – React can help to control view complexity, for example, or you can go right ahead and build a full SPA using Angular or Ember or whatever.

Now I'm no fan of using Node for a server app. Personal opinion is that there's no requirements that aren't fulfilled better by another language. And indeed, I'm often frustrated by the extent to which people develop SPAs for things that should be static sites - Blogger, I'm looking at you.

But you know what? I'd take this in a second over the buggy soup of untested PHP, incompatible browsers, Prototype.js, IE6 and so on from only six or seven years ago. It's so incomparably better in every way.

</comment><comment><USER24> I had to do a survey of the modern web world for a greenfield project my company is working on, and I ended up with AngularJS 1.x and Rails. Angular is by far the easiest to get in to, has the most stable libraries, and is relatively well known at this point. I know Angular 2 is coming and that everyone has moved on to React, but it's been more than successful at giving us a stable stack to work around while also producing something that works great for our customers. If React is still around in 3 years and has mature libraries for everybody to use, then sure, I'll take a look. But for now, I think my strategy of being a few laps behind is working, at least anecdotally.

<comment><USER25> Quite honestly, if someone asks me for a technology for their backend, I'll ask if they need performance or flexibility. The answers will be Java if they want to be fast, or Ruby if they want to be flexible.

Those are not shiny new kids on the block, but they are understood, proven technologies.

<comment><USER26> why Ruby instead of Python?

why Java instead of... well, i guess there isn't a language w/ GC and an ecosystem as "mature" as Java.

with clojure, which is indeed shiny and new, some people have cake and eat it too: speed of the jvm + flexibility of scripting. i guess a samish sort of thing could be accomplished w/ jython+Java if clj is too flashy.

anywho, i hear the "don't go for the glamor," thing and indeed try (i.e. make a conscious effort) to lag 'teh new hotness' by some interval. ES5 strict is usually good enough. indeed, tail calls are the one coolest feat.s ES6 to me, and they're pretty much everywhere unimplemented, including Babel, except maybe for some special cases.

w/ Java... it's a language i wish would move toward vanishing -- or at least go one layer deeper than everyday application development. when i first started writing applets, it was the coolest thing ever: Sun was awesome, the same program ran everywhere, there was automagic memory management, etc... now, Oracle's laying down all kinds of noise a/b owning the language, there are other runs-everywhere platforms/methods (ES, LLVM), and the Java language itself just looks incredibly noisy unless one uses some of the really excellent (but wo/man-hour costly) tooling expressly designed for handling it.

<comment><USER25> > why Ruby instead of Python?

Partially, because I've been burned too much by pythons packaging madness. But beyond that, there is a bunch of strong, mature tooling done in ruby. Rake as a task runner, Thor as a simple library for more complex tools, guard as a general nice-ness, if you wanna go there, the entire chef-stack.

And if your main application is in ruby, there's very little overhead to use these strong tools to make your entire infrastructure better for little additional education, build chains or further investment.

</comment></comment></comment></comment><comment><USER27> I agree with the overall sentiment of the article. I've felt many times helpless trying to keep up with the the latest js framework or workflow (webpack, Babel, grunt, brunch, Backbone, Angular, etc). By the time I've gotten comfortable with some new piece of js software, a new one, even cooler had appeared.

And on top of it, add the fact that I also enjoy learning new programming languages for the backend, and the mental overload is definitely ensured.

</comment><comment><USER28> Title didn't make sense to me until I clicked through to the article. Of course Node.js web dev sucks. It's an immature stack. If you'd just learned Rails your sanity would be much improved. But no, the siren's song of using the same language on client / server lulled you in, and now your life is a mess.

Don't make the same mistake he did. Use the mature tech that is designed for small teams to be maximally productive. Use Rails.

<comment><USER29> Funny thing is that running your favorite language on the browser is maturing as fast as running the browser language at the server.

People that adopted Node.js because of this may be set for a nasty surprise.

</comment></comment><comment><USER30> Last I've done frontend dev was 2012, now I am doing frontend for a new project and while it's gotten much better, it's very overwhelming.

I had to familiarize myself with react, es6, babel + plugin, scss, redux & its concepts, react-router, npm and its packages, material-ui, browsersync, eslint and that's just to get started. Now that's a lot.

By the time I am comfortable in that arena something new would have replaced them.

</comment><comment><USER31> "I'll tell you now, kid, it was all so much better when I was your age!"

There, I've saved you from reading the article.

<comment><USER32> Seriously. This is a vile article with poisonous language that's little more than "kids these days" hyperbole.

It has never been a better time to be an (insert your preferred coding environment) programmer: if you're unhappy with the code you're writing, I'm certain you can find a company that offers what you want in no time. Finding a job that suits your demands is a better use of your time than whining on Medium.

</comment></comment><comment><USER33> Does anyone else get a kick out of reading stuff like this, where people bitch about how much they hate JavaScript? I get a weird sense of enjoyment out of that, I love JS and so it feels like opportunity to me. I can certainly understand things that people don't like about Node, but if you think JS was the worst language ever designed then you're probably never going to like web development no matter what.

I don't understand disliking npm though, I think npm is pretty great. Every time I spend a bunch of time wresting with pip, coming back to npm is like taking a warm bath.

<comment><USER34> npm is quite possibly the worst package manager I've ever seen. It encourages unfathomably large dependency trees, using multiple versions of the _same damn thing_ in the same software, duplicates things like crazy in the nasty tree structure that is the .node_modules directory, and cannot reasonably handle the full dependency tree of anything non-trivial that uses native extensions. I really don't understand what people find to like in npm. It's fundamentally broken.

<comment><USER35> You seem to be out of date. npm 3 uses a flat directory structure, only nesting dependencies when there are two different versions.

That misinformation aside, all package managers are agnostic about how large your dependency tree is; the large trees are purely a consequence (or choice, depending on your outlook) of the community. Could you imagine a package manager telling you you're using too many or too few dependencies? If you want fewer dependencies, use fewer dependencies. npm won't get in your way.

Speaking of the community, it is primarily what people like about node and npm. Sure, there are lots of bad packages. That's a side effect of javascript being the lingua franca of the web. Everyone and their grandmother is writing npm packages, so of course there are going to be a lot of bad ones. _But there are also a lot of good ones._ npm has driven web development forward at such a fast pace, I wonder how anyone can't appreciate what it's done.

Finally, some stats: ~230,000 packages, ~3,300,000,000 package downloads last month. That is a lot of users for something fundamentally broken. I can only wish to work on such "broken" software.

<comment><USER9> I agree npm criticisms are more about the way packages are bundled than the manager itself.

To your last point, the javascript ecosystem can have a lot of users and be "broken" at the same time. I think that is a large reason why people hop around to new libraries so much.

"Well what I have now sucks, maybe this new thing will work better. (2 days pass) Nope! What else do you have for me this week?"

</comment></comment></comment></comment><comment><USER36> Front-End Development really does suck, and I think that can be backed up by productivity science. I think the problem is that the web was never intended to become what it is today. It was meant for making documents with hyperlinks — that's It.

It's unsurprising that using a technology for something it was never meant for is problematic.

</comment><comment><USER37> Webdev has always been shit. Anybody remember xhtml? From the very beginning, everything the w3 standards body touches has been a design by committee nightmare. The latest generation is just more of the same.

That said, it's not going anywhere anytime soon. "Because it makes lives easier for developers" is not a valid reason for most end users to change their habits.

Personally, I'm banking on better tooling. Most single page webapps today are just more complicated versions of fancy UX on top of an excel spreadsheet. So why are there no graphical design tools that let you visually set up the application, visually see where the data comes from and where it goes and then spits out html, css and react code? The state of the art in code generation has come a long way since dreamweaver.

</comment><comment> trey-jones This is an extremely vitriolic piece that it seems should have been titled "The Sad State of Node and React. I have never used React, but got married to Angular a few years ago, which I'm guessing is basically the same? Either way, these are all choices that you have. I've never used node on the backend or the frontend. As is mentioned in the article, you can still fire up a text editor, write some html and CSS and have perfectly good website. Tools that are used beyond that are all developers' choice.

</comment><comment><USER38> ::snort::

All these gol-darn modern frameworks just to do something simple! Just use jquery!

Jquery is a framework. When jquery was all there was, people weren't building the kinds of things they're building now.

</comment><comment><USER39> Its the eternal battle between leanness and bureaucracy, the later always stealthy infiltrating to unfold its corrupting influence. Then its up to the mature developer to pick the proper technologies for the job based not on fads but on real project needs and wise criteria. Not everything coming from SPAs is bad; reactive programming is awesome when you implement it in your own lean way with small friendly libraries like ractive, blaze, etc.

</comment><comment><USER40> > 2015 is when web development went to shit. Web development used to be nice. > You could fire up a text editor and start creating JS and CSS files. You can > absolutely still do this. That has not changed. So yes, everything I'm about > to say can be invalidated by saying that.

Well, glad I didn't have to waste my time.

</comment><comment><USER41> Whether you find the recent frameworks to be blessings that bring sanity to web development, or a over-engineered pile of chaos seems to be a religious argument, mostly based on if you have already gotten used to not having frameworks for the last 20 years.

</comment><comment><USER42> This article again?

</comment><comment><USER43> As a meteorjs dev, I feel like web dev is the easiest it's ever been.

</comment><comment><USER20> This pretty much sums the intellectual depth and research of this rant:

> _From what I can tell the background of React is: Facebook couldn't create a > notification indicator on Facebook.com, so they create this over engineered > dump pile to solve that problem...That's right. All you guys using React > like it's the only way to solve every problem ever are using it because > Facebook couldn't build a fucking notification icon._

</comment><comment><USER44> I'm not sure I understand why everyone is magpies.

</comment><comment><USER45> Nothing being built today is designed to last. These frameworks align with the financing—get in, get money, get out.

</comment><comment><USER46> I laughed.

Oh wait. This is not satire? Oops.

</comment><comment><USER47> You can make very nice applications with the same LAMP stack that's worked since 2002 or so. All these modern frameworks are just a huge time-waste in my opinion. You don't need 20 libraries to make an XMLHttpRequest.

<comment><USER48> This works for small projects or sites (or if you want to ensure job security). But if you want to make something more complex, many of these JS frameworks can really increase productivity.

Ember.js, for example, has all kinds of nice buffering features, so you aren't making multiple un-needed ajax calls back to your server.

You will also end up needing to re-invent the wheel if you make anything complex.</comment></comment>