Dell Announces A Linux Laptop Designed For Developers - <AUTHOR> http://devopsangle.com/2012/05/07/dell-announces-a-linux-laptop-designed-for-developers/ <comment><USER3> How about a laptop with a better key board, slim figure, larger special character keys and more feedback for keys?

Then shove a great processor, a mouse pad that's not accidentally click able while typing, and a high resolution screen.

That's a developer laptop. Ill install my own software, Thank you very much.

<comment><USER4> Thinkpad (T60) has a great keyboard, good feedback. I don't use the mousepad, I like the little red pointer thingy it has and has 1400x1050 resolution display. It also a mate display (not the glare type).

It is bulkier than other laptops and by now its processor is behind the latest i7 and i5's.

Also as soon as I got I installed Ubuntu on it. Ubuntu lets me re-map caps lock to a control for my emacs usage.

And most of all this machine has worked great for many years . It has traveled with me, has been banged up, dropped, had hot liquids spilled on it and it still works.

<comment><USER5> What I really miss from the T60-era laptops is the 4:3 (non-widescreen) display. Widescreen is fine for watching movies, but a taller display can be really nice for reading, writing, and coding.

<comment><USER6> I actually like the widescreen displays for coding. I keep my line counts to 80 columns and now I can have two files side by side. Or a file open and a browser open side by side.

</comment></comment></comment></comment><comment><USER7> This is kind of sad. XPS 13 is not exactly good -- the display resolution is terrible, there's no ethernet port, and for ultrabook it is not very thin, feels real cheap in hands, and the keyboard is not very good. It's almost like someone tool everything bad from the ultrabook trend and nothing good from it.

And when people won't care because the hardware is not worth it (especially when it's not that much cheaper than MBA), it will be interpreted as "no one wants linux".

<comment><USER8> i agree, a developer ultrabook must be more modular, and more equipped.

</comment></comment><comment><USER9> >Project Sputnik, a product of Dell's new internal incubation fund, features not just full hardware support for Ubuntu on the XPS13, but a notion of "profiles" for developers

They could have stopped at "full hardware support for Ubuntu". Nobody cares about their crapware.

Just two weeks ago I bought an HP ProBook for a colleague for the sole reason of being Linux certified. It came with a Suse license but he's using it with Ubuntu.

The one Dell laptop I could have bought came with an Ubuntu version from 2010.

<comment><USER10> Agreed that I don't want/need their crapware. It'd be great if companies that make hardware had a clue what people wanted, but that's why Apple is going to be the biggest company in the world while IBM lays off seventy-some percent of their workforce, HP has 100 models of notebook that all do the same thing, and Lenovo forgets what made their older laptops so nice.

<comment><USER11> IBM and Apple compete about as often as GM and Boeing do. One builds servers, systems, and writes business software wrapping it all with services and the other sells end user devices, media, and minimal software wrapping it all in a brand LVMH is jealous of.

</comment></comment></comment><comment><USER12> If its vertical resolution is lower than 900 pixels I can't take it seriously as a laptop designed for developers.

<comment><USER10> Amen; I'm also a member of "Team 16:10"

Not getting rid of my Latitude D830 (14.1" 1920x1200) until I can get something with /more/ pixel density and vrez

<comment><USER13> Well, then you're s@@t out of luck :-)... though the 1920x1080 17.3 inch laptops aren't that bad - the resolution is good enough (well, it's the best vertical resolution you can get) and unlike Full HD 15.6 inchers, the text is big enough not to make your eyes hurt like you're welding without a mask...

<comment><USER14> The Macbook Pro 17" Still ships with a 1920x1200 screen, still not as nice as the same on a 15" though.

</comment></comment></comment></comment><comment><USER15> I know there is a lot more to a nice laptop than proper software integration. However, proper software integration goes a long way. I bought an XPS m1330 "N" with Linux pre-installed 4 years ago. I have had zero funky hardware/software dances with it through the many re-installs I have done. I don't relish the idea of replacing it.

So this is good news to me. I looked into recent Dell's and found that there is almost always something slightly "wrong" with them when you run Linux on them. Either weirdness in power management or the touchpad or some other random thing. Just being able to buy a computer and not have to worry if it is going to work with my OS is very nice. I have too much to do and don't want to spend a week futzing with drivers and other nonsense (I have done enough of that for a life time).

</comment><comment><USER16> In the spirit of... well... "thinking differently" we might call it, I'll actually say I'm pretty happy with the Dells I've had. They're solid workhorses with relatively good value for the money I spent on them. Certainly, they are not glamorous or beautiful, but they work well, have good support, and have generally run Ubuntu pretty well.

That said, if someone came along and really did good Linux support, I'd probably switch.

<comment><USER17> I've been pretty happy with my Dell laptops, running Ubuntu.

But they lost me when they dropped WUXGA. That extra 200-pixel row may not matter to folks using their machine to watch movies, but it's missing developer real estate to me.

<comment><USER16> Ouch, they have? That does stink, I have one of those, and love it. _Sigh_...

<comment><USER17> I think you have to go to 17" or something to get WUXGA from them.

It pains me that there's no good way to assemble or upgrade laptops to one's liking. It's pretty much take it or leave it.

</comment></comment></comment></comment><comment><USER18> I think this thread is a great example of why developers are notoriously tough customers (myself included)

<comment><USER19> Actually, the things that we are asking for are not that difficult for a hardware vendor to implement. Besides, we usually tend to buy the higher end models rather than the entry level ones, so the profit margins are higher for each developer

</comment></comment><comment><USER20> What would you think about a contemporary GRiD Compass?

Emphasis on durability and ergonomy before slim-ness, providing :

      - Stronger structural material for laptop frame
      - Shock and torque absorbing bits around corners, and hinges
      - Stronger hinges that you can manipulate carelessly
      - Better ergonomics by balancing weight
      - More space for internal addition (PCIe, USB3) for modders
      - Ease of access to internal, repairability.
      - Easier heat dissipation aiming for 35-50C min-max range with minimal fan speed.

Beside, add:

      A true 8bit IPS LCD.
      A thinkpad class keyboard.

A nice vintage black box that handle 25 years of hackery without a glitch.

</comment><comment><USER21> The worst part for me is that the XPS13 only allows a MAXIMUM of 4GB of RAM. This is ridiculous for a dev box, especially when I want to run a VM or two.

<comment><USER13> They all say that - I'm 99% sure you can install at least 6 GB, if not more...

<comment><USER22> Aren't the ram chips usually soldered to the mobo on ultrabooks? Crucial indicates they can't upgrade ram on the XPS13. And a little googling says soldered RAM... Nothing on the Dell website suggests they can upgrade past 4.

<comment><USER13> Damn, you're right, the XPS 13 is non-upgradeable. the Samsung Series 9 and Series 5, as well as the Toshiba Z830 are, though...

</comment></comment></comment></comment><comment><USER23> So their target audience is developers that are incapable of installing their own tools and that are cool with the cheap look and flimsy build quality of Dell laptops.

Unfortunately, that market actually exists, and nine out of ten times that lack of caring for quality is reflected in their work.

<comment><USER24> Official driver support matters.

You won't run the risk of buying a notebook, install Linux, find that driver xyz doesn't work, then find the store won't take it back because reinstalling the os voids warranty. And waste money. This is a big risk when shopping for Linux laptops. Specially for cheaper brands that you can't easily find online reports about whether it works or not.

Official support makes shopping much easier.

<comment><USER25> > _reinstalling the os voids warranty_

That's why you should make a disk image before you wipe Windows. Plug in a Linux Live USB, use dd + gzip to create a bit-for-bit copy of your hard drive (it should compress well because there's no data on the machine), keep the copy in an external hard drive, and then wipe the internal hard drive. Nobody at Best Buy will know what you did.

</comment></comment></comment><comment><USER26> I'm surprised they think developers would be interested in this. Having worked with Dell in IT, you couldn't pay me to use anything they put their name on. Dell have a bad reputation in both hardware and peopleware, and it's well deserved.

<comment><USER27> This comment would be meaningful if it even contained a hint of an anecdote. "Well deserved" how, exactly?

<comment><USER28> I've owned 3 Dell laptops in the past 2 years.

First one's screen broke. Second one's graphics card was faulty. Third one's sound was messed up, sent the PC in for repairs. Dell technicians dropped it on the ground, blamed me for doing it, then refused to further support it.

I don't care one way or the other if anyone else buys Dell; but there's no chance in hell that I will ever again.

<comment><USER29> Okay, anecdotes with anecdotes. The dell laptops that I've had (from the latitude series. That ugly gray one) have been sturdier than most bricks. I've dropped them on my wood floor, they've been tossed around in my backpack, had things spilled on them, and been abused in every way you can imagine.

They _still_ keep chugging.

*When I'm talking about multiple laptops, I'm talking about multiple laptops within my company. Not my personal laptop [although I have had one]

<comment><USER30> I think this is because you are comparing the business laptop to the consumer edition. While I haven't actively shopped laptops for a few years, I have noticed that the business editions, while a tad more expensive and less "stylish", are usually much better built. My friends' consumer Dell laptops consistently fail within the first 1.5 years or so. My father's 6 year old Dell survived much abuse, and is doing fine.

The business versions of laptops are usually far better built, but you cannot buy them at Best Buy and the like.

</comment></comment></comment></comment></comment><comment><USER31> The biggest possible upside to this project will be if Shuttleworth & Company get on board to support the XPS13 as a first class Ubuntu platform because of Sputnik.

And when I say first class, I don't mean "give it the Supported Platform stamp." I mean "respond to user reports of touchpad bugs" and "fix them."

<comment><USER19> This is actually a pretty great Idea. I wouldn't mind paying a support fee instead of the ridiculous Windows License fee that I have to pay every time I buy a laptop (only to erase and install Ubuntu the moment it arrives). If only Dell had the courage to stand up to Microsoft...

</comment></comment><comment><USER32> "Configuration as code". In other words, "configuration as plain text files". Another innovation that's actually been in *nix since forever.

As a result of this, I can turn any computer into a me-friendly machine in about an hour. Install my favorite Openbox-based distro (Crunchbang), copy over dotfiles I've already customized, and install every package from a list that's been exported from my main laptop.

</comment><comment><USER33> This is kind of interesting for me. I'm trying to find for myself a proper Linux machine. Right now on Dell e6410, a bit regret that I bought it. In my opinion nearest to the ideal developer machine on Linux is Lenovo X1 or X220.

Screen 13": is enough, even 12" is enough. If you are kind of developer who moves his behind from meeting to meeting or spends some time on plains or conferences. 13" (max) is your choice. You can buy really cheap big monitors and plug you machine, in every place where you work.

Processor and Memory: this is out of discussion i7 and 8GB ram. Memory is so cheep those days that giving developers less than 8GB is a sin.

HDD: SSD 128. This works for me. I have external drives, as a developer I don't keep movies, games, photos on my computer.

Graphic Card. I had a rule that if I'm using Linux I'm using Nvidia cards. This probably not true any more. I've heard from people that Intel Cards work well. But still, switching screens is done decently in NVIDIA drives.

Screen: for me Glare.

Battery: should follow at least MacBook Pro 13". which is 3-4h.

Price if this will be more than 1400 $ people will buy MacBookPro.

Ubuntu: I'm using Xubuntu. Unity still keeps me angry, and as smallest as possible number of installed programs. Because I'm developer it doesn't mean that I'm using Eclipse.

<comment><USER34> +1 to the NVIDIA requirement with Linux - when looking for a new Linux dev laptop, this was a must since I use an external monitor most of the time when docked - you can trust this will work 110% with NVIDIA - Intel GPU's have been a bit shaky with this in the past. But this might be better with newer Linux kernels/Xorg shipping with distros like Ubuntu 12.04.

In the end, I went for a speced up Thinkpad T420 with i7/NVIDIA/8GB - <USER2> really, really well.

<comment><USER35> Uh, I can't really second this. I've been using Intel graphics for the last 3+ years, and never had a single multi-monitor problem. Intels FOSS drivers (nVidia doesn't publish FOSS drivers or even specs) support xrandr (the linux standard for multi-monitor configuration) like a charm. nVidia only offers xrandr support in the latest beta of their driver, forcing people to use their weird twinview utilities for years.

</comment></comment></comment><comment><USER36> Linux developers by and large don't care what distro or software comes preloaded. They intend to replace it with their favorite setup the moment they take the machine out of the box. What they want is a keyboard designed for productivity and hardware that is fully compatible with the Linux kernel. Some will only use free (libre) drivers. Some want a large touchpad, others just want a pointing stick, and others don't use a pointing device at all. Many want easy access to the inside of their computer. Then there are always the regular consumer issues like how pretty the machine is, does it have bluetooth, an optical drive, etc. All laptops have a tradeoff among portability (size and battery), performance (CPU, GPU, RAM, and display), and price (low is good). Most great laptops only excel in two of those categories. Different developers choose a different two.

</comment><comment><USER37> I'd like the ability to have 16GB of RAM in a machine that's the size of an Air or Ultrabook. It seems at the moment, that is impossible to find.

</comment><comment><USER38> A nice move. Too bad the XPS13 has a (reportedly) terrible display: [http://www.theverge.com/2012/3/6/2848346/dell- xps-13-review#...](http://www.theverge.com/2012/3/6/2848346/dell- xps-13-review#section_4)

</comment><comment><USER39> It is only softwares for the XPS13?

<comment><USER40> So far, yes.

</comment></comment><comment><USER41> I fully expect it to be $140 cheaper than a comparable machine running Windows 7 Pro.

<comment><USER42> Can't tell whether this is sarcastic or not, but if you think Dell pays full price for Windows licenses you are in for a surprise.

<comment><USER19> I don't know the backstory on this....does Dell pay much less than the full price? How much less?

<comment><USER43> When people have managed to get refunds for preinstalled Windows licenses from major OEMs, the number's generally been in the $35-50 range.

Keep in mind that the manufacturers also subsidize the cost of systems with all the preinstalled crapware that comes on a lot of machines.

</comment></comment></comment></comment><comment><USER44> Hmmm .. "devops" angle .. "developer profiles" .. these things don't seem necessary.

<comment><USER45> DevOps is hot area right now.. applications are driving the infrastructure and it's changing what cloud is..developers are in charge

</comment></comment><comment><USER13> I don't know, I think matching hardware to software is a stupid idea. Just focus on building the hardware as a platform, don't lock it down with custom BS solutions and let the software developers handle the software.

What kind of developer doesn't have their own workflow and customize their own workstation to their needs? You just can't mass produce a one-model-fits-all laptop for developers...

Of all Dell laptops, the Precision line is the only one I'd buy - the M6600 looks especially good now that HP abandoned the near-perfect design of the Elitebook 8740/8540w (just for the sake of a new design it seems)...

</comment><comment><USER46> the negative and aggressive attitude in this thread is depressing.

:-(

<comment><USER47> Maybe Dell should have consulted their target market first.

</comment></comment><comment><USER48> On every single Dell I've used I've hated the keyboard within 10 key presses at most, and I've tried a good 2 dozen over the past 15 years.

And there in lies the problem, every other spec is fucking useless compared to 'does this keyboard suck'. If it sucks you can have 32GB of RAM, a draw that spits out toast and Knuth built into it and I still won't buy it.

</comment><comment><USER49> Why would a laptop running Ubuntu be for "developers"? Not to get into a distro flamewar, but (for example) many large organizations use RHEL on their servers, and developers on the back-end would want to develop there so it will run on their customer's systems. They should be clearer that it's for "web developers".

</comment><comment><USER50> Standard size function keys. No media keys, only volume/mute control.

Trackpoint is a must. I can even live without a track/touch pad.

</comment><comment><USER51> If I'm allowed to design my dream laptop, I'd make it have

\- a 13 inch 1080x1920 screen

\- two video outputs (for when its docked)

\- an SSD for the OS and my tools

\- an average hard disk for my data

\- a good keyboard

\- enough memory

\- a camera and audio

\- 3G data (or better)

\- Bluetooth for the keyboard and trackpad when it's docked.

And the rest of it would be a humongous battery. And power it with an Atom- class processor so that the battery lasts a day. Leave the software alone.

Make it pretty.

</comment><comment><USER52> The XPS13 doesn't really seem equipped to appeal to professional developers, but Dell might be specifically targeting the entry-level and enthusiast markets. I would have enjoyed having something along these lines in high school, for instance.

</comment><comment><USER53> They can start by unfucking the internal/external display mode key. [http://www.osnews.com/story/23202/The_win_p_Mess_Will_Micros...](http://www.osnews.com/story/23202/The_win_p_Mess_Will_Microsoft_Ever_Learn_)

</comment><comment><USER54> Running SUSE 9.1 on a Dell Precision M70. Huge screen works fine in Suse, and as I use an external PS2 keyboard, no chance of accidentally tapping the mouse pad. Wifi works fine on M70's internal wifi card. Great cheap Linux laptop.

</comment><comment><USER55> Great, now offer Fedora on it and you might have a shot at selling me one. I'm in the market for a new laptop Real Soon Now, and I will definitely be looking for something to run Fedora on.

</comment><comment><USER27> I like the pop-under ad for gambling when you visit this site. Classy.

<comment><USER40> On devopsangle.com or somewhere else? We don't do any sort of banner advertising, popunder or otherwise so unless our site has been hacked (I'll look into it) then it sounds like you've got malware on your computer.

<comment><USER27> Well, I visited this link twice to be sure and Safari pitched up a pop-under ad both times.

I assure you, I do not have malware.

It happens when the justin.tv widget in the side-bar loads. It attempts to load something that redirects to <http://rts.pgmediaserve.com/03d458/>

<comment><USER45> I cannot duplicate the error..sometimes i've seen providers have f'd up dns where some bad stuff happens..

<comment><USER27> This is not a DNS issue. This is the justin.tv widget doing something fishy in the background.

I have Little Snitch installed and locked down so it can't make any connections, but it tries two different sites over SSL in an attempt to fetch content for the frame.

Curiously it works with AdBlock enabled, too.

</comment></comment></comment></comment></comment><comment><USER56> With Linux slowly growing in popularity among developers this is good news to me. Now if IT shops at large companies will start supporting Linux for developers more that would be cooler.

</comment><comment><USER57> A developers laptop without a trackpoint, crappy keyboard and a screen that does not provide much vertical space? Other than this, I welcome Laptops designed for developers with Linux.

</comment><comment><USER58> So I immediately went to the Dell website to check the XPS13. The only OS choices were Windows or Windows. Apparently they didn't announce Linux internally.

</comment><comment><USER59> I would buy a Ubuntu laptop. I feel like a fool that I spent money on a MacBook Pro. I was too lazy to get a Linux laptop working.

</comment><comment><USER60> And there I am, wishing the headline was "Dell Announces a Linux Laptop Developed for Designers" instead.

</comment><comment><USER61> People can develop on 13" screens?

<comment><USER62> I develop on an 11" screen.

<comment><USER63> My laptop is in for repair and is taking a disturbingly long time, but my friend lent me his out-of-use EeePC with a 10" inch screen.

I'm amazed at how much work I have actually managed to get done. When I'm in the office I dock it to a keyboard/mouse/monitor, but even on the road I've found myself able to use it, once I adjusted to the keyboard.

If you run light-weight ubuntu (lubuntu for me), have your browser/editor/terminal in fullscreen, and you can get back to work. The slow processor does struggle with our companies rails app though...

</comment></comment></comment><comment><USER64> Someone must be able to make a viable business model out of selling Ubuntu on Ultrabooks.

</comment><comment><USER45> Big time developers have always said that OS X is a better Unix development environment than Linux. Dell is smart to come out with a power Linux development station. My friends have been replacing their unix workstations with Macintoshes. Mac OS X is basically plain Unix -BSD flavor. Now Dell is going there. Smart by Dell

@furrier

</comment><comment><USER65> It would be nice if you could get them to ship it preinstalled.

</comment><comment><USER66> Just get a Macbook Pro 17 inch. Best machine ever. The only serious laptop for developers ;-)

Bought it last week, and did almost go for a Macbook Air after the Linus endorsement. I am so happy I didnt!

</comment><comment><USER67> what's new here, because xps13 is a fancy ultrabook? i installed ubuntu on my laptops and they always worked fine, why is this big news. i might be missing something...

</comment><comment><USER68> The most obvious thing about Dell's ignorance-promoting product page for the XPS13 (the differences are only defined in marketspeak) is that there is still no SSD available:

<http://www.dell.com/us/p/xps-13-l321x/pd>

However, I'll keep the low-end version in mind the next time I'm shopping for "America's Best Protection." Oh wait, they all come with that. Hrm.

Are they really hoping to get a piece of the Macbook Air pie with this?

<comment><USER69> _The most obvious thing about Dell's ignorance-promoting product page for the XPS13 (the differences are only defined in marketspeak) is that there is still no SSD available:_

Says right there on the page you linked that the $999 base model comes with a 128GB SSD. So does the final summary if you went through their configuration tool (which is admittedly laughable because all it allows you to configure is what level of Windows/MS Office licenses you want bundled, warranty coverage, and accessories like a monitor/printer).

<comment><USER68> I'm not seeing any mention of an SSD on the page I'm looking at:

<http://imgur.com/JjneQ>

<comment><USER70> The yellow 'signal strength' bars under the 3 configurations -- 'Solid State Drive'.

Also, a 'solid state drive' is mentioned in the feature details under 'Turns on instantly'.

<comment><USER68> LOL. In my defense, those are extremely crappy UI signalling.</comment></comment></comment></comment></comment>


10 tips for web programmers - <AUTHOR> http://www.aclevercookie.com/10-tips-for-budding-web-programmers-and-designers/

<comment><AUTHOR> of course it had to be a top ten, but some seem like they could lead to a reasonable disagreement/discussion</comment>


Obama to Speak on Syria Live - <AUTHOR> https://www.youtube.com/watch?feature=player_embedded&v=CSvSscaHr6o

<comment><AUTHOR> Any thoughts on what was said? The only reason I posted this is the number of syrian hacker news members that are concerned.</comment>


Ask HN: Is solving a problem always the foundation for a startup? - <AUTHOR> <comment><USER2> No. Think of entertainment startups, like indie game developers or movie studios. They don't solve a problem. Even if you think boredom is a problem, there are countless lifetimes of alternatives to whatever startup is trying to solve it.</comment>


Science writer Simon Singh wins libel appeal - <AUTHOR> http://news.bbc.co.uk/2/hi/uk_news/8598472.stm

<comment><USER2> _Dr Singh described the ruling as "brilliant", but added that the action had cost £200,000 "just to define the meaning of a few words"_

"These sequestered nooks are the public offices of the legal profession, where writs are issued, judgments signed, declarations filed, and numerous other ingenious machines put in motion for the torture and torment of His Majesty's liege subjects, and the comfort and emolument of the practitioners of the law." (Charles Dickens, _The Pickwick Papers_ )

</comment><comment><USER3> The problem with the UK's libel laws is that you have to prove what you say. This makes sense if I write an article calling you a child murderer - you sue me and I have to prove it's true (ie you murdered a child) you don't have to prove you didn't.

But this logic backfires when I accuse you of lying, I have to prove you are wrong (that your treatment doesn't work) - you don't have to prove it does.

The UK's libel laws are also notorious for siding with the person being libeled. That's why Hollywood celebs always sue in London, and why we can't see the south park scientology episode.

<comment><USER4> I've seen the South Park scientology episode a half-dozen times on Comedy Central UK. On all other points though - yes.

</comment></comment><comment><USER5> He didn't actually win the case - he merely won the 'right to rely on the defence of fair comment in a libel action'.

It is a sad comment on our society that even a minor victory for common sense (such as this) makes me bubble over in happiness.

<comment><USER6> right, but this makes his case winnable. before, he was doomed...

</comment></comment><comment><USER7> Simon spoke at the Royal College of Science's Science Challenge dinner last week. I really enjoyed his speech. It's great that he's decided to take up this charge instead of standing down, as the vast majority of people in his position would have no choice. However, in his words, this verdict is simply the court's interpretation of the meaning of his article. The legal implication of the article, now that the meaning is decided, is to be decided later.</comment>


Someone Mailed Me an Amazing Phishing Page of Google Login - <AUTHOR>

https://googledrive.com/host/0B8XF8k7djaD0b1JtU2lpTzBnWUE/
DON'T ENTER YOUR CREDENTIALS ON THE ABOVE PAGE. It is SPAM page which I got from one of my friend.
The above link is a great example how even informed people can get into phishing traps. It has HTTPS looks exactly like Google Login.
This supports my theory that everyone should enable 2 factor authentication.
EDIT - Checkout its source, the whole page is generated using JS ( I am not sure of this claim)
EDIT2 - I have reported it to Google as a phishing page. I am adding a screenshot for future if google takes down it somehow. Link - http://imgur.com/sTY1uRP
EDIT3 - It will send spam to all the emails in your contact book using your gmail id. Tried it with a dummy account. <comment><USER2> Unfortunately, some idiotic companies actually do use non-standard domain names.

For example, my Citi credit card uses "accountonline.com" as the login page. With things like that, "googledrive.com" seems less suspicious.

So to anyone building for the web: please use a single, canonical domain name!

<comment><USER3> [https://googledrive.com](https://googledrive.com) _is_ Google! It's hosted with Google drive (like dropbox can do). So this is one case where it would pay not to use the same domain, actually.

Edit: Also important because that way password autofill won't automatically fill in your details.

<comment><USER2> That's a major security flaw.

On the plus side, looks like your report worked. As of a few minutes after you posted, the link says it's a phishing scam.

<comment><USER4> Actually that's a feature, now anyone can host a simple webpage without any hassle the fact that this dude figured out a way around it is kinda cool but I'd rather they not remove this bec of phishing attacks.

On the other hand I can see how THIS specific attack is very dangerous: people might assume that they need to login to google to see the content hosted by google....

</comment></comment></comment></comment><comment><USER4> I very nearly entered my creds just by instinct it looks truly legit, just so you know now chrome stops you from going there (you need to admit to being an idiot before you can move forward)

</comment><comment><USER3> I tried to submit the form but Safari warned me that it wasn't being submitted securely. I wonder if they use JS to detect what you're typing in before it's submitted.

<comment><USER5> Of course its possible to capture a users screen as soon they visit a page. Check mouseflow or gamooga secondscreen

</comment></comment><comment><USER6> Re: 2-factor auth:

Couldn't the app try to login, detect the 2-factor, and ask you for that in the response?

<comment><USER7> Yes it could.

However it would only have 60 seconds (30 + 30 sec) to forward that to Google along with your credentials. It cannot be done via the user's browser due to forgery protection on Google's end, so a third party piece of software would have to grab the credentials including 2f code and log in using a "browser" (e.g. WebKit engine).

One challenging problem is for the site to know if it should prompt you for the 2f code. It won't know until it tries to login, and it won't be able to try and login until it forwards your credentials to a third party piece of software and then gets a reply back. Even assuming this is done very fast, it could still take a few seconds, in particular if Google starts to throttle their client's IP.

It would likely be easier just to target low hanging fruit (i.e. non-2F people) unless this is a targeted attack.

</comment></comment><comment><USER8> Holy Shit. It looks damm original

</comment><comment> n-gauge the only give away is the ')); characters in the bottom left of the screen

<comment><AUTHOR> I totally missed that because of my screen resolution. I need to scroll to see that.

</comment></comment><comment><USER9> Goodness I'd have even gotten busted by that. That's quite clever.

</comment><comment><AUTHOR> I would love to know the technical details behind the creation of this page.

<comment> slipstream- It's just a webpage hosted on Google Drive:

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

Regarding the contents of the page itself:

first layer of obfuscation document.write's a script tag to include "aa.js" which document.write's the main phishing page itself, which sends contents directly to a hacked WordPress site ( cairngormsagainstpylons dot org ).

Reported via Google Drive abuse as a phishing page.

</comment></comment><comment><USER10> wow this is ridiculous</comment>


Ask HN: Need help finding an article - <AUTHOR>

There is an essay that featrues a scientist telling a story of when he was working at Bell Labs or one of the tech epicenters and he was jealous of another scientist, his supervisors says something to the effect of "imagine if you worked as hard as he does". He goes on to discuss how this conversation changed his world view and his work habits.<p>My google-fu has failed me on this one. DOes that ring a bell for anyone and could you provide a link or a search term please? <comment><USER2>
        Now for the matter of drive. You observe that most great
        scientists have tremendous drive. I worked for ten years
        with John Tukey at Bell Labs. He had tremendous drive. One
        day about three or four years after I joined, I discovered
        that John Tukey was slightly younger than I was. John was
        a genius and I clearly was not. Well I went storming into
        Bode's office and said,  "How can anybody my age know as
        much as John Tukey does?"  He leaned back in his chair,
        put his hands behind his head, grinned slightly, and said,
        "You would be surprised Hamming, how much you would know
        if you worked as hard as he did that many years." I simply
        slunk out of the office!

"You and Your Research" by Richard Hamming.

[http://www.cs.virginia.edu/~robins/YouAndYourResearch.html](http://www.cs.virginia.edu/~robins/YouAndYourResearch.html)

If you had included contact details in your HN profile I could also have sent this to you directly.</comment>


Ask HN: Do you think Electron is good for building Desktop Apps? - <AUTHOR> At Oursky, we built several apps with electron.<p>We find that it's easy to set up, you can use npm packages. Yet the build size is quite big and it might not support all native features. What's your thoughts? <comment><USER2> Regardless of whether the HTML+JS+CSS stack is good for desktop apps... The one thing that bums me about Electron is that it bundles an entire web runtime with each app, even though a suitable runtime _already exists_ as part of the operating system.

Seriously, WebKit on Mac and Edge on Windows would be just fine for >99% of Electron apps. Using the available web runtime would be a tremendous saving both in build size and memory usage.

Did you know that Chromium contains 25.3 million lines of code? [1] Each Electron app is bundling a separate copy of that enormous codebase in binary form. It's a terrible waste of memory.

It's true that supporting the native web runtimes would be more work for the Electron framework developers, and sometimes would also mean more work for app developers... But most web apps have absolutely no good reason to be tied to Chromium, so for app developers the diversity would actually be beneficial in the long term IMO.

If someone wants to start a project that's like Electron but uses the native runtimes, I'd actually like to contribute some work. Let's call it "Electrino"?

[1] [https://twitter.com/worrydream/status/857794605076500480](https://twitter.com/worrydream/status/857794605076500480)

<comment><USER3> Look at it from a product owner's perspective. I want 100% of users to have the same experience. Electron bundling a web runtime that gives the same experience on each platform is absolutely key to giving them the same experience. There may also be security issues to consider.

<comment><USER2> Look at it from the computer owner's perspective. I don't want your experience if it comes with 100+ MB of redundant code.

<comment><USER4> Isn't that size arbitrary? Downloading and storing a 100mb program takes the same (or less) fraction of your available resources today as downloading and storing a 1mb program in 1995.

Are you short on disk space? Download is too slow? Is this a real problem?

<comment><USER2> Download size is relatively harmless; size on disk is an annoyance and a real concern (a lot of laptop users have an SSD in the 128-256 GB range); but memory footprint is the real killer for me. I don't want every little widget to consume hundreds of megs of memory.

In 1995 my computer had 8 or 16 MB memory... Having a 1 MB app running in the background would have been huge. I certainly don't want to go back to that era.

<comment><USER4> Wouldn't regular Chrome have the same issue? Each tab is a full instance... your argument is against Chrome and web apps, not Electron.

<comment><USER2> No, it's different.

Each Chrome tab is a process, but they share the same dynamic libraries in memory. Each Electron app is both a process and a separate copy of the dynamic libraries.

If you run half a dozen Electron apps, those redundant libraries will be taking up roughly a gigabyte already.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> I am a retrograde, grumpy, obtuse old curmudgeon, so let me bite:

No, it is a terror. Applications produced with it are bloated monstrosities, gobbling up hundreds of megabytes in both storage and RAM before getting round to as much as putting a checkbox on screen. Bundling an entire web browser inside your program in order to provide portable GUI functionality like what Tk managed more than twenty years ago without breaking a sweat, and at roughly 1/100 the size, yeah, sure, it flies. So did the Spruce Goose, sort of.

But then, I never took to js, I never took to Chrome, I never took to bloat as a way of life.

[edit: typo]

<comment><USER6> I agree with you and take it a step further:

It is totally embarrassing that programs are 100-1000 times the size they used to be, and slow. I think it shows an overall disinterest in our tooling and field, and it's shameful.

<comment><USER7> Another thought, however, an application I wrote is 30MB when packaged. On an average internet speed, this takes ~16 seconds for your average internet speed (15mbps). Even on 1mbps, it only takes 4 minutes for the application.

When unpacked, it weighs about 100MB. This disk space costs roughly £0.004 for an HDD or about £0.020 for an SSD.

In exchange for these extra costs, I get to use HTML, CSS and JS on both our website and our desktop applications and they get to share the same codebase. That alone must saves me 50% of the time. The fact people might have to spend upto 3 more minutes to download my application and that it costs them 2p to install it on their SSD is minimal compared to the fact that I can have twice as many features in the same amount of time.

<comment><USER8> Download is not the problem, the 10s start-up time is, as is those 100 MB RAM usage, even worse if you hit swap.

Why use JS when you can have Lua for scripting and a less annoying programming language for main code? Why use HTML and CSS when you can have a dynamic portable native UI as in Qt?

I smell laziness and cutting costs in those decisions, or rather offloading the costs onto users.

<comment><USER9> >Why use JS when you can have Lua for scripting

Have you tried NPM? If I want to write every single line of code for my application, I don't expect it to ship (unless it's extremely simple). When there is a library for almost everything, why not use one instead of trying to reinvent the wheel?

<comment><USER10> Have you used anything other than javascript? NPM is not unique, half the stuff it contains is also in the standard runtime of other frameworks.

<comment><USER7> I would thoroughly disagree with you that there is any other repository of libraries nearly the size of NPM. Take a look at ModuleCounts[0] and you'll see that NPM is growing 4x faster than the next sized repository (Maven) with already over double the number of modules.

[0] [http://www.modulecounts.com/](http://www.modulecounts.com/)

<comment><USER10> Module counts aren't relevant. A good chunk of them are micro libraries (left pad) that are already covered by anything with a standard lib, half of them are abandoned crapware. I'll take 1 good library over 10 similar shitty ones any day.

We also had libraries long before every language needed it's own package manager.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER11> Electron is acceptable for seeding the development of a new idea, product, and/or platform.

However, as the team and product grow up, it becomes less acceptable as users expect more performance by going more native and deeper integration with the OSes.

Sorry but Electron is not the future for me. I dislike the memory consumption it eats up. There is nothing acceptable about a simple chat app eating up 1GB of memory when the identical IRC client I had was using 100KB and has more features and the same client was built back a long time ago.

As for others talking about how there's plenty of disk storage and memory, that's lazy. We're losing a generation of native coders to people who only know about Javascript and never taking the step to learn more about how bare metal works, effectively losing all the knowledge of optimizations, iterations and programming skills we've learnt in the past three decades.

I can assure you, you can stick with Electron apps only for your business but the moment I find a native version of the same apps, I'm done with your business too. Slack, VS Code/Atom, etc, none of them are on my recommendations list and they will never be until they either go native or there's a native competitor. Sublime Text destroys VS Code/Atom completely and yet, the version they've built 5+ years ago is still better than Code/Atom today in pure performance despite all of improvements Atom has done.

<comment><USER12> That is the right opinion and programmers should think like this, but i also believe that this kind of thing is hard to stop when it makes it easier for devs to churn out software with existing skills and most non-technical users do not really care anyway. I guess it is a reality we have to accept and wait for web-tech based desktop app development solutions to mature. Maybe react- native is the way ?

<comment><USER11> Technology moves in cycles. We went through this back in 90s and 2000s with Flash, Dreamweaver, ActiveX, Ruby, PHP, and etc.

I suspect we'll see us going from Electron > React-Native or identical and then realizing the benefits of native stuff and back to native code once MS/Apple/other OS try to replicate the ease development process with their languages like Swift, C#, Go, and etc.

</comment></comment></comment><comment><USER13> When you have a hammer everything looks like a nail. I personally hate electron for multiple reasons.

First why would you use web technology to build a desktop app? I could understand if their wasn't a cross platform answer like python and java that are high enough languages that even middle school kids can learn to make desktop apps with. Yet lets default to language and markup language specifically design for a client server relationship.

Secondly from my experience electron runs horribly on linux and windows. I can always tell a desktop app uses electron on my desktop not just by the larger then normal amount of resource it takes to do simple task, but because it will randomly crash. It crashes silently and instantly reboots it self and try to act like nothing happen but it happens so often that I catch it when it does.

Thirdly, I am not about to act like I am some type of security expert, but this is just screaming at me security risk. Electron uses at least 4 engines, how and when do they get updated and security patches installed? Can the programmers stop upgrades of these engines to insure that their app will continue running as is? You can argue all things are security risk, but when you put so many complex engines in one app it is bound to make it difficult to keep up with all the security concerns.

I could keep coming up with more and more reasons why electron is horrible solution to a problem that already has solutions. The appear to webs to keep using technology they are comfortable with is horrible reason to justify this Frankenstein of a code base.

<comment><USER14> > python

Literally the only advantage of this is the lack of DOM related performance issues. Support for mobile is probably a nightmare and you still have to make the website anyways, so might as well write it once. Also trying to combine cross platform, speed, and 3 sounds like it's own nightmare anyways.

> Java

Much more practical option, main cons involve large JRE download and I still have to write my website in JS anyways, so why write it twice? React Native really brings the mobile performance up to par that fits 95% of non-game use cases.

This next statement is not directly related to the parent comment: I'd like to read more about why eletron alternatives are better (or exist) and less about how electron is slow or some other thinly veiled hand-wavey "bad because js".

<comment><USER13> >python comment \- Electron doesn't support mobile so I don't understand this comment. Their are lib for python on mobile good, bad, or evil I don't know. It isn't just a lack of DOM related performance issues it is also V8 performance issues, chromium performance issues, and electron performance issues. When you stack a engine on top of a engine on top of another engine you can't expect to achieve awesome speeds. And if you are making a desktop app why would you even care about making a website of that app?

>Java Again if you are making a desktop app why would you also need a website performing the same task? React Native is for mobile apps electron is for desktop apps so I don't understand why you are bring this up as well.

Electron exist same reason nodejs exist webbies to scare to learn another language. JS isn't bad, but how people use it makes it bad. I should actually say programmers are to scare or lazy to learn alternative solutions to a problem. It is simpler to use what you already know then to try something else. What does electron bring to the table? A way for someone that know JS, css, and html to produce a cross platform desktop app that is it. You don't gain performance, security, and it isn't the only cross platform solution like Java once was. People use to use Java only because it was the only cross platform solution. It had horrible memory leaks and all sorts of issues that still plague it to today. Yet it was the only cross platform desktop solution of its time. That is why electron is seen as useless to me I know how to program in c, c++, c#, JS, and elixir. I would probably learn python stack if I wanted a cross platform solution to a desktop app.

<comment><USER14> > V8 performance issues

Python certainly isn't faster than V8. Maybe in the same class of speed, but certainly faster is not one of it's advertisable advantages.

> webbies to scare to learn another language.

> why would you also need a website

> to scare or lazy to learn alternative solutions

This is exactly the useless, vacuous discussion points I'm taking about. You're literally complaining about electron itself and JavaScript (mostly points that are invalid, misleading, or ad hominems, too) and putting zero emphasis on what alternatives are actually good and why they are great on their own merit.

</comment></comment></comment></comment><comment><USER15> I built Collate ([https://collatenotes.com](https://collatenotes.com)) with Electron and I'm a huge fan. Electron does has its downsides but I think that it's eclipsed by the upsides. For collate, those upsides are:

1\. Ease of building and distributing packages with Electron-Builder. I'm able to build for all three operating systems on my Mac, took a few hours to set up.

2\. Access to the vast NPM library for all sorts of functionality.

3\. Ability to use CSS libraries for styling. I'm no designer so it saves me some time. Collate uses Bulma for styling.

From what I've seen, users are more than happy to have an application that solves their need no matter what it's created in. Most people don't really think about file sizes, or the fact that Chromium is packaged with Node, they just want their problem solved without visual or performance hiccups.

If it wasn't for Electron, Collate would be a very different application or non-existant. I think people need to look at Electron as opening the door to more possibilities.

<comment><USER16> FWIW, I didn't mind the overhead of Electron when I only used a couple apps built with it. Now that that number is increasing, I find myself having to monitor resources & battery life and selectively killing apps. I have concerns that this approach isn't going to scale.

<comment><USER17> This is a really good point. Could two electron apps share a chrome runtime? Has to be a way to make this more efficient.

<comment><USER8> They could but cannot as electron versions are different between every app.

</comment></comment></comment></comment><comment><USER18> I'd say Electron is "good enough" for many purposes, meaning its advantages overweigh the disadvantages. Lower barrier to entry compared to native solutions, developer productivity, cross-platform sharing of code.. Plenty of large companies use it to build (even flagship) products.

The disadvantage that is most talked about is its final bundle size, and I'm not aware of any developments that are trying to solve it. I'm in a project with a number of Electron apps built and in the pipeline, and we're searching for a potential in-house solution, of a central app that hosts/downloads/embeds "mini-apps" that run on the same foundation, to share the same Chromium run-time. Really hoping for a community solution to this though.

<comment><USER19> There is an issue on Github with the idea of creating a runtime for Electron: you would only need to package your apps and a shared Electron runtime would execute the different app you have installed on your OS, a la Adobe Air.

[https://github.com/electron/electron/issues/673](https://github.com/electron/electron/issues/673)

<comment><USER20> After seeing what disasters Adobe Air, desktop Java, and Flash have been, why do people think that they suddenly can do better?

<comment><USER21> Because progress comes after many dead ends.

</comment></comment></comment></comment><comment><USER22> I used to use linux desktop since 2012(ish) and I remember the time when most of my apps were Windows and Mac only! As a broke university student, I could not afford to upgrade to a Mac just to use some tools!

Electron has made me forget those days! Today, most of the tools I use are available on all platforms and while they do take up a lot more ram and disk space - both are generally things I can buy and fit on my computer and will be supported out of the box but not having those apps won't.

I know it's great to hate Electron because of how much ram and disk space it takes, but for those few on Linux, it's truly made life easy!

<comment><USER5> I am the retrograde, grumpy, obtuse old curmudgeon of a comment somewhere above. Running everything on Linux for all of this century and a bit of the last one as well.

As you may surmise, I do not entirely agree with you: I have tried the odd Electron application, but I don't think any of them lasted a week on my desktop. It's not just the bloat in itself. Software built on what I consider iffy technologies - somehow I never really manage to trust them or just feel reasonably comfortable with them.

<comment><USER22> oh I totally agree, almost all those apps don't fit in with Gnome or even Unity (almost all electron apps feel out of place). But imo, it helps make life slightly easy!

<comment><USER5> To each his own. I'm most certainly not out to stop anyone. And I realise I'm too much of a purist for some :)

</comment></comment></comment></comment><comment><USER23> I'd be wary of taking HN's opinion as gospel unless your target market is HN users.

I don't like Electron apps particularly, but I understand why people make them. I think that if your desktop app is "the thing" you're making then you should avoid Electron if possible, as it does provide an experience that's subpar. But if your desktop app is just a convenience offering for your product that lives mostly on the web, I think it's fine to use it.

(there are exceptions like VS code, but they're very finely tuned compared to the average Electron app)

</comment><comment><USER24> It's a complete garbage. Take a look at applications like Slack - they are super heavy in size, memory and CPU consumption.

Even the arguably fastest applications that are built with Electron (VS Code) are very slow if you compare them with native applications.

<comment><USER25> VS Code is a great example... resource hungry it may be but as an app, it's a huge success (based on the Github extension for example that has over 6 million installs - [https://marketplace.visualstudio.com/items?itemName=GitHub.G...](https://marketplace.visualstudio.com/items?itemName=GitHub.GitHubExtensionforVisualStudio)).

It would seem like building desktop apps with Electron is a big boost productivity wise (shorter learning curves, quicker time to working app) than older alternatives (Java, .NET etc, MFC etc.). If that assumption is correct, then it's trade-off against resource is worth it: get working but resource hungry app quickly in the hands of real users vs. take more time building something resource efficient but with user-validation still to do.

</comment></comment><comment><USER26> Define "good" :)

If you need to have a desktop app quickly (for multiple platforms, even) and it's the difference between launching something or not, then yes it is good.

If memory footprint and performance is a critical part of what you're doing (it's not always), then maybe you should look at a different technology.

I think Electron has allowed a lot of cool things to come into existence that wouldn't have if not for Electron.

</comment><comment><USER27> Electron definitely isn't the greatest: it's inefficient, duplicative, and makes your app way larger than it needs to be.

With that said, IMO Electron is great purely for the reason that it opens desktop development up massively.

I've written native apps before and it has been a world of pain. Electron lets me use tools and skills I already know to spin up desktop apps. I know I'm not the only one who this applies to, and there are a bunch of apps that probably wouldn't exist if Electron didn't. It's usually a false equivalence to compare Electron apps to full native apps.

If the choice is between an inefficient Electron app, or no app at all, I'll take the Electron app any day.

</comment><comment><USER28> Electron is the new flash.

While the things built with Electron may be really great apps, we don't need a full browser running for each application instance eating CPU cycles when the applications are not doing anything except sitting idle.

Just write desktop applications if you want a desktop app. If you want a website in HTML/CSS/Javascript then write a website.

Can we please stop trying to jam square pegs in round holes???????

<comment><USER29> > Just write desktop applications if you want a desktop app.

Yeah ... you 'just' need 3 teams, or you 'just' need to use Qt, which doesn't exactly seem to have 'caught on', and has a piddly community compared to the web & Node communities.

> Just write desktop applications if you want a desktop app. If you want a > website in HTML/CSS/Javascript then write a website.

Not sure if you're being intentionally obtuse, it's clearly not that simple.

<comment><USER8> Electron itself hasn't really caught on either and is the newer technology. Comparing it to web communities is disingenuous. Heck, Node.js deployments have their share of horrors.

Especially if your goal is to have a native app experience and not a website in an app. Electron does not really deliver that.

<comment><USER29> Slack, Hipchat, Spotify, Whatsapp, Gitkraken, VS Code, Nylas, ...

I'd say it's caught on. Only Qt app I'm aware I ever use is VirtualBox?

> Comparing it to web communities is disingenuous.

How? You use web technologies to built Electron apps. The strength of those communities is a big win.

> Heck, Node.js deployments have their share of horrors.

It also has its share of successes, just like any lang/community. Not a useful generalisation.

> Especially if your goal is to have a native app experience and not a website > in an app.

FUD. People overstate the 'native experience' argument. Real users don't give a crap, there are tons of apps, even built with 'native' tech that feel unlike any other app. If I ask an average user the difference between Whatsapp/Spotify vs some native apps, are they really going to say 'Whatsapp/Spotify don't feel native'?

None of the apps I listed feel like 'a website in an app'. That's a huge exaggeration.

<comment><USER30> > I'd say it's caught on. Only Qt app I'm aware I ever use is VirtualBox?

VLC, Origin, Battle.net, Google Earth, TeamViewer, TeamSpeak, Telegram, Malwarebytes?

</comment></comment></comment></comment></comment><comment><USER31> Just like the latest discussion about electron, I say: our primary concern is the users. Tron said so.

We should be concerned for their privacy, for their security and for their computers in general. Giving them applications that will eat up their resources as the only option is downright unethical if we remember that our primary concern is "fighting for the users."

I love javascript, I like working the web frontend, but porting the web to desktop by... not doing it, only hiding the browser, is just not the way to do things.

And, by the way, it saddens me that a lot of arguments in favor come down to "we already wrote the website, why do it twice?" That's just _lazy_ and shows a remarkable lack of intellectual curiosity for a field in which being on top of things and updating constantly is key.

</comment><comment><USER32> Produces slow (I've yet to see one that wasn't pretty clunky), resource- hungry, non-native-feeling apps. Not a fan.

Also, bundling lots of different Chromes in apps which may or may not ever be updated feels like a security issue.

</comment><comment><USER33> It makes it easier to get started, and you can often kinda-ish reuse some effort from your webpage at the cost of bad performance and non-native look/feel.

It's a trade-off for me, I use it when the trade-off feels right.

</comment><comment><USER34> My personal take on using electron if the following: If you are creating a big app that gets a lot of attention from the user electron is fine. If you are creating a little tool running in the background, electron doesn't work so well because it often uses a lot of memory. So, building a chat application with electron is bad and your main text editor for your dev work in electron is totally fine. Ultimately, the deciding factor should be your users, is it best for them that you use electron or are they better of, if you are using a different solution.

Something else to consider are your development skills. If you never worked with something else than web technologies, electron is hard to beat in terms of dev experience.

</comment><comment><USER35> For developer convenience: Yes

For product performance: No

It's really a question of what you value more. Personally, I value product performance over developer convenience. I've recently removed all Chromium based applications from main computing use and my computer has been performing a lot better.

The only thing I can't get rid of right now is Slack due to work. I wish it was native, but I understand why it's not.

</comment><comment><USER36> The only one I use is VSCode. It's a great IDE-lite, but after a day or so it pretty reliably gets into a state where it's permanently and unusably slow, and needs a restart. I can't prove this is Electron's fault, but I'm inclined to give the VSCode team the benefit of the doubt. I certainly do not need to restart Sublime Text every day in order to use it.

And as an Old, I do believe there's a serious cultural problem, caused by the Web Rush, where the industry as a whole does not care enough about zero/low- cost abstractions.

</comment><comment><USER37> Python Devs: What would you recommend as an alternative to Electron ? I've heard of PyQT, Tkinter or even PyGTK but not sure what to choose ... Cheers

<comment><USER38> Tkinter:

\- Bindings to Tk (Tcl; cross-platform GUI toolkit).

\- Bundled with Python.

\- Easiest to use but has the least features.

\- Ugly on Linux and is difficult to theme.

\- Good choice for small applications if you only care about utility.

PyQt (or PySide):

\- Bindings to Qt (C++; cross-platform GUI framework).

\- PyQt is GPL licensed and supports Qt 4 and 5.

\- PySide is LGPL licensed and supports Qt 4 (support for 5 is in development).

\- The pixel perfect purists dislike it on Windows and Mac.

\- Good choice for large applications where an almost native look is sufficient.

PyGTK:

\- Bindings to GTK+ 2 which is obsolete.

PyGObject:

\- Bindings to GTK+ 3 (C/GObject; cross-platform GUI toolkit).

\- Comparable to Qt.

\- I've heard Windows support isn't the greatest (this may be obsolete now).

\- I'm biased and perfer Qt over GTK on Linux.

\- Good choice for large applications where an almost native look is sufficient.

wxPython:

\- Bindings to wxWidgets (C++; cross-platform GUI toolkit).

\- Comparable to Qt.

\- Uses native widgets on Windows and Max, uses GTK+ on Linux.

\- Good choice for large applications where a native look is required.

Kivy:

\- GPU accelerated GUI framework.

\- Does not look native.

\- Good choice for graphically intense applications that do not need a native look.

My recommendation is:

\- Small, utility program: Tkinter.

\- Large application: Qt (if an almost native look is sufficient).

\- Large application: wxPython (if a native look is required).

\- Graphically intense application: Kivy.

</comment></comment><comment><USER17> Lots of commentary here, including "why not just stay in the browser"? Certainly you can run Slack in a browser tab, but I don't think they'd be enjoying the same success as they have now without having the presence of a full app.

So I'd spin the question around: why NOT offer a desktop app option—considering that electron makes it a pretty light investment for any team already building a web application?

If you already need your product to work in the browser, you're a small-ish team, and your feature set is in motion, I think it's a good strategy to do an electron app because it further incorporates your product into the day-to-day experience of your users. There will certainly be a point where offering a native desktop app becomes worth the investment, but that may not be day zero.

Meanwhile, would love to see google work more closely with the electron project to help (1) use the chrome runtime if it's already present and (2) at least allow two electron apps to share a runtime footprint.

<comment><USER17> All of this said, Slack, I feel you've proven your model out, so it may be time for you to go native with your product. Do it as part of your commitment to the environment—you could prevent the emissions required to power so, so many spinning fans.

</comment></comment><comment><USER21> Is there something coming our way like React Native but for desktop? It doesn't have to be tied to React (or even JavaScript), just a similar project.

I really like the ease of cross platform publishing. Even as a JavaScript developer, I loathe the memory footprint. 100-200mb per app doesn't bother me, though linking to already installed Chromium sounds like a good idea.

</comment><comment><USER39> No, and Never,Since the Electron uses Chromium and Node.js so why not browser? Yes there are something browser could not do , and what I want to say is maybe there is stereotype. I have been using desktop software using web-gui in browser and they work just fine. there need something maybe a protocols that make browser more desktop, but this would never happen since it would give user too many power.

For now all the google-about things would always end up to benefit google instead bring convenient to user. Yes I just hate google, And what they bring to the web(For recent years only)

I think something like Electron should have been made but all I could find now is web browser or game engine.

There are already too many silly Apps on mobile platform, and Electron is just another that silly things in my eyes, since I'm just a stupid and arrogant user

</comment><comment><USER40> Having seen the multiple-process-resource-hogs that tend to come out of Electron it is easy to dislike it, but I have always wondered about one thing: how does Visual Studio Code avoid these pitfalls? I have never once seen VS Code spin up more than one process or hog memory. It is built using Electron, is it not? Is it some fancy hacked-to-death version of Electron that fixes these issues to the point of not being considered "Electron" at all? Or are they just _better_ at utilizing the tool in a way that works?

If the former, I am on the "Electron sucks" bandwagon. But if it is the latter, the fact that there is even just one app that manages to use Electron to produce a product that does not suffer from these commonly cited issues would make me hesitate to discount it as a whole.

</comment><comment><USER41> MVP: Yes. Production, complete products: No.

</comment><comment><USER42> Wow, lots of unbalanced Electron hate in this thread. Sure it's ugly, but it's also an extremely productive and empowering platfotm, that's why it's so popular.

Building a web app and a cross platform desktop app is a common business requirement nowadays. Electron is the fastest way to achieve that with a small team or if going solo.

In many cases your only other feasible alternative would be to use Chromium Embedded Framework or system web views. Those two let you reuse your web app UI but are progressively more work than Electron. Those options don't require packaging a node server though.

PS. I don't think Slack is slow because of Electron. Other Electron apps like VS Code are fast.

</comment><comment><USER43> I agree, Electron apps are way too big. They include so much cruft whether you use them or not.

I prefer to write apps with separate server and client parts and the client JS/HTML is generated by in-house tools and thus is a fraction of the size of anything that would uses any of the popular frameworks.

In any case, I'm finding that WebApps are easier to deploy and update than writing for native deployment. In the rare cases that I do need native features, I can deploy a local server which can then access whatever I need. The clean separation of concerns between client and server does simplify architectural design.

<comment><USER44> Is anyone aware of a unificate resource from where to learn about all the limitations of a local webpage versus a served webpage?

</comment></comment><comment><USER44> Not trolling, genuine question: would Mono be a terrible alternative to Electron for a cross-platform desktop app?

<comment><USER45> Using CEF in Mono to serve HTML/js based UI over a mono-C# back-end is very feasible, and results in a superior program which answers most of the Electron complaints in this post. But to answer your question, yes, it's a terrible alternative, because it's not javascript, and unfortunately the mode of the entire global software ecosystem right now is for all non-application engineers to provide tooling to application developers that cater to the easy- to-use tools they already know (mainly javascript, with some python lingering around.)

That said, if you work in a .NET shop already, you're certainly better off using a mono/CEF hybrid app. Just don't expect it to catch on, even if it generates superior software.

<comment><USER44> I was talking about a cross-platform Mono GTK# app, not CEF + Mono.

</comment></comment></comment><comment><USER46> I've been on both sides of this issue. A few months back, I needed to put together a frontend for a rest app on the local network, that my boss could use without needing to touch the command line. I'm a fairly novice programmer, but I was able to go from never having written a desktop GUI program, to having a functioning (if not particularly functional) product, in less than a business day, which I doubt would've been possible with even something like Qt. It's incredibly easy to build an app with Electron, and I'd encourage curmudgeons to give it a shot one weekend, if only to appreciate how seductive your opposition is.

On the other hand, my laptop is an aging, refurbished Windows rig with a tiny SSD and all the energy efficiency of a stately Victorian mansion. I really can't afford to run anything Chromium-based when I'm on battery, which keeps me from using any of this generation of slick notes apps (e.g. Collate, whose dev is elsewhere in the thread.) What's more, there are almost no Electron apps where you can choose the installation location (VS Code is once again the exception, proving that it _is_ possible), and the cavalier attitude of some devs when asked about this ([0]) drives me up the wall. So VS Code (and my own toy app) are the only Electron programs on my computer, and I don't see that changing in the near future.

[0] [https://github.com/atom/atom/issues/7504](https://github.com/atom/atom/issues/7504) \- One example of this attitude

</comment><comment><USER47> The only real issue I have with Electron, that I don't see brought up when it's discussed here, is the process model.

Last time I checked, each window in your Electron app had to run in a different process. This is a design that makes sense for a web browser like Chrome, but not for the majority of desktop apps.

If your app is simple enough to only need one window, this won't be an issue, but otherwise, I found it a major pain.

</comment><comment><USER48> To all the naysayers on code duplication (of chromium in this case): Perhaps if OS vendors were to provide common universal API access to graphics interfaces and hardware then we would not need a buffer package such as chromium-as-electron! Not to bust ya bawls, but I hardly think that an innovation as sleek as Electron deserves the blame for other structural inefficiencies in the world of software.

</comment><comment><USER12> While Electron has it's ups and downs, if the question is wether an app would exist at all on a certain platform by using Electron vs something else, then i think it's a valuable tradeoff. And let's be honest, most people (for example Slack user) that are not HN users don't really care, also there is a lot of inefficient software done in other languages.

</comment><comment><USER49> Bad idea. We didn't learn from the mess that was bundled vs. installed JREs and if Electron apps become more popular, users will have dozens of different Chrome installations running on their systems, taking up disk space and memory and potentially interfering with each other (that's speculation on my behalf).

</comment><comment><USER50> Microsoft have a very interesting approach with their Office suite when it comes to cross-platform development. They go through it in some detail in this talk: [https://www.youtube.com/watch?v=MGMoRu5yrVc](https://www.youtube.com/watch?v=MGMoRu5yrVc)

</comment><comment><USER51> If you're delivering what you promised to your customer or end user (without compromising on speed) then great!

As a developer, I avoid Electron apps because of the battery consumption. But that's just me. Your end user might not even know the stack or have no idea about it and only cares about the work being done. So yeah, I guess it's great for something which needs to be there as a desktop app.

From a dev's point of view: It's like how React Native is growing as an easy native app development tool. If a team can focus on one codebase instead of multiple, that's a great thing.

</comment><comment><USER52> I think Electron is great for getting something out the door quickly. I also think that we need to have an Electron "app store" that uses a shared Electron runtime a'la Steam. I think the Electron developers have previously discussed that, but I can't seem to find the relevant ticket to link to. An app store would be a great way to monetize Electron (though I'm not a _huge_ fan of this idea) and also help promote some great apps, and of course, reduce the overall file size and resource consumption of Electron apps.

</comment><comment><USER53> The only Electron App which I use regularly is Gitkraken and I am quite happy with it. In my opinion it is not as snappy as a native UI but it is still fast enough that it does not matter to me.

</comment><comment><USER54> I am a Windows developer, primarily C#, WPF, and Win-forms. I must say I have had my fair share of interaction with desktop applications. Electron is great for prototyping and bringing an idea to life quickly. Like many have mentioned the performance is pretty terrible. There has to be a balance between performance and development time/ease. Personally I can work quickly on WPF (due to exposure) and tend to stay away from Electron because of its performance issues.

</comment><comment><USER55> (Building desktop apps in native languages since a lot of time.)

While I haven't use Electron, it looks very enticing. In particular the HTML/CSS combination allows to build UIs very fast. WebGL abstracts away the graphics drivers problems (at least in theory?). 2D Canvas is optimized and looking nice. And being non-native shorten the iteration times. Particularly for games it looks very adequate.

Users surely care about download size but not as much as functionality.

<comment><USER8> Users also care about integration with their platform and matching look and feel. Neither of those are delivered by Electron.

Also that a tiny app does not start for 10s on a strong laptop with a SSD.

<comment><USER55> Native look and feel is the first thing to go with friendly consumer products such as games. Native UI means "generic" and doesn't convey the idea of value.

</comment></comment></comment><comment><USER56> Can one serve a store-bought frozen lasagna in a good restaurant? Certainly.

Would that be a good lasagna? Probably not.

Will it reflect poorly on the restaurant? Most likely.

Why? Because they are OK with serving crap.

<comment><USER57> I only use locally-sourced, artisanally curated softwares.

</comment></comment><comment><USER58> Much better than many native libraries. I added some extra node modules for some specific calls I needed and it went smooth. I'm now converting a second desktop app because it went so well. What disturbs me the most is the numerous process launched. Neither of them really big. I learned that it's also a benefit. not having total scope of a desktop app when you embed HTML+Javascript from uncontrolled sources.

</comment><comment><USER59> I see many people writing that it's okay for apps to use hundreds of megabytes of RAM because there are 16GB computers available now. The problem with that is what if I want to use a $250 laptop with 4GB and an Atom or ARM processor instead? Now I can't run your application. This is coming from someone who has written a couple of Electron apps and has deployed them in production.

</comment><comment><USER48> Totally! Electron is Slack! I think it's huge and unnecessary and would never choose it in my own design decisions, but if you're able to use it for your needs go for it. What an amazing package. It's as close as we have to a universal framework imo. Here's to crossing my fingers and toes that WebAssembly has immutable data.

</comment><comment><USER60> Considering there are companies such as GitHub and Microsoft (VSCode) behind Electron, I'm thinking they will eventually fix the memory/CPU footprint problem.

In terms of programming and development I think it's great. Not to mention that with JS there's tons of languages one can choose from -- think of Elm, PureScript, TypeScript etc.

</comment><comment><USER61> The big complaint against electron is multiple copies of the runtime.

It's unfortunate that google has stopped supporting chrome apps as a platform -- this was pretty much the solution. Single runtime + many apps.

It should be up to the community to pick up the slack, and launch a single (updating) runtime, and allow apps to run off it.

</comment><comment><USER62> I think Electron is better suited for prototyping. I have a hardware/firmware background so those sorts of applications are outside of my wheelhouse, but using a web browser as the runtime for something that's not a web-app seems very strange to me. Why not just use something like QT?

</comment><comment><USER63> Go one step back: why desktop app?

<comment><USER64> There are use cases where a web app is not suitable. For example:

\- Sensitive data that you do not want to be known by thid parties

\- Very interactive applications where consistent subsecond response times are needed

\- Applications that rely on data located in the computer (for example from other desktop applications)

<comment><USER8> Funny thing, Electron is currently unsuitable for first 2 and has serious trouble with 3rd.

</comment></comment></comment><comment><USER65> VSCode is the only product I regularly use AND like.

Tried Atom and and Hyper and they felt really sluggish.

</comment><comment><USER66> Ease of development vs software quality for the user is supposed to be a trade-off but I'm quite convinced it actually isn't, and it may be one of the biggest lies of the software development history.

</comment><comment><USER67> Ugly, bloated, poorly integrated and weird UI bugs, like scaling randomly failing on high DPI displays.

Only useful for web-only teams who have no desktop experience whatsoever. If you can afford to hire a desktop team, do it.

<comment><USER68> I don't know if Spotify is Electron but it's some kind of embedded Chrome and I'm really happy that it scales so well on my Linux HiDPI setup. The regular zoom shortcuts for Chrome just work. I also love that about Slack. Arbitrary user zooming in native apps is usually not implemented at all.

<comment><USER67> Try to use VSCode or Atom on Windows on a 4k display - blurry text, text that random switches between blurry and not blurry. Seriously, I had it so every even scroll was crisp and clear but every odd scroll was blurry and awful on VSCode for some reason, I confirmed this looking at it on a 100dpi screen.

The relevant bugs are upstreamed to Electron.

<comment><USER68> I wonder if HiDPI is handled better by the other cross-platform UI toolkits that people recommend over Electron...

</comment></comment></comment></comment><comment><USER69> I think Electron is good for putting webapps on the desktop. The disadvantages of not being native shows up all over the place, unfortunately. Slow, memory hogs, CPU hogs... they're a mess.

</comment><comment><USER44> What do you guys think about "8th"?

[http://8th-dev.com/index.html](http://8th-dev.com/index.html)

<comment><USER44> Answering myself: $$$.

</comment></comment><comment><USER70> I think it's a great fit, provided the resource-usage (which is likely to be high) of the app is justified.

</comment><comment><USER71> I can't say that I'm not a fan, I'm a hater who rolls his eyes off anything built with Electron.

</comment><comment><USER72> Electron makes Java looks good!

</comment><comment><USER73> You're way better off not writing a GUI than using electron for it.

</comment><comment><USER74> good in that it the easiest option for moderm developers to get something done? yes. but it is horribly inefficient and we the industry should provide a better tool than this nonsense

<comment><USER75> > easiest option for moderm developers

for modern [web] developers.

Contrary to what one might think by reading tech blogs and HN, developers come in more varieties than just "web" and "wizard".

</comment></comment><comment><USER76> Kotlin?

<comment><USER77> No. The current iteration of Kotlin Native doesn't target Windows due to some peculiarities in it's exception handling mechanism. And Windows is the #1 platform for desktop apps. As much as I wish I could reuse our mobile Kotlin code in our desktop app, that isn't very practical at the moment.</comment></comment>


The Good Old Days Are Back: Twitter Succumbs To A Day Of Glitches - <AUTHOR> http://www.techcrunch.com/2009/04/06/the-good-old-days-are-back-twitter-succumbs-to-a-day-of-glitches/

<comment><USER2> I blame Scala! :P

<comment><USER3> <A Streetcar Named Twitter>Scalaaaaaaaaaaa</A Streetcar Named Twitter>

</comment></comment><comment><USER4> Scala can't scale! (kidding)

</comment><comment><USER5> 3 out of 30 stories in the front page coming from TC.

That's 10% and I've seen more sometimes.

Are we becoming a proxy for TC?</comment>


Is TV delaying child development? - <AUTHOR> http://news.bbc.co.uk/1/hi/health/8078763.stm

<comment><USER2> Summary: Television network claims TV is not especially harmful to children if used in moderation.

</comment><comment><USER3> TV is also delaying adult development.

</comment><comment><USER4> or is it shielding them against the statistically unrealistic presentations of the world that are tormenting older generations?

<comment><USER5> care to expand on that? I don't think TV is helping on the rationality front.</comment></comment>


The 10,000 Hours Myth: Practice Predicts Only 12% of Performance - <AUTHOR> http://www.spring.org.uk/2014/07/the-10000-hours-myth-practice-predicts-only-12-of-performance.php

<comment><USER2> This could just mean most people suck at practice. There appear to be very specific ways to practice different skills. Practicing wrong means engraining bad habits and effectively creating an artificial plateau.</comment>


SXSW: Where were the Europeans? - <AUTHOR> http://thenextweb.org/2008/03/16/sxsw-where-were-the-europeans/

<comment><USER2> I'm European and I think I can answer the question:

1) It's in Texas, which is basically halfway around the world for Europeans. I don't think many Americans would attend a conference in St. Petersburg.

2) This may be big in America, but I've never heard of it, and I'm fairly tech-minded and informed.

<comment><USER3> "This may be big in America, but I've never heard of it, and I'm fairly tech- minded and informed."

There are many tech-minded and informed Americans who've never heard of it. SXSW seems to only cover a somewhat narrow realm of tech.

</comment></comment><comment><USER4> This notion of 'where are the (mainland) Europeans?' not only occurs at SXSW but also at this website and websites like techcrunch. Where are the European web start ups? UK websites do popup now and then (Clickpass for example). Within 5 minutes of launching I knew Clickpass was alive. This never happens with Dutch websites, German websites, etc. The Netherlands for example is home to some great websites, like booking.com or joost.com (largely build in The Netherlands) and products like TomTom.com. But, there does not seem to be a startup culture over here in The Netherlands. Where do European startups meet each other? Online or offline.

Why didn't I went to SXSW? Too expensive, too far away.

<comment><USER5> 2/3 of snaptalent's founders are british (Tim & I)

</comment></comment><comment><USER6> There's a lively Barcamp Scene in Germany, practically every month one barcamp with up to 300 attendees. You can find a list of german startups here <http://www.deutsche-startups.de/a-z/startups-a-z/></comment>


Ask HN: Audio books for developers? - <AUTHOR> I love audio books and I really enjoy books on programming but the overlap of those 2 sets is pretty small in my experience.
Any suggestions?
I'm really enjoying Algorithms to live by - by Brian Christian Right now.
Thanks <comment><USER2> Can you really follow a technical discussion without visual aid?</comment>


AT&T Sues Nashville to Keep Google Fiber at Bay - <AUTHOR> https://www.techdirt.com/articles/20160923/06590635601/att-sues-nashville-to-keep-google-fiber-bay.shtml <comment><USER2> AT&T is entirely in the legal right here, but Google Fiber fans don't want to admit it. It should also be highlighted that this law gives Google the right to cause outages in AT&T's service, if AT&T doesn't cause them themselves or find a way to mitigate them within 30 days, which is pretty concerning, and a very tight window, realistically. As someone who relies on my Internet service (in my case, Comcast), I would be not just annoyed, but outright enraged, if someone else had the right to tamper with the Comcast equipment that provides my service, and create outages for me.</comment>


Ask HN: How to Deal with low activity on an awesome FOSS project? - <AUTHOR>

There's an open source project awesomely done, some part of which I am using in my research. By awesome, I imply that the work alredy done on it is extensive, and it has won several awards and recognitions throughout.
Here are some publications
http://tinyurl.com/63cwy55
Its sad to see low activity/contributions on it though!
Project Homepage: http://www.lipitk.sourceforge.net/
Continuously for past 2 years we're getting 4-5 downloads a day however we've no track of what the users are doing with it.
- Is it the problem with sourceforge and its overall interface? Shall we move to GIT. Though moving everything of this scale would be a trouble.
- Any other suggestions that could pump some energy back into the project?
I am officially not supposed to do this, but it'd be awesome to see a phoenix breathing back to life again! Cheers! <comment><USER2> It is a handwriting recognition library. How many apps use handwriting recognition, not many that I can think of. It seems like it may pickup with the uptake of touch screen phones and tablets.

</comment><comment><USER3> Clicky:

<http://www.lipitk.sourceforge.net/></comment>


Ask HN: Recommend a server co in Europe - <AUTHOR>

I've got a couple projects that require a dedicated server/VPS be physically located in Europe.<p>Right now, I use Rackspace, Joyent, and Slicehost for projects. Looking for something similar in the EU. Thanks. <comment><USER2> <http://rimuhosting.com> now have a datacentre presence in the UK (London). I find them very useful but best of all they have very, very good support. They are NZ based.

<comment><USER3> I second rimuhosting, using them with both my companies (Soocial.com and eightmedia.com)

</comment></comment><comment><USER4> We use Hertzner (<http://www.hetzner.de/>) in my company. Pretty good machines and cheap too.

<comment><USER5> Really good offer, considering that's in Europe. Unfortunately they only have a German site and, I suppose, support.

<comment><USER6> <http://www.hetzner.de/hosting/contact/en-support-center/> \- they have english speaking support. Also, some parts of their site is translated to english. Try pressing little english flag.

There is also <http://server4you.de/>. It's only in german though.

<comment><USER7> I can recommend Hetzner, very good network, very good administration utilities (free web-reboots, remote console if you need it, recovery system), excellent service.

server4you however is a provider focusing on the "I need a cheap root server!"-segment, I would not recommend putting all your trust in them, they have a history of failures here in Germany.

</comment></comment></comment></comment><comment><USER8> You can find cheap dedicated servers in france at www.ovh.com . They have a lot of OS distributions and if you can manage your own servers it's a good choice. I work in an spanish ISP and we exchange traffic with them at AMS-IX so it should be properly connected to all the important european ISPs.

<comment><USER9> OVH also have sites for UK, Spanish, Portuguese, Italian, German and Polish customers (see the flags at the bottom of OVH.com), not just France. The pricing does seem to vary depending on the country though (the cheapest UK 'real private server' costs 9.99GBP in the UK, and 9.99 Euros (7.91GBP) in France).

</comment></comment><comment><USER10> I am very happy with <http://hosteurope.de> .. excellent service, good hardware, barely downtime. They have VPS instances and also dedicated servers for prices you can only dream of in the US.

</comment><comment><USER11> we were using Flexiscale (by XCalibre) but their last outage was long, and corrupted all our data. So I would avoid them!

</comment><comment><USER12> ovh, vectoral (netdirekt dc, not reselling), leaseweb I've had personal experiences with. their support generally sort of sucks (at least they reply to you..hehe).

oh, ovh doesn't sell to people living in certain countries. they said they'd change their policy sometime soon, but have yet to see it..

</comment><comment><USER13> Rackspace does also have a datacenter in UK. We have a small server there to satisfy certain EU privacy laws.

<comment><AUTHOR> Really? That's great ... I will look into it.

</comment></comment><comment><USER14> DomainFactory works pretty well for me. <http://df.eu>

</comment><comment><USER15> Callmeed, I am looking to use Slicehost, how is your experience with them? Thanks.

<comment><AUTHOR> Slicehost is wonderful ... they aren't a "managed" company but their support is great. They reply to tickets fast and have a support chatroom. They also have some great articles for getting slices prepped for php/rails/django apps on different distros: <http://articles.slicehost.com/>

I wont name names, but I've had better support from Slicehost than a managed RoR hosting company that costs 5x.

<comment><USER16> Slicehost are great, but afaik they are hosted in the US. Rackspace and Serverbeach good in the UK.

</comment></comment></comment><comment><USER17> I use slicehost from the UK and performance is good.

</comment><comment><USER18> hosteurope.de is very cheap and has excellent VPS deals.

</comment><comment><USER19> OVH</comment>


GitLab flow improves on the Git and GitHub workflow - <AUTHOR> https://about.gitlab.com/2014/09/29/gitlab-flow/

<comment><AUTHOR> GitLab B.V. CEO here, we'd love to discuss this subject on HN as well.

<comment><AUTHOR> One thing I really wonder about is why people want a clean log on the master branch. I don't mind merge commits is there, it shows what happened. But it would be interesting to hear other opinion and use-cases.</comment></comment>


Do startups work well when managed remotely? - <AUTHOR>

I've had limited startup experience.  I do primarily design and LAMP development.  Currently doing JSP (new to MVC architecture but making the change fairly smoothly, usually I script and do front-end design).
I joined a startup just this past summer that received some funding from a popular VC firm and worked there as an intern over the summer.  I'm accustomed to being in the incubator, and being in the presence of the co-founders, while I work.
However, in my current position, everyone works remotely from their own locations.  There is office space, but it's out of the VC firm, there's not really dedicated incubator space for us.  The product is already developed for the most part, we're just focused on growth.
The entire team (about 6 and counting) operates this way.  Can anyone chime in and let me know what your experience and opinion on remote work on a startup is like?  Do you feel it's effective? <comment><USER2> Let's consider a more extreme version of the question. Do startups work well when all development is outsourced?

Assume you have a very capable outsourced team. You will naturally have more difficulty communicating with the external team, both in terms of expressing requirements to them and in getting feedback from them. On the other hand, you might get better people and be able to work with them on a more flexible basis. If you can understand and communicate your requirements in written form, and they don't change very rapidly, this may be a worthwhile trade-off. If you underestimate your product's rate of change, or overestimate your ability to communicate requirements, your life will suck. This is extensively documented in the lore of outsourcing.

Distributed teams are incrementally better than outsourced. You get better people, there is less turnover, and the team members are focused on your project. You might get decent communication if everyone uses chat and a wiki. But you'll still have to work hard to communicate, and you'll probably misjudge your difficulty/capability ratio. You're essentially copying the model of open source software development, and should take note of where that model has been successful.

Remote work is great because developers can focus for hours at a time without interruption. If you are at a stage where most people are working on big chunks of implementation or fixing bugs, this is a huge productivity boost. The other major benefit is that you can hire great people who are blocked from most tech jobs by their location and/or family obligations.

Remote work sucks because communication is more difficult. A group brainstorming session conducted by phone is, optimistically, one fifth as productive as an in-person session. If you are trying to generate ideas or generate a specification, you should expect this to be very difficult to do by phone.

As far as I can tell, having worked for about 2.5 years in a distributed tech company, the determining criterion of success in distributed work environments is specialization. If you have separate people in charge of design, marketing, and coding, it works well. But this often isn't the case in startups; sometimes your best design ideas come from some hacker with an offhand interest in usability, or you decide you can't find a good marketing person and you'll just have everyone pitch in a bit. Those sorts of group-work decisions imply a communication cost, and if you don't realize that your team will feel strangely hobbled and directionless.

</comment><comment><USER3> This is the way my startup is currently operating. There are certainly challenges that come with that. You need to be internally motivated on a day to day basis, and it's important for the team to have a high-level plan that you can work towards so that you know whether you're "late" or doing well, but overall it's working fairly well.

Another key element is to ensure there is a touching point each day, where all the team members are online at the same time.

<comment><USER4> I second the high-level plan and the brief daily calls.

I'll add that if you're working from home, put your shoes on when you start working and don't forget to spend time outside.

</comment></comment><comment><USER5> 37signals champions working remotely here is one example of their praise of the topic, but you can find many more on their site.

[http://www.37signals.com/svn/archives2/getting_real_the_alon...](http://www.37signals.com/svn/archives2/getting_real_the_alone_time_zone.php)

For me, in my limited experience in the area I would have to say that it is completely dependent on the quality of the people and the level of autonomy their job responsibilities can afford.

</comment><comment><USER6> <http://pikluk.com> was built out of 5 different locations in 2 different countries without even a central office. The only "central" thing we had was a Subversion repository.

</comment><comment><USER7> Sure startups can work well remotely but they work even better in person.

</comment><comment><USER8> Remote collaboration can work. It depends alot on how the goal and objectives is defined and relayed to the team. There is a strategy project consulting company in SF Bay Area that trains project teams to collaborate remotely.

<comment><USER8> One more thing. it is all about the process preceding the technology not the other way around.

</comment></comment><comment><USER9> You need to have an excelent software development cycle. I am in the US, my partner and clients are in Zurich, and my development team is in Cali, Colombia, South America! and it works perfectly!</comment>