Ask HN: Is Twitter lost on me? - <AUTHOR>

Hi All,
I do not want to burst the Twitter love-fest bubble but am I the only one who feels Twitter is aimed at a pretty narrow demographic?
This demographic I would split into two: 1. People who have a lot of time on their hands to read tweets or add their own. For me this means mostly students and those between/without jobs.
2. Companies/Individuals trying to link themselves with this hot new trend for profit, monetary or otherwise. A win-win situation develops as Twitter's success can drive people to a company/individual and the company/individual will drive people to Twitter.
Why this post I hear you mumble?
For me personally, I do not fall into the above demographic. I have a full-time job which takes up all of my focus/attention during the day. I do not have time or feel compelled to check a website/twitter client constantly to read new tweets or post myself. And, to be honest, I already have plenty of things to read/do when my mind does need a wonder in the evening/weekend (Yes HN et al, I am looking at you).
Are there others out there like me? <comment><USER3> When I first heard of it, I didn't get it. Then I got it and thought -- that's really cool. Then I ungot it. Twitter is a mullet. It's not just a fad, but a fad that will embarrass us later.

Listen, I'm all for technology. And new things really require a shift in our mindset. I love the "global realtime-ness" of Twitter, and I'm sure that core product will still be around in five years. What form it will be in is hard to say, but I can guarantee you it will not be as Twitter, which will have become a zeitgeist-icon-of-infamy for this age in the same way Pets.com and Boo are for the dot com bubble.

<comment><USER4> "Twitter is a mullet". Just checked on google and that is the first use of that phrase on the internet. I'm proud to have been here to see because that is going to stick.

</comment></comment><comment><USER5> "I already have plenty of things to read/do when my mind does need a wonder in the evening/weekend" -- for many people, especially those in their 20s who came of age using Facebook, Myspace, AIM, etc, one of those things we do to occupy our time is use the Internet to keep up with friends who we, for whatever reason, can't just call on the phone or hang out with in person. Recent college grads especially suddenly find that their once close friends are scattered across the globe; Twitter lets them maintain a sense of nearness.

To me, that's the appeal. You don't have to be unemployed to have 10 minutes a day in which to keep up, particularly when you weigh that 10 minutes spent reading Twitter against the amount of time it would take to maintain individual correspondences.

<comment><USER6> _To me, that's the appeal. You don't have to be unemployed to have 10 minutes a day in which to keep up, particularly when you weigh that 10 minutes spent reading Twitter against the amount of time it would take to maintain individual correspondences._

I'm not a Twitter user and this is perhaps one of the reasons I don't use it. Individual correspondence is important, and I don't think Twitter would be a good vehicle for the types of things that might be communicated in personal correspondence.

That said, it does has its purpose--perhaps I'd rather someone tweet a funny video, link, etc, etc, etc, rather than spamming their entire address book....

<comment><USER7> _Individual correspondence is important, and I don't think Twitter would be a good vehicle for the types of things that might be communicated in personal correspondence._

That's actually exactly why I _like_ Twitter. Direct Messages are a perfect way of keeping in touch with friends over something that isn't email worthy-- the equivalent of sending an SMS if we were in the same country.

</comment></comment></comment><comment><USER8> Do you read Hacker News, or just troll it? Twitter stories make the front page several times a week, and virtually every one of them has a high-rated comment from someone who needs to point out to us how unimportant Twitter is to them.

I don't have time to learn to like anything but Bass and weiss beer, to find out what J-Horror is all about, to play Mob Wars on Facebook, to learn Haskell, to put up solar panels, or to visit New Orleans. Is that 6 "Ask HN" posts I'm unfairly holding back? Or is "I don't see why this is so hyped up" just a really boring story?

<comment><AUTHOR> Hi,

I am using HN to understand from (hopefully) other tech professionals if they have found a way to leverage Twitter. (And have read some good comments already in this thread.)

Twitter is very real-time, that is its power and a core part of its functionality.

So, your 6 generalised analogies on not having time for X misses the point.

<comment><USER8> Next time, try <http://www.searchyc.com> first.

</comment></comment></comment><comment><USER9> Yes. If you're asking that question, then Twitter is lost on you. For now.

It's like happening upon a pad of post-it notes. You either say "Sweet, I have a use for these," or you say "Hmm," and file it away somewhere.

Eventually, you may develop a need that is filled by little bits of paper with weak-sauce glue on the back, and remember about the post-it notes.

Likewise, you may eventually develop a need to episodically distribute short bits if information to a well-defined audience, and you might think "I could do this with Twitter. Or post-it notes and a cadre of flying monkeys."

<comment><USER10> Agreed. I generally don't use Twitter, but at PyCon it was great for finding out, say, that everyone else wasn't appreciating the same talk you were attending and that there was something much better happening in room 3.

</comment></comment><comment><USER11> I gave up on reading every single tweet, just as I gave up on reading every RSS entry in my reader. I just check it when I get bored or need a break for a minute or two.

I probably don't spend more than 15 minutes a day dealing with Twitter, but I still like using it.

</comment><comment><USER12> Your two use-cases are not how I think about Twitter. I think of it as a virtual office, basically.

If you've ever worked in a small development room with no cube walls - <USER2> some tables, a whiteboard, and 3 or 4 people (for example) - it can very easily become a fun place to get stuff done if everyone gets along. :) The dynamics are such that someone might run across a funny youTube video or a joke or have a programming question or comment, etc. and they can just blurt that out to the room. Others answer or not based on what's going on, etc. Perhaps a small discussion breaks out for a bit. Or maybe an impromptu huddle forms around one computer to work something tricky out.

To me, that is what Twitter is especially good at - replicating that kind of small group interaction over the net. It allows me to feel far less alone during the day than I actually am since I work from home now. It's not quite like IM or even a department/company chat room because I'm also able to "hear" the blurbs by certain celebrities I may follow or people I'm good friends with but who work at different companies or whatever.

If I'm busy, I just ignore Twitter. Unlike IM, it doesn't really "demand" attention - and I think anyone using a Twitter client that treats new IMs like a telephone call are doing it wrong. :) But the beauty of Twitter is that it can be used however you want - so my opinion really doesn't affect yours or anyone else's. :)

<comment><USER13> A good tool for _useful_ small-team, disconnected interaction is Campfire.

<http://www.campfirenow.com/>

<comment><USER12> Campfire (and similar) limits me to communicating only with the people on my team/project/company. Twitter (or iChat which allows me to "Share text, files, and code in real time") has no such artificial group restriction.

</comment></comment></comment><comment><USER14> The way I described Twitter recently to someone I work with was, "Have you ever used IRC or a chat room as a backchannel during a conference? Twitter is like that but for the rest of life." In other words, _if Twitter is lost you you, then you are lost on Twitter._ That's not necessarily a bad thing if you don't know anyone who uses Twitter, but you're missing out if people are talking about you or what products and services you use and create.

Twitter has been relatively useful for me when I've asked questions I couldn't answer (or didn't have the time to research). I've also answered questions from friends and colleagues about things like citations for articles and recommendations for tools, restaurants and so on. This "social search" aspect makes Twitter too useful for me to stop using it, though sometimes I laugh about how ridiculous some uses of Twitter are.

I've connected my Twitter and Facebook accounts so that my Twitter posts are used as my Facebook status, and for some reason I get a lot more replies to my questions on Facebook.

</comment><comment><USER15> I don't fall into (1) or (2) either, but I still enjoy the service. I like it because it puts me in touch with likeminded people and keeps me up to date on what interesting stuff is happening in my city.

It's also a nice way to have interesting conversations "in public", where other people might chip in. The recent @reply changes have largely put an end to that particular use case, sadly.

Finally, it's directly and indirectly generated a lot of leads for jobs and projects (I do freelance programming). Not via shameless and annoying self promotion, but simply because people will often post if they need someone for a project. Staying up to date on the developer community in my area also means I don't miss meetups which allow for networking in the classical sense.

</comment><comment><USER16> You're not alone. It's also for 24/7 news junkies meets ADHD generation. Daily updated blogs weren't short and frequent enough, hence Twitter.

Personally, when I'm not working I prefer to lose myself in a book at the bookstore. Being able to block out everything and completely focus your mind on learning something is refreshing and energizing.

My good friends will always be good friends, and despite being far away, when we visit every year or two, it's just like old times. I don't need to be up on every detail of their lives every second of the day in order not to forget who they are or our friendship.

</comment><comment><USER17> Hallelujah, brother! I, much like you, never found Twitter even slightly compelling. I even opened my own account and tried to get into it, but I couldn't and I canceled it shortly after. It's been all over the news lately but I still can't find a real use of it. Not even for searching things.

</comment><comment><USER18> Twitter is good for several things:

* Following celebrities. For instance, I am a huge bike racing fan, so it's cool to be able to get information from some of the pros like Lance, very directly. I even made a site to aggregate a bunch of them: <http://www.bikechatter.com>

* Search - you can keep tabs on search terms. For instance, I look for people writing about Hecl, and a few other things.

* 'Spamming' people. Either the aforementioned people who you find via search, or write about stuff you're doing to promote it. Well, not _really_ spamming people, I wouldn't do that, but twitter can be a good place to "pimp stuff".

The first two really depend on other people wanting to express themselves via twitter, something I'm not convinced will necessarily exist long term. I think the "CB of Web 2.0" is a great label - we'll see if they can prove it false by being more than just a fad.

</comment><comment><USER19> I'm sure there are others like you. Twitter is something that is very difficult for people to understand because it is many things to many people.

I just don't think you can split the Twitter community into two groups like that.

Flawed analysis.

Fail Whale :)

</comment><comment><USER20> Two words: iPhone and Elevator. Twitter is a fun thing to check/update when you're otherwise unoccupied. When you're waiting in line, riding an elevator, in a dentist's waiting room, driving at high speed in the rain, etc. The iPhone makes the experience pleasant.

</comment><comment><USER21> I find it to be a great way to communicate with friends and folks I'd like to know a little better. It's like IM but you don't have to catch them online individually or disrupt their workflow.

</comment><comment><USER22> I don't have twitter account and I am not going to get one. Whatever _useful_ twitter does other tools do better. And I am not interested in useless stuff it is most effective for.

</comment><comment><USER23> I think what you have said is true (to sum extent, i think there are 3 demographics though not to)as i have seen people not within those 2 demographics you mentioned have no interest to use twitter, however those 2 demographics are very large. There are alot of people who are students and alot of businesses and people looking at connecting for monetary purposes.

The thing is, when people who do not fit into those demographics sees that it is possible to make money and easily communicate,it drives interest, attention and people not longer within those 2 demographics to try and give it ago. Some may be successful in achieving what they want some may not.

As for the third demographic, lots of celebrities use twitter and i know people who actually just signup to follow and get the latest (semi truthful news as they put it) through twitter. They have a client on their fone and when a twitter comes from kevin rudd, or oprah or whoever they check it, give it a read and get on with their lives never writing a tweet .. ever !

I wasnt a big fan before but after using it, i find it totally indispensable in connecting and finding out what is going on. Hell i clicked on this link through a twitter tweet from @newsycombinator :P

</comment><comment><USER24> I'd put a third category of people in your list.

There are people who have a lot of followers due to them having some form of celebrity. People like Jeff Atwood have talked about how due to their large number of followers they are able to get very high quality answers to questions that they have.

For some one just joining Twitter who doesn't have a "name" in the industry this type of question and answer usage is alot less useful.

<comment><USER25> I remember when Guy Kawasaki started with twitter ("god help me, I am on Twitter" or something like that - he had no idea, like nobody else had). Now he has 125,431 followers and apparently the ability to "kawaski" a site (as I learned from tweetingtoohard).

I think with > 100000 it really becomes a different game. A friend of mine would buy any CD that Veronica Belmont recommends in her Twitter stream. She has > 600000 followers. That is an economic factor.

</comment></comment><comment><USER26> I was having this discussion with a friend last night...

Like you, I have struggled to find personal relevance with the social aspects of the service. My friend pointed out to me that the recent mainstream growth that Twitter has been going through is starting to create a lot of services that lay outside the two demographics you mention. The one that I found most interesting was local businesses (movie theaters, coffee shops, restaurants) tweeting about day only or hour only specials etc.

If you start to think about the Twitter service outside the bounds of social networking there is a lot of potential value that is just starting to be discovered.

</comment><comment><USER27> Just think of it as micro-blogging...all the admin is handled for you, so it's an easy way to post a simple thought/question/interesting link. I don't use it much either, but I've overcome my initial skepticism.

</comment><comment><USER28> Maybe it's simpler to group the population like

1) People who find Twitter fun/useful & like it

2) People who don't

Both groups are OK.

"Twitter is what you make out of it" - Guy kawasaki

</comment><comment><USER29> Twitter is for the type of person who values simple communication. I use twitter at work and after or during long meetings you can see instant feedback on the meeting. Also its nice to have these simple communcations cause instead of being long emails or long conversations its like the short water cooler type things.

You don't have to 'get' twitter, if you don't it means either your friends and family don't use it or your just a very introverted person.

</comment><comment><USER30> Twitter is a platform upon which social connections can be built and maintained. It's a very flexible tool for working within that social domain. It somehow gets even more compelling when you and all your actual real-world friends use it via SMS. If you are concerned with the social aspect of life and if your friends are too there will eventually be a memetic pull towards its use.

</comment><comment><USER25> Have you actually tried it? I don't really understand the "I don't have the time" argument, how much time does it take to type 140 characters?

Also, you could set something up to tweet automatically, just for fun.

The nice thing about twitter is that it is quite forgiving. You don't have to read everything, and you don't have to be always on.

<comment><USER31> _how much time does it take to type 140 characters?_

If you want to say something thoughtful and not generate noise into the tweetsphere, it takes a long time and a lot of tries to express your thought intelligently in 140 characters. At least, it does for me. I agree with you, however, that he should try it. Twitter is one of those things that are hard to explain because of their simplicity.

</comment></comment><comment><USER32> i fall into the 1st demographic and I don't use my twitter account at all. I originally got it so that I could follow the Kogi BBQ truck but got annoyed at not always seeing what I want(seeing irrelevant @ replies). Here's what I would use it for

Very small group of friends (less than 5 or so) talking. Too many friends becomes Facebook and its news feed.

OR

Following certain news that updates frequently such as current surf reports, current traffic speed on a specific street, current location of something, etc.

I say OR because you should only do one or the other since (at least I can't figure it out) there is no filtering on Twitter. Therefore, following too many things becomes incredibly impractical. At the same time, these status updates of things that update frequently can just as easily be accomplished via RSS feeds, especially since there is no communication back to whatever you're following.

<comment><USER33> > I say OR because you should only do one or the other since (at least I can't > figure it out) there is no filtering on Twitter. Therefore, following too > many things becomes incredibly impractical.

There are clients that do provide this functionality.

</comment></comment><comment><USER34> If rss is not lost on you, then neither is twitter - it's just smaller.

It's a good way to keep up with what people in your field are working on, or what they're consuming that might influence their work in the future. If someone "over-tweets" it's easy to not follow them.

</comment><comment><USER35> I think an acceptable twitter strategy is to read your tweets once or twice a day. Perhaps it defeats the point of it but it's a way to manage the tweet- overflow.

</comment><comment><USER36> I just check in during builds or on a walk, it really doesnt take a lot of time to keep up. That is the beauty of twitter aggregating all the content you want.

</comment><comment><USER37> you know, those are such generic demographics that you could apply them to any communication medium.

i can easily imagine people saying the same things about email, the internet, instant messaging, etc.

</comment><comment><USER38> Neither do I. I'm just occupied with a lot of other things.</comment>


Ask HN: How/Where can I find a part-time gig so I can work more on my startup? - <AUTHOR>

I currently hold a full-time day job in San Diego. I'd like to move up to the bay area soon and find a part-time programming gig there so I can work longer hours on my startup idea. Ideally something that requires no more than 20 hours a week.
I'm on an H-1 visa and have a valid EAD card (based on a pending GC process) to take up part-time jobs. Money is less of a concern to me. I just need a PT position to stay legal.
I've been working far too long in the little spare time I have, sacrificing my social life in the process for more than an year now. I think I've developed something respectable in that time and learned the initial ropes to risk taking a more committed plunge now.
My coding skills are centered around C and Ruby on Rails/CSS/Javascript.
Any suggestions? How/where can I look? Let me add that I am looking on my own (since some smart asses will I'm sure assume I'm an idiot to not google) but sometimes you're just not aware of a site or a job board. <comment><USER2> Part time programming work in Silicon Valley is hard to come by even when the economy is good. I'm not sure why exactly, but people here treat employment as an all or nothing proposition. I found it much easier to do random short-term and part-time contracts in Boston.

However, there are some niches where companies are more likely to hire part- time contractors: systems administration, "creatives" (i.e. flash) and recently, iPhone programmers. Thus, if you can stomach doing systems-y Rails stuff, I would could check in with the Rails hosting places. EngineYard & Heroku come to mind. I know people in both crews and they seem like they might be amenable to a part time thing if you're good. Also, Twitter contacted me about a systems position last week and the guy on the phone hinted that they may also be looking for full or part time Rails contractors.

Good luck!

</comment><comment><USER3> Part-time programming work is reputedly rare, though no one could tell me why.

Nonetheless, I fell into a part-time programming job once (they contacted me), and I found it tended to take over my thoughts - as programming tends to.

Does it have to be a _programming_ part-time job? It might work better for you to have a non-intellectual "day job", perhaps a physical one, or a social one, or just a really brain-dead one. e.g. A housemate had the job of changing tapes of a mainframe overnight (or something like that).

University job boards are a great way to find part-time work (though usually only for students).

<comment><USER4> I'd like to second this thought -- on each of the occasions that my thoughts turned to "hey, I can just do a little bit of paid development work part-time while I work on my own stuff!", that "part-time" gig somehow managed to take over my entire day/week. And so all that extra time I had imagined I would be spending productively working on my own stuff mysteriously evaporated, because my paid work was taking up all of my headspace.

"Brain-dead" work, on the other hand, tends to make me _more_ productive when I sit down to design or develop something. So there's probably a continuum effect here.

My recommendation to the original poster is to find the _easiest_ and most menial job that still meets the requirements of your visa, whatever that may be.

</comment></comment><comment><USER5> a) Talk to your friends.

b) Great involved with an open source project, which will give others experience working with you so they can recommend you into a position

c) <http://jobs.37signals.com/>

d) Call Ruby/Rails development companies w/ good code & tests ready to show

e) I don't know if this is ethical or even legal, but you could find a partner and ask them to pay you minimum wage to solidify your part-time requirement

f) Get creative. Come on man, you're a Ruby guy!

<comment><AUTHOR> Open source will just cut into the already minuscule amount of time I have working a day job and on the startup nights and weekends.

I'm going to look more into RoR dev companies, hosting companies, CL, and a few other job boards.

<comment><USER5> helping with some open source stuff doesn't take as much time as you'd think.

</comment></comment></comment><comment><AUTHOR> I only know dice.com where PT jobs sometimes show up.

What are job boards that cater towards part-time gigs? Also, if someone on HN knows of a startup or are looking to hire themselves, I'd be happy to send you my resume.

</comment><comment><USER6> I hate to suggest this, but I've had friends who've had a lot of luck with _cough_ Linked In _cough_ put you email address somewhere easy to read so potential leads do have to jump through any hoops when trying to contact you.

</comment><comment><USER7> Sorry to hijack the discussion. But I was wondering, why do you need a part- time job to stay legal? Doesn't EAD allow you to work just on your startup and still be in legal presence?

<comment><AUTHOR> AFAIK, no, I don't think you can work for yourself.

<comment><USER7> I might be wrong, but I believe you can. Im talking about EAD obtained through a pending GC process. I guess, the caveat is you need to pay yourself some salary and your role in startup has to be similar to the one you applied with. Even with EAD obtained thru F-1, I have heard lot of people working on thier startup without working anywhere else.

Im sure you must have looked already, but might be worth checking on the rules. And also post them here :)

<comment><AUTHOR> Huh, that's interesting (and new to me). I think the caveat might be a thorn -- if that is true, and if you have to pay yourself a salary similar to or in the same pay scale as the position, then I'm out of luck :)

I'll look around and see what I can dig up on this.

<comment><USER8> Nothing a little bit of good old fashion American financial wizardry can't solve.

Take a $60k cash advance out from a credit card (or other source). Next, invest $60k into your start up. Finally, pay yourself $60k, and use that to pay off the credit card.

<comment><USER9> You forgot a step: Lose about 20% in credit card fees, employment taxes, and income taxes.

Still might be worth it, though.

<comment><USER8> American financial wizardry is all about forgetting steps.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> They post a lot of jobs on craigslist, but be aware that employment posts in silicon valley is down 55% from last year

<comment><USER11> Doesn't _necessarily_ mean there are 55% fewer job openings. Could mean that jobs are getting filled before they make it to Craigslist.

<comment><USER10> I think this is the article I was thinking of... [http://career- resources.dice.com/it-job-market/2008-2009/sil...](http://career- resources.dice.com/it-job-market/2008-2009/siliconvalley-2009.shtml) ... the bottom line is the market favors employers much more now than last year

</comment></comment></comment><comment><USER12> how about being a freelancer, will that violate the visa requirement for part time job?

if you're talking about bay area, i'd start with craigslist.

</comment><comment><USER13> [http://lmgtfy.com/?q=part+time+jobs+in+san+diego&l=1](http://lmgtfy.com/?q=part+time+jobs+in+san+diego&l=1)</comment>


Firms face £17m fine if they fail to protect against hackers - <AUTHOR> http://www.bbc.co.uk/news/business-40857219 <comment><USER2> Related: "Message encryption a problem - Rudd" [http://www.bbc.com/news/technology-40788180](http://www.bbc.com/news/technology-40788180)

It looks like the UK government is totally illogical with regards to tech. If you cannot use hard encryption, how are you supposed to defend yourself against hackers?</comment>


Show HN: Cheapest way to buy IOTA - <AUTHOR> http://iotabuy.kowalski.gd/ <comment><USER2> Hey thanks a lot for making this! I'm very much looking forward to the automation of the "Machine Economy" and as a seasoned Computer Scientist, the Tangle looks to have solved many BTC issues for such high-throughput low- latency transactions (that can later graft onto the greater Tangle)</comment>


New social media code gives thumbs down to Facebook 'likes' - <AUTHOR> https://www.thetimes.co.uk/article/social-media-new-code-stops-children-clicking-likes-on-facebook-9cf3jw3wk <comment><AUTHOR> I've submitted with original title, but a preferred one might be:

UK watchdog imposes conditions on tech company treatment of U18s

Which is a paraphrasing of the second paragraph.</comment>


SoftBank's $750M Investment in GoPuff - <AUTHOR> https://www.theinformation.com/articles/softbanks-secret-750-million-investment-in-gopuff <comment><USER2> So there exists a startup that wants to deliver junk to your door because of reasons? This is a $0.7 BILLION funding round and it has got to be SoftBank that would invest in this unprofitable scam.

After the WeWork catastrophe I thought this would teach Softbank a lesson on worthy investments. However, they go for rolling the dice at nonsense like this. There are actually better companies worth investing in rather than this garbage.

They will GoBust according to my machine-learning crystal ball of profitability.

</comment><comment><USER3> "Go Puff" seems like a good description of how SoftBank's investments tend to go these days.</comment>


Ask HN: Is Electron really that bad for desktop apps? - <AUTHOR> I've been thinking of making a desktop app, but I keep hearing all this chatter about how Electron is really hard on memory. On the other hand, I know webdev, and learning C++ to make a native webapp seems like a steep learning curve (say by using something like Qt). Not only would I have to make different versions of the app for different operating systems, but I would also have to style the app using C++ which seems like a nightmare. CSS/js styling is so nice in comparison.<p>Is Electron really that bad? If so, are there any good alternatives that solve the two issues I mention above? <comment><USER3> > CSS/js styling is so nice in comparison.

This is half the problem with Electron apps. I know perhaps Windows users are used to the random bullshit UI every developer comes up with (heck even Microsoft between it's own different software), but macOS users generally get very consistent UI's from native applications. Whatever you create using CSS is _not_ going to fit in with that. If you need your app to be some special snowflake of UI design to stand out, it sounds like the actual functionality of it is commonplace or marginally different at best.

Also consider usability/accessibility. A native (i.e. Cocoa) macOS app gets _lots_ of accessibility features 'for free'. I've heard it's _possible_ to provide some/all of the same via Electron, but that its more work, and it's not done by default because it hurts performance _even more_ than regular Electron apps.

Your argument about your reasons is literally the argument people use _against_ the concept of Electron. "I want to do this, but I dont know how.. can I take a giant shortcut, and expect no repercussions?".

Electron is like those old Road Runner cartoons, where Wile E Coyote orders a "DIY Rocket" from ACME Corp, and sure enough, blows himself up.

If you know web dev, make a web app. If you want to make a native app, learn C/C++/Swift/ObjC/Java whatever.

Edit: I will clarify this with context. I _do not_ write native applications. I have written a very quick (like, ~1-2 days total dev time) Cordova/PhoneGap app using similar tech, as an internal data-capture solution for people on a project (at the time, Safari on iOS didn't allow browsers to upload photos, and we needed to capture a lot of images quickly from our team on location, so I wrote a simple phone gap app and backend server, ran it from my laptop and installed the iOS apps from my laptop - it was _never_ intended to be distributed)

So, that is _one_ situation where Electron-type apps might be acceptable - <USER2> you need to do something _quickly_ for an internal project, where a native browser doesn't give you the API, but Electron does. But Thats a lot of qualifiers, and you wouldn't be asking about it here if that was your intention, I imagine.

</comment><comment><USER4> Depends.

I've downloaded a fair number of Electron apps, and ultimately deleted or aborted the download of most of them. VSC is the one that currently survives.

If it's something that _needs_ most of a browser and HTML - like an email client that cropped up as a Show HN recently, or a client for a wholly online service, Electron may be the right choice.

If it's something more trivial like a notepad, reminder, or timer, Electron is just needlessly making it unfriendly thanks to start time, and memory load. Multiple MBs shouldn't be necessary for a timer or calculator but Electron will make that so.

You may say that we have lots of memory these days, and we do. But I run lots of things these days, and if I have half a dozen such apps running in background I basically have half a dozen instances of Chrome. That's quite an extra load on memory and start times. It's also going to be one of the early casualties if my (or family tech support) laptop is starting to run low on memory.

Last, I think there is something to be said for Electron as an early version while testing, especially while still exploring UI and feature changes as you can focus on that not platform issues. Once you know _what_ is needed, 9 times out of 10, give them a proper native program.

<comment><USER3> > If it's something that needs most of a browser and HTML - like an email > client that cropped up as a Show HN recently, or a client for a wholly > online service, Electron may be the right choice.

I disagree. These are cases where it's _especially_ bad to use a HTML view as the application UI.

If your application is essentially a HTML page, and it's meant to render content from a foreign source, which is also HTML, JavaScript, what have you - how do you do that? An IFRAME?

You _know_ that Electron apps have _lower_ security sandboxing than a regular web browser _right_? Who in their right mind would use a web browser to render a html page as the UI of a web browser, and hope that the foreign source page doesn't break out of it's rendered context, to influence the appearance or routines of the 'browser' that loaded it?

</comment></comment><comment><USER5> I think it's important to consider what your program is going to do. Discord, for example, uses Electron, and I'm perfectly happy with it (as are most of the millions of others who use it). It's a product with a lot of functionality and it makes sense for it to have slower startup times, higher distribution size, and more memory usage. But if you're planning to make a calculator, then Electron probably isn't the right tool.

That being said, I think the styling thing is a really important point that is often undervalued. I've written UIs in GTK, Qt, and Swing, and perhaps this is close-minded but I honestly can't take anyone who says that they're just as easy as HTML/CSS seriously. I mean, literally just look at how many beautiful websites are out there, and then how many beautiful, not just functional, native programs there are (in my opinion, very few). UX/UI is important, and I think not having to pull your hair out every time you want to move a button to the right 3 pixels and give it a prettier border is a big plus for Electron.

<comment><USER6> Discord, Slack and other chat apps are the perfect example of when not to use electron. They should just be webapps.

<comment><USER7> In fact, I think The Discord desktop client versus Ripcord[0] illustrates nicely how much better a native solution can run.

[0] [https://cancel.fm/ripcord/](https://cancel.fm/ripcord/)

</comment></comment></comment><comment><USER8> As a user, I can't stand electron based apps. I want normal ass UI on my programs. In fact, on my desktop, nothing is an app, it's a program... Make your thing a program.

<comment><USER9> Your distinction between an app (short for "application") and program is highly confusing.

<comment><USER8> Exactly

</comment></comment></comment><comment><USER10> Firtstly writing Qt desktop apps in Python is pretty popular so we don't need to stick with C++ to write Qt app.

It is hard to understand people cares about memory useage when desktops nowadays have a lot of RAM. What average Electron apps annoys me is their constant high CPU load. Some apps take ~10% of CPU load all the time.

I think Electron itself is fine. Look at VS Code. It is fast even though it is written in Electron. The real problem is the bad habits of average Electron apps developers. The Electron devs usually come from Web where users can just press a refresh button or close it when browsers are slow. They don't care about optimizing stuff.

<comment><USER11> > It is hard to understand people cares about memory useage when desktops > nowadays have a lot of RAM. What average Electron apps annoys me is their > constant high CPU load. Some apps take ~10% of CPU load all the time.

The problem with the RAM consumption is not when you run a single Electron app in isolation, it's when you try and run a few of them and suddenly you're running hundreds of Chrome threads and you've used 8GB RAM.

</comment></comment><comment><USER12> React native for desktop has my attention.

[https://proton-native.js.org/#/](https://proton-native.js.org/#/)

</comment><comment><USER13> I've made desktop apps with electron and you can definitely make a decent one but it isn't going to be as fast. If it's a simple program it's not bad but if you're going to do any complicated computation you'll wish you had gone native. On the other hand, if it's not a complicated app, some people are going to wonder why this simple app is taking so many resources.

How about a compromise. Instead of c++ why not learn Python instead and use pyside QT. This was actually what I ended up doing coming from webdev. You don't get the steep learning curve and can get a lot of the benefits from native apps. It won't be as fast as C++ but you won't have the overhead of electron. And besides most apps probably aren't going to need to brute performance of C++.

</comment><comment><USER14> I think it depends who your audience is. Everyone I work with is more than happy to install the Slack electron app, but none of them read HN.

If your intended audience is a 'Show HN' expect to be damned for it. If your audience spans say Windows and Mac and are technical but perhaps less technical than HN readers it can be an easy way to extend your web app onto the desktop.

Also it might depend on whether your app needs to always run in the background or not. For example I use Pencil [0] for UX mockups, it doesn't bother me that it's an electron app because I only need it for a few days a month. However the persistent RAM use of Slack eventually annoyed me enough that I uninstalled it.

[0]: [http://pencil.evolus.vn/](http://pencil.evolus.vn/)

</comment><comment><USER15> Consider Chromium Embedded Framework, or Sciter. These too let you define your UI with JS/HTML/CSS, but you're not shipping a node.js server with your app, which makes your app much lighter.

<comment><USER6> In that case why not just make a webapp?

<comment><USER16> Because you can still have a "backend" hosted on the user's computer, it just doesn't have to be node.js, could be something more efficient or powerful or whatever is needed.

</comment></comment></comment><comment><USER17> No idea about Electron but I am used to desktop application especially in Qt, With Qt Quick (QML + Javascript) I have been able to make a cross platform application that runs on all desktop (Linux, Windows, MacOS) and all mobile (Android, iOS). Yes it requires some effort but it makes a nice result that seems native on all platform.

</comment><comment><USER18> I've built a few Electron apps now, one of which I use quite a bit to track ticket prices in secondary markets.

It's a great prototyping environment, and people have built businesses around Electron apps (VSCode is built on Electron, I believe). The apps I've built are big, kinda slow, and as others have mentioned tend to eat memory.

<comment><USER19> I'm assuming if you are tracking ticket prices it needs to be connected to the internet, in that case, why do you need an app instead of just a website?

</comment></comment><comment><USER20> The evonomics of it are still good but at the same time you can use chromium as a web view and often that's better. Where I work rather than electron we use a chromium based webview with a native windows desktop rather than electron.

</comment><comment><USER21> The first question I'd ask is do you really need to be cross platform? Because if not you can save yourself a lot of pain by avoiding C++ and Qt and choosing what's appropriate for the platform (C# on Windows, Swift on macOS).</comment>


Freakonomics: Asia's Millionaires - The Millionaire Not Next Door - <AUTHOR> http://freakonomics.blogs.nytimes.com/2010/06/28/the-millionaire-not-next-door/

<comment><USER2> The article essentially observes that millionaires in Asia now collectively control more money than millionaires in Europe. So there is a lot of economic activity going on and some people are rapidly getting rich. But the average asian citizen still has a much lower salary than a westerner, and public infrastructure is pathetic. A disproportionate amount of wealth is going to those on top of the economic food chain, and that's going to stunt their development.

</comment><comment><USER3> The founder's gave us a very decentralized system and a very minimal federal government. Needless to say, this has greatly eroded.

The asian economies have become so successful because they have been adopting capitalism. We should be glad.

Our problems are of our own making. We've been incenting people to consume rather than to produce and to go into debt to do it. And government at all levels is borrowing and spending in the mistaken belief that consumption is economic success. It isn't.

We need to start dealing with reality.

<comment><USER4> Once everyone is producing won't someone need to consume the production?

</comment></comment><comment><USER5> The NYT link is just a short snippet doing summary. This is a better link: [http://www.npr.org/blogs/money/2010/06/23/128047942/more- mon...](http://www.npr.org/blogs/money/2010/06/23/128047942/more-money-moving- east-asia-s-wealthiest-rise-above-europe-s-for-the-first-time)</comment>


Ask HN: Should I take an idea to the chief executive? - <AUTHOR> I have a suggestion which could add a six-or-seven-figure income stream to a business I've not long joined. I'm a lowly worker, on the first rung of management, and the company employs thousands.
I'm considering whether to email the idea to the chief executive. I just don't want to see it lost in layers of management and I'm not sure who else can make it happen.
I lack self-confidence so I'm worried about overstepping the mark and I could do with some reassurance that it's not a rash, ill-judged decision. What do think? Is taking an idea to the top a no-no? <comment><USER2> How receptive your CEO would be to an idea from an unknown employee is very much dependent on your company's culture and your CEO's personality. I think that the main risk would be not from the CEO (who would probably just ignore your idea if they thought it was worthless), but from your manager, who might be upset that you didn't get their advice or approval before approaching the CEO. It would be hard for someone who isn't familiar with your company's culture and politics to give you useful advice, so you might get a better answer by asking a co-worker in your company who has been around longer than you have (and who you trust to be discreet).

Also, a six-figure income stream may not be worth the trouble for a business that's big enough to employ thousands of people (I'm guessing at least hundreds of millions of dollars in revenue). It may seem like a lot of money to you, but it could be a drop in the bucket for the company and a distraction from their core lines of business.

<comment><AUTHOR> Thanks for your sage words. It's not massive money in the grand picture, I know, but neither is it insignificant in a rapidly declining industry, such as print journalism. However, I glady take your points aboard and I'm glad I asked HN!

</comment></comment><comment><USER3> Sleep on it for a few days. Think about your motivations. Consider how complete is your understanding of the particular business and industry. Ask yourself if the prospect of six figure savings is a big enough number to deserve the CEO 's attention or if it is something rightly delegated to a lower level [e.g. it's rounding error at big companies].

Finally, the fact that you are asking indicates unfamiliarity with the existing corporate culture...unsurprisingly for a recent hire. My advice is to watch and learn and figure out why things are done the way they are done and what forces are really in play.

Good luck.

<comment><AUTHOR> Thanks for your thoughts, sound advice. It's not something I want to jump into. You are likely right about trying to target the "right" person.

</comment></comment><comment><USER4> So because you have no trust at all in the abilities of your direct superiors you want to mail the big boss?

Depends on him and your superiors, but generally it's a very bad idea. You always go through your direct superior first.

If your idea is "lost in the layers" you can still cut through the layers, if you really must.

Going to the big boss directly will probably result in two things: he will dismiss it without a second thought. And your direct superior will not be happy.

And btw, six or seven figures are nice, but that's not automatically a good idea, even if your estimate was correct.

<comment><AUTHOR> Thanks for your thoughts, you make good points. I'll likely play it safe and ask my manager to send it up the chain to the appropriate person.

It's not so much about having no trust in my superiors. I work at a newspaper company but in editorial and the idea is on the business side of the "church and state" divide.

It's an ailing industry, which could do with any revenue stream it can get its hands on, and I just want to help where I can.

</comment></comment><comment><USER5> Why exactly are you not running with this idea yourself?

<comment><AUTHOR> In a nutshell: I can't. Some say there's no such word but I _can 't_ magic up the infrastructure needed. The firm I work for is hundreds of years old and it's an idea that only such an institution could implement. Thanks for your question though, it gives me something to think about, namely how I could perhaps adapt the idea. Who knows? Maybe there is a start-up in there somewhere.

<comment><USER5> There is no such word. If it's capital intensive you may need to convince some VCs to front a decent amount of money but you should investigate all your options.</comment></comment></comment>


Show HN: Lxinitd an init system for containers - <AUTHOR> http://lxinitd.tp23.org/ <comment><AUTHOR> lxinitd is a simple /sbin/init for LXC containers. Its more simple even than systemV, it has just one boot script /etc/rc.local. The boot script can spawn and respawn, but has no way to write to the filesystem.

I've been using it for LXC containers with nginx and xtomp, to replace busybox so I end up with a "full OS" container that does not have even bash, no code runtimes at all.

Also I've got a full Ubuntu server running in an LXC container, pulled out systemd, and boot just the servers I want. That is a build server, so I can compile C code with an Ubuntu provided tool chain installed with debs. However, I don't have systemd or sytemd-journald, systemd-networkd systemd- resolved, blah, blah, blah. It seems to work, I end up with an Ubuntu that looks like this...

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 208 4 ? Ss 19:42 0:00 /sbin/init root 28 0.0 0.0 26072 2456 ? S 19:42 0:00 /usr/sbin/cron -f root 30 0.0 0.0 65516 5580 ? S 19:42 0:00 /usr/sbin/sshd -D syslog 31 0.0 0.0 256400 2752 ? Ssl 19:42 0:00 /usr/sbin/rsyslogd

Interested in a bit of feedback, I've not dabbled with Linux init before. I'm wondering if ripping out stystemd is really as "safe" as it seems to be.

N.B. just for containers, my container host is Ubuntu normal.</comment>


Datastore API (beta) - <AUTHOR> https://www.dropbox.com/developers/datastore

<comment><USER2> The biggest problem right now with online file storage services (sorry, I meant "The Cloud") is that while they all do basically the same stuff, there's no standard protocol for accessing them. It's a bit like if every website used a custom protocol instead of HTTP, and web browser vendors had to explicitly collaborate with each web site (or use the website's SDK) in order to be able to retrieve content.

Imagine this: All the major players in the space (Dropbox, Box, Google Drive, Skydrive, Sugarsync etc.) as well as app developers got together and came up with a standard way of doing this that makes it possible to use a single protocol & API for all online storage providers. I see this being a good thing for everyone - users can choose whatever service they want, app developers can easily provide their customers with a ton of options, and storage providers don't have to explicitly produce their own SDK or court developers to do integration with their service. We did have WebDAV, but that doesn't seem to be widely adopted by any of the major players.

I've been facing this problem myself with my own app; it's a lot of work to support all the major services and this is really just plumbing stuff that everyone would rather be taken care of so they can focus on the more important stuff. I had a meeting with Box recently where I proposed the idea of an open source framework for iOS which would provide a common native API that abstracts over all the different REST APIs used by different storage providers. The people I spoke to seemed quite open to the idea and agreed that it would be useful. I don't think a library like this would necessary be considered a bad thing by any of the major players, as it evens out the playing field and makes it easy to support different services.

If you're interested in taking part and/or using such an API in your iOS app, I'd love to hear your thoughts on the matter. I have some code already (which I haven't released yet) and am looking to clean up the API a bit, but I think it would be useful to a lot of developers.

<comment><USER3> Big players aren't interested in anything that reduces lock-in. Seamless integration is one of the keypoints they have to get you to use their services.

Obligatory presentation by Bruce Schneier on the online feudalism: [http://www.infoq.com/presentations/cloud- security](http://www.infoq.com/presentations/cloud-security)

<comment><USER2> I found Box to be the opposite of this. While I obviously can't speak on their behalf, and I was discussing the issue with their developer relations people (not senior executives), they said they didn't see a problem with this idea.

</comment></comment></comment><comment><USER4> I'd like to coin a modern update of Zawinski's Law[1]:

        Every software company attempts to expand until it
        offers a cloud-based platform API. Those companies
        which cannot do so are replaced by ones which do.

[1]: [http://en.wikipedia.org/wiki/Jamie_Zawinski#Zawinski.27s_law...](http://en.wikipedia.org/wiki/Jamie_Zawinski#Zawinski.27s_law_of_software_envelopment)

</comment><comment><USER5> Something I don't get about Dropbox API: Why can't I just throw URLs at it?

If a user wants to save <thing at URL>, I have to pull it to my server and push it into Dropbox. Dropbox could just have grabbed it directly and in many cases, won't even have to thanks, to system-wide caching.

(This is based on the last time I looked at the API; maybe this is supported now, but I don't think so.)

<comment><USER6> You're describing the Saver Drop-In: [https://www.dropbox.com/developers/dropins/saver](https://www.dropbox.com/developers/dropins/saver)

<comment><USER7> Can the Saver Drop-In be used with arbitrary third-party URLs? To me this is what was being described, so if not, then no, it's not describing the Saver Drop-In.

<comment><USER8> Yes, you can provide arbitrary URLs to the Saver and our (Dropbox's) servers will download them, assuming they are publicly available.

(Note: I am an engineer at Dropbox and worked on this product.)

<comment><USER7> Thanks. Off topic but slightly related if I'm going to rely on your service as a developer: as an engineer at Dropbox, can you tell me why I am seeing random photos that are not mine in my dropbox Photos folder? And does this mean that other people get to see my random photos? Edit: only on iOS. And maybe it's not a "folder" per se, it's the second tab from the left at the bottom of the screen.

<comment><USER9> That photos tab shows you photos from anywhere in your Dropbox account, so these photos may be from shared folders you're a member of. (Likewise, other people can only see your photos if you shared them with them.) Another thing that may happen is someone "camera uploaded" their photos to your account (e.g., by plugging into your computer and choosing to import photos when Dropbox asked.) If you're still not sure where they're coming from, you should open a ticket: [https://www.dropbox.com/support/s/92/3201098/c/2](https://www.dropbox.com/support/s/92/3201098/c/2)

<comment><USER7> Thanks, very informative answer. I think they must be from a certain shared folder I have access to, which would explain it. Quite a relief, actually.

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Such an awesome idea. However, in light of the recent events the first thing to come up in my mind when I see "datastore" and a US corporation is "PRISM integration". I'd like to see proper encryption of Dropbox as the next feature, so that we - innocent users- are not uploading our data to the US government.

<comment><USER11> I combine dropbox with TrueCrypt for sensitive stuff. For me, that's just digital copies of important documents.

<comment><USER12> So are you just syncing entire truecrypt .tc files to Dropbox? Does that work incrementally or does the entire .tc file have to get resent every time you modify a file within?

<comment><USER13> The entire file is resent.

<comment><USER14> No, only changed blocks are resent. The scattering effect of Truecrypt encryption plus the relatively large blocksize does amplify the number of changed blocks somewhat.

Previous investigation and results:

[http://news.ycombinator.com/item?id=2546626](http://news.ycombinator.com/item?id=2546626)

</comment></comment></comment></comment></comment><comment><USER15> After quickly clicking through the api documentation I don't understand why I would use this over a hosted NoSql database like mongohq. I still like having additional options though.

<comment><USER16> Off-line access.

</comment></comment><comment><USER17> "List – A special value that can contain other values, though not other lists."

[https://www.dropbox.com/developers/datastore/tutorial/ios#re...](https://www.dropbox.com/developers/datastore/tutorial/ios#records)

Seems like a very significant limitation. No mechanism for storing hierarchical data structures. For example, this is certainly not capable of storing arbitrary JSON data as a Record.

<comment><USER18> There's also limit on Postgres hstore and arrays. No nested sturcture.

</comment></comment><comment><USER19> As someone who has been playing around with Parse and Firebase SDKs (on Android), this seems to be the first one that offers full 2-way sync. I haven't actually used it yet but it seems that way due to the presence of conflict resolution [1]. I'm personally really excited about that for mobile side-projects and MVPs.

Parse has an offline cache, that only caches query results and not actual objects. So any local saves/updates are not reflected until you get network access again, unless you manually implement your own cache.

Firebase is better at handling realtime changes, but is lacking in any realtime capabilities at the moment. Also Firebase's mobile authentication SDK still isn't released yet so no way to handle users yet either.

[1]: [https://www.dropbox.com/developers/datastore/tutorial/androi...](https://www.dropbox.com/developers/datastore/tutorial/android#conflicts)

<comment><USER20> Yeah, the Datastores API does two-way synchronization. Also, offline caches are done for you and offline changes are propagated (with conflict resolution) when the internet comes back up.

</comment></comment><comment><USER21> What app.net wanted to accomplish.

<comment><USER22> At first glance it also looks like WinFS for the Cloud.

</comment></comment><comment><USER23> this is basically what iCloud was supposed to be.

</comment><comment><USER14> So now app developers have a choice: they can use iCloud or Dropbox to manage distributed app state. Any iOS app developers (I'm not one) care to compare & contrast the two options?

It looks like Dropbox may be using Operational Transformation [0] to merge changes to lists:

 _Lists are special field values. They contain an ordered list of other values, though not other lists. Lists can be manipulated via four list operations: put (i.e. replace), move, insert, and delete. These list operations allow Dropbox to handle merging changes to the structure of the list automatically._ [1]

iCloud, on the other hand, uses the coarser, state-centric approach of whole document versioning. [2] (Edit: okay, key-value property versioning is also available.)

But iCloud lets the app control conflict resolution, while the Dropbox Datastore API only lets you choose from a predefined set of conflict resolution strategies. [3]

Which approach provides greater value to the app developer? Has Dropbox realized here that developers are just not comfortable implementing a custom merge strategy for entire documents, and not having to worry about this is worth some loss of control?

[0] [http://en.wikipedia.org/wiki/Operational_transformation](http://en.wikipedia.org/wiki/Operational_transformation)

[1] [https://www.dropbox.com/developers/datastore/tutorial/ios#re...](https://www.dropbox.com/developers/datastore/tutorial/ios#records)

[2] [http://developer.apple.com/library/ios/#documentation/DataMa...](http://developer.apple.com/library/ios/#documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/ResolveVersionConflicts/ResolveVersionConflicts.html)

[3] [https://www.dropbox.com/developers/datastore/tutorial/ios#co...](https://www.dropbox.com/developers/datastore/tutorial/ios#conflicts)

<comment><USER24> Not answering your question, but developers can also use [http://parse.com](http://parse.com) or similar.

</comment></comment><comment><USER25> For the iOS library specifically, I wonder if it would be possible to build a library that would (nearly) automatically map a core data store in to this Datastore API. If so, including such functionality would make the library a no-brainer for many.

<comment><USER26> I think with NSIncrementalStore it would be totally doable, and a great alternative to Core Data Sync.

</comment></comment><comment><USER27> are there any kind souls that could help please explain the difference between dropbox datastore, firebase and parse? thank you.

<comment><USER28> In comparison to firebase, this solves the offline sync problem, if your user is offline, you can still save to dropbox datastore locally, when you get a connection, it will automatically sync and take care of conflict resolution.

<comment><USER29> Firebase dev here. :-) Firebase does handle offline syncing / conflict resolution.

If you have a Firebase app open and you lose network connectivity, the app still continues to work fine and any modifications you make will be synced back to Firebase when you regain connectivity.

What we don't (quite yet) do is handle the case where you make changes, kill the app (without regaining network connectivity), restart the app, and then get network connectivity, but that's coming soon.

As for other differences, Dropbox Datastore seems to be tightly tied to Dropbox, so the end user for your app must have a Dropbox account (and if they want to collaborate with other users, those users must also have Dropbox accounts, etc.). So it's really for building apps on top of Dropbox.

Firebase and Parse are just generic backends, with no ties to other services, so your end users don't need anything to use your app.

As for differentiating Parse and Firebase, Firebase deals with data in real- time, pushing updates to apps as soon as data changes. Parse is a traditional request/response model, where your app has to explicitly "refresh" to get new data.

<comment><USER28> Thanks mike, I didn't realize firebase did offline syncing now!

</comment></comment></comment></comment><comment><USER30> Does anyone know of an OSS alternative to this similar to [http://helios.io/](http://helios.io/) that supports Android/iOS?

<comment><USER31> Couchbase Lite is an embedded JSON database with sync capability. It's Apache licensed and available for iOS and Android:

[https://github.com/couchbase/couchbase-lite- ios](https://github.com/couchbase/couchbase-lite-ios)

[https://github.com/couchbase/couchbase-lite- android](https://github.com/couchbase/couchbase-lite-android)

<comment><USER30> Thanks for the link to this library. It seems like I would still need to implement a lot of features like login, but it's a great start.

<comment><USER31> We ship with support for login with Mozilla Persona. Hope to have baked-in support for Facebook Connect soon. Of course you can use it with any auth you want, but you'll end up writing some code...

</comment></comment></comment></comment><comment><USER32> What is the long term vision here? Is the idea that consumers will have little apps here and there that will procedurally interact with the owner's data on Dropbox? Or, is Dropbox making a product along the lines of S3 so that backends can consider using it too? I guess given how expensive space is at this point, that's not really an option.

<comment><USER33> dhouston has said more than once that he wants dropbox to be the filesystem of the internet.

</comment></comment><comment><USER34> I wonder how Apple will react to @dropbox's new Datastore sync in the long run. Hopefully it won't pull the rug out a la IAP, UDID, OF, ...

<comment><USER35> I would rather they react positively by opening up their iCloud API for web application for third parties. Apple already has such in place as can be seen from their cloud apps at icloud.com.

<comment><USER36> Apple is a hardware company.

</comment></comment></comment><comment><USER37> So Dropbox is becoming a more-direct competitor with iCloud. Meh.

I'd rather they work on an end-to-end encryption system with a focus on ease of use.

<comment><USER13> Hacker News is a tiny audience. I don't see any business sense in focusing on features that 0.1% of users want.

<comment><USER38> Not to sound self-righteous, but the HN audience (or more plausibly, some subset within) has a high influence on what the rest of the world sees and wants.

Any Dropbox employees read HN?

</comment></comment></comment><comment><USER39> Grammar check: "These days, your app need to store and sync more than just files."

</comment><comment><USER40> Why would I use this over something like Parse?

<comment><USER30> I haven't looked into it but it may be cheaper. That being said, both Parse and Azure support more platforms than this offering. I think that even Firebase has an service in this space as well.</comment></comment>


Why buying advertising is so frustrating - <AUTHOR> http://positech.co.uk/cliffsblog/2015/06/27/why-buying-advertising-is-so-frustrating/

<comment><USER2> How true. Purchasing advertising of all kinds is a nightmare. If you haven't used a particular channel at least once, you will be treated shabbily and will definitely get taken advantage of. It's ridiculous.</comment>


Transitioning a Company to Remote - <AUTHOR> https://about.gitlab.com/company/culture/all-remote/transition/ <comment><USER2> GitLab employee, thanks for sharing this. People can also consider checking out this link to learn more about GitLab's All Remote culture. [https://about.gitlab.com/company/culture/all- remote/](https://about.gitlab.com/company/culture/all-remote/)</comment>


Dictionary union (PEP 584) is merged - <AUTHOR> https://github.com/python/cpython/pull/12088 <comment><USER2>
      {**d1, **d2}

is very natural if you also write javascript where their spread operator looks like:

      {...d1, ...d2}

<comment><AUTHOR> This is reason enough to upgrade from Python 2.7 if you are still on it. I use this convenience almost daily.

<comment><USER3> No it isn't.

<comment><USER4> One of the issues with Python 3 is that there isn't really one killer feature, it's countless little ones. Many believe 3.6 was the first release where they added up to enough of a benefit (though f-strings are a big help for many projects).

Regardless it no longer matters, the Python 2 ecosystem is now rotting as packages drop support. Every week I have to make one or two hot fixes somewhere to forcibly pin to an old version to fix something.

<comment><USER5> For me, proper handling and distinction of Unicode vs. binary data was a game changer. I don't know if that's related to my first language being non- English, but I remember it being really important to me and a strong reason why I made the switch years ago.

<comment><USER6> I used to work for a huge SEM business working with keywords in all languages of the world. No-brainer.

</comment></comment></comment></comment></comment></comment><comment><USER7> The PEP document describing the feature: [https://www.python.org/dev/peps/pep-0584/](https://www.python.org/dev/peps/pep-0584/)

<comment><USER8> > > Dict union will violate the Only One Way koan from the Zen.

> There is no such koan. "Only One Way" is a calumny about Python originating > long ago from the Perl community.

<comment><USER9> That ship had long sailed with string formatting anyways.

<comment><USER10> F-strings are the one obvious way to do string formatting. There may be other ways, for legacy backwards compatibility reasons, but f-strings are _the_ way to do string formatting.

<comment><USER11> I disagree. In logging for example, '%s' with the value as an argument to the logger is preferred because the formatting can be ignored if the log level is not sufficient to print.

<comment><USER10> Log formatting is a different problem than string formatting. With log formatting you pass the formatting arguments as function parameters, which is completely different from any other way you format strings.

<comment><USER12> I think you're getting downvoted because logging is basically doing:

        def log(fmt, *args):
            print(fmt % args)

Hardly a huge change.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> Fantastic. Especially glad they went with | over +, that's always felt like the natural way I've wanted to do this. Looking forward to more set-like operators in the future!

<comment><USER14> Thank goodness sanity prevailed on the operator!

We had a whole discussion on HN last time[1] about this, where I argued that dicts are logically subclasses of sets and therefore should share operators.

When I saw this headline I accepted my fate of typing the "wrong" operator from now on and liking Python just a tiny bit less for the inconsistency. So glad they reconsidered.

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

<comment><USER15> Guido stated his preference to | and the pep was changed.

</comment></comment></comment><comment><USER14> The PEP has this section:

> The new operators will have the same relationship to the dict.update method > as the list concatenate (+) and extend (+=) operators have to list.extend. > Note that this is somewhat different from the relationship that |/|= have > with set.update; the authors have determined that allowing the in-place > operator to accept a wider range of types (as list does) is a more useful > design, and that restricting the types of the binary operator's operands > (again, as list does) will help avoid silent errors caused by complicated > implicit type casting on both sides.

Would someone please explain what they mean with regard to being different from set.update, and what could lead to silent errors?

</comment><comment><USER16> I wouldn't have thought about dict unpacking as a solution either but once suggested it seems satisfactory and I don't see how adding a new operator is more discoverable or natural than just putting this method in a more prominent place in the documentation.

<comment><USER17> Guido himself said he had forgotten about this trick and since it's syntactic sugar, it does not respect dict subclasses or other mappings.

<comment><USER16> imo

      defaultdict(callback,{**a,**b})

is more readable than a | b without knowing that a or b are defaultdicts and having to reason about which default callback will be used

<comment><USER18> Note that a | b is already a disaster if you try to use subclasses of set. In python 2.7, iirc it would return a set of a's type but without calling the constructor. In python 3 it seems to return a set (not the type of a or the type of b).

<comment><USER19> Not sure about the set operator, but this operator is meant to handle subclasses better than the status quo.

</comment></comment></comment></comment></comment><comment><USER20> I wish there was a union operator for typing as well to replace `Union[str, int]` with just `[str|int]`.

<comment><USER21> PEP 604 (draft) proposes this:

      def f(list: List[int | str], param: int | None) -> float | str:
          pass

      f([1, "abc"], None)

[https://www.python.org/dev/peps/pep-0604/](https://www.python.org/dev/peps/pep-0604/)

</comment></comment><comment><USER22> Yay! I was wishing for this feature just a few days ago. It's somewhat analogous to how _sorted_ (since Python 2.4) frees us from having to tediously make copies of lists to sort them in place.

<comment><USER23> You can already do

       {**d1, **d2}

today for the same effect.

<comment><USER19> Here I was wondering what a dictionary union was, already having stumbled upon to it and used it.

Note that the method you show is slightly different for cases of dict subclasses.

The PEP notes the difference: [https://www.python.org/dev/peps/pep-0584/#d1-d2](https://www.python.org/dev/peps/pep-0584/#d1-d2).

</comment></comment></comment><comment><USER24> I haven't read the entire bug tracking thread, but it seems like people were mostly against it, and have been many times in the past.

What made decision makers change their mind and accept this change?

<comment> _-___________-_ Most of the bug tracking thread was just about whether `somedictsubclass() | somedictsubclass()` should be `dict()` or `somedictsubclass()`

The latter (returns `somedictsubclass`) would cause the `|` operator to rely on the `copy()` method from `dict` which would be the only case where an operator relies on a non-double-underscores method. Based on that, two core devs were against it. The core devs prevailed, and the behaviour will be the former (returns `dict`).

</comment></comment><comment><USER25> It seems that just using + as the operator was reject because it's: "Too specialised to be used as the default behavior."

What does that mean? It works for lists, obviously lists don't need to worry about duplicated values, but it's kind non-intuitive that + won't work for dicts. It think many people view dicts and lists as the same general type of data structure.

<comment><USER6> >> It think many people view dicts and lists as the same general type of data structure.

Is that a joke or are you from PHP world?

</comment></comment><comment><USER26> Python 2 Community: We are in hell, we have to stop working on everything to upgrade to Python 3, there is no straightforward way to upgrade, many of our python 2 libraries haven't been updated, and there are tons of little bugs that are hard to fix.

Python 3 Community: Look at thing cool dictionary merging thingy!

</comment><comment><USER27> What does this do on duplicate keys? Keep one? Take a predicate?

<comment><USER28> It keeps the one on the right. They explain it in the PEP: [https://www.python.org/dev/peps/pep-0584/](https://www.python.org/dev/peps/pep-0584/)

<comment><USER15> AKA Last one wins.

</comment></comment></comment><comment><USER29> Can't wait for Python 4k where we TOOWTDI all the old stuff.

</comment><comment><USER30> The problem with sprinkling operator overloading all over the place in non numerical use is that you as tje reader don't get the context hints provided by method names. I think this change is bad in the overall balance.

<comment><USER14> The best way to do dictionary union is already symbolic:

        {**d1, **d2}

This provides a clearer symbolic notation for dictionaries analogous to what's already available with sets. FWIW the pep discusses what this would look like as a method vs an operator:

[https://www.python.org/dev/peps/pep-0584/#use-a- method](https://www.python.org/dev/peps/pep-0584/#use-a-method)

<comment><USER30> The best way for in my view is .union(), the new syntax additions are too cryptic.

<comment><USER31> I agree. Back in the day when I used Ruby, I remember one of the arguments for Python being their belief that there should be one way to do things. Found one reference:

> There should be one-- and preferably only one --obvious way to do it.

[https://www.python.org/dev/peps/pep-0020/](https://www.python.org/dev/peps/pep-0020/)

<comment><USER10> There should be one _obvious_ way to do things. Not _one_ way to do things.

The operator is better than the dict unpacking-repacking trick, and will become the obvious way to do it.

</comment></comment></comment></comment></comment><comment><USER32> Nice

</comment><comment><USER33> FINALLY!</comment>


George Pell: cardinal found guilty of child sexual assault - <AUTHOR> https://www.theguardian.com/australia-news/2019/feb/26/cardinal-george-pell-vatican-treasurer-found-guilty-of-child-sexual-assault <comment><USER3> If you feel like you've heard this already in December and are unsure why it's in the news again, there was a media suppression order that prevented it from being reported in Australia, due to a second court case involving Pell that was due to start in April.

That case was dropped today due to insufficient evidence and the supression order is no longer in place, so the Australian media can now report freely.

</comment><comment><USER4> This is part of a much larger issue that seems to have no boundaries and exist pretty mouth everywhere: that authorities are uninterested in processing rape cases and bringing the perpetrators to justice. Time and time again they let the perpetrators' institutions handle this. The church. The university. The corporation. Why don't authorities subpoena records instead of letting these institutions destroy them? This is their whole reason for existence, after all. Is it because so often the victims are women and children who are thought of as less than by the police and other authorities? It's despicable that each case is not investigated. Most times even rape kits are not tested, let alone any other kind of investigation. We have given these authorities the power to investigate these crimes and yet they do nothing. It seems to be a worldwide problem too. Are children and women that worthless to the men in power that their rape doesn't deserve investigation, that they do not deserve justice?

</comment><comment><USER5> >His authority came from Rome, where he sat on a number of councils policing church doctrine. These were the years the Congregation for the Doctrine of the Faith worked up fresh hard teachings to revile homosexuals.

"Congregation for the Doctrine of the Faith" is the renamed Inquisition :

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

"With the exception of the Papal States, the institution of the Inquisition was abolished in the early 19th century, after the Napoleonic Wars in Europe and the Spanish American wars of independence in the Americas. The institution survived as part of the Roman Curia, but in 1908 it was renamed the "Supreme Sacred Congregation of the Holy Office". In 1965 it became the Congregation for the Doctrine of the Faith."

</comment><comment><USER6> What I find most interesting in recent findings is how millenias of beaurocratic development are completelly defenceless against current stage of technology.

For past couple centuries, Church created notion of "we are judge of ourselves" which most often either meant delegating case to far away place, which no interested party could visit, or by reloacting to another region with unlikely connection (and this connection was very unlikely, since Catholic Church keeps their own births, deaths and movement metrics, so those were far from random).

Right now, since everything is transparent and just few taps away, this method no longer works and Church is totally lost in how to deal with it. Senior members refute all responsibility either through long-hardened loyalty or - <USER2> some cases - to protect their own wrongdoings from coming out. That makes the matter even worse. Elderly age and resulting lack of will to change doesn't help the case either.

I think of it as a David vs Goliath fight, where Goliath is more than 2000 years of institutional experience and David is a kid with a camera in his smartphone.

<comment><USER7> This case is about an alleged incident around 23 years ago - 10-15 years before smartphones or IP security cameras were widespread.

<comment><USER6> And yet it closed only in December. My point is not about victims recording acts of violence, but about church not being able to defer ad infinitum and making illusionary ammends.

</comment></comment></comment><comment><USER8> Bill Marr being appropriately brutal.

<comment><USER9> The article is by David Marr.

<comment><USER10> who wrote _The Prince: Faith, Abuse and George Pell_ a seminal biography of the now-convicted cardinal[0]

Also one of Australia's best journalists

[0] [https://www.themonthly.com.au/blog/david- marr/2013/09/18/137...](https://www.themonthly.com.au/blog/david- marr/2013/09/18/1379486457/prince-george-pell)</comment></comment></comment>


Ask HN: No Profitability and Raises why the guilt? - <AUTHOR> In short I work for a start up who underpays me. This company is ~5 years old and every time I bring this up, they throw a small amount of money at me to shut me up and remind me that the company is "not yet profitable".
Well, Amazon isn't profitable (maybe they are now..? last I heard they were not), but they still pay their employees market value. Why the guilt? Why not give an employee a raise (which I deserve) without reminding me that they're "doing me this favor"? No, I'm doing them the favor by continuing to work for them... I've seen their applicants, I've seen how no one wants to work here... I know exactly what's going on here...
Just curious what people's thoughts are on this. My personal feeling is that I won't get the pay that I'm looking for without finding a job that will pay it - and THEN my employers will try to keep me from leaving by giving me what I was looking for initially.
How does profitability weigh in on paying employees market value?
Edit: equity is extremely small. Tech lead position for bottom 35 percentile pay in the area. <comment><USER3> Hey! So forgive the snooping, but I looked at your comment history.

        - This post.
        - "Need a raise how to ask"
        - "100% burnt out"

You're telling yourself something.

Quit.

Give your legally required notice then use the time to start looking for something else.

This is obviously contingent on having enough savings to stay off the streets until you find something new.

Maybe get temp work through an agency. Depending on the market you're in, that should be enough to tide you over.

Don't stay. Give notice, move on.

<comment><USER4> Yeah if there is a consistent pattern like this, I think the poster is just looking for the right push to make a move. Some sort of forcing action. I say go with what this guy says, give notice, and leave (unless you need to save money first).

</comment></comment><comment><USER5> Well let me premise this by saying: Getting more money rarely turns a bad job into a good job. If you don't like the place you work, that's the problem, and getting more money won't solve that problem.

That being said: I think you're right about getting other offers lined up. I think you should start interviewing, go out into the market, and get 3 - <USER2> solid offers lined up. Then bring those offers to your employer and leave it in their hands.

If they won't pay you market-rate (after showing them what market rate is), then leave; simple as that.

</comment><comment><USER6> So 5 years in and you are still not at/near market rates, are they solely bootstrapped?

To answer your question, profitability plays in regardless of whether they raised money or not, but it weighs far heavier when a company is bootstrapped. Even then though, smart founders will work to take care of their staff so their staff take care of the clients. If they are backed and raised a Series A or further then there is no excuse for not, at least, being very close to market.

Just my 2 cents on profitability too, a company cannot claim to be profitable until the staff is paid competitively and founders are taking a reasonable salary for their role and size of firm. Otherwise the company is not really profitable.

As for staying or leaving, my bet is they will keep making promises but unless you see behavior differences or a light at the end of the tunnel, then it may be time to move on regardless.

One other point, if the company has been taking care of you in other ways like vacations, small bonuses when possible, full health care, and other perks/benefits, then I'd likely feel better for a longer period of time, especially if they were open and recognize that they are underpaying, but it wouldn't last forever.

</comment><comment><USER7> I was once in the same situation. If you want to be paid market value, stop whining and go get it. What's the point of sitting around being mad.

You have some choices. Wait for the next big project, then ask for a fair raise, and for once, don't take the weak counter. But really you should just get another job. Then you will find out what you are really worth.

Good luck.

<comment><AUTHOR> Yeah I'm currently at the 'next big project' and asked for a fair raise. I got a bonus and was told salary reviews will happen within a few months. The company reviews everyone at the same time... maybe they should reconsider if I go and find what I'm looking for.

</comment></comment><comment><USER8> Are you an employee or investor? If you're receiving equity then you're an investor (even if your only investment is theoretically lost wages). If you are only receiving wages (and or bonuses/benefits) then you're just an employee.

As an investor you need to come at it like an investor: Is this business a good investment of those lost wages? Are they growing? Does the business model make sense?

As an employee: You'll never be rewarded for your "loyalty." They won't make it up to you later. If you are being chronically underpaid you should consider finding another job. A lot of startups churn through tons of inexpensive employees, and few if any are later rewarded.

<comment><AUTHOR> My equity is extremely small, if not negligible. The company continues to grow, but the engineering teams grow slower than other parts of the company. This puts more and more strain on engineering as work continues to pile on. The good news (and the bad news) is there's never a lack of work. I feel like slave labor for being a tech lead for bottom 35 percentile pay in the area.

</comment></comment><comment><USER9> Without founder level equity in the company, it's simply time to move on. Life is too short to keep working a job that you are not happy at, especially if you are in the lucky minority of people with highly sought after skills.

<comment><AUTHOR> Very true

</comment></comment><comment><USER10> Do you have decent equity to counter the lost wages? Does the company have double digit monthly growth? If no to either of those questions you really need to question whether you shouldn't find something else.(My BS opinion)

</comment><comment><USER11> Not profitable in this contex probably means they do not have the cash flow nor the means to pay a higher wage. The options are 1) increase revenue, which may not be easy or possible in a given market or 2) pay fewer people more.

Now if you believe in the company and what to stick with it is entirely up to you.

Edit to add. Amazon is not profitable but has massive, massive cash flow. That is unlikely the case with your employer.

<comment><USER6> That's not actually totally true. Amazon is profitable, just with very small margins for the size of revenue they generate. [http://www.reuters.com/article/us-amazon-results- idUSKCN0V62...](http://www.reuters.com/article/us-amazon-results- idUSKCN0V62U6)

Also, Amazon doesn't focus on quarterly profits, which frustrates the wall street types. That is different then not ever being profitable though. If there were never profitable Amazon would have to be raising more money constantly or slashing costs just to stay in business. Instead, they just run super thin margins and invest pretty heavily in new areas constantly keeping their margins super thin (sometimes negative).</comment></comment>


Business-Oriented Founders' Dilemma on acquiring talents - <AUTHOR>

Hello HN,
First off, while reading YC's Library I came across an article written by PG on the business-oriented founders' failure to hire good programmers which can ultimately leads to the steep slope of a startup. He also described that business founders' can't recognize good programmers because of the lack of knowledge on coding or the technical expertise required to speak same language. Then, the point stopped right there, without a probable solution on what business founder can do if they're in a situation described.
I'm that business founder, and it's proven hard to find the best programmers as I've learned it the hard way. Although, I refuse to believe that's what killed or is going to kill brilliant ideas that may someday grew to be the next google. I certainly don't want to ditch my idea simply because failure to hire good programmers.
So in my view, business founders can;
1. Go take classes and learn programming, and DIY on the product - This can take a while depending on how fast the business guy learns something completely out of his norm. The time spent on learning something completely new should be spent on building a better business model, think about how the product can respond to user's needs, and find ways to cut into the market to gain market share, etc.
2. Find a mediocre programmer and start working on the half-baked product and hopes that later down the path the best programmers can see the potential of the product and jump on board – The sugar-coated-topped-with-a-cherry thinking is that the product would probably suck, but at least the product can start gaining exposure. Users like what they see and are willing to wait for the fully developed product to arrive. On the other hand, users may very well see the "suck-ness" of the half-baked product and bail within 3 seconds.
3. Find a technical co-founder that excels at programming but is looking for a business counterpart so he/she can concentrate on programming while the other can focus on the business – Intriguing, but hard to find. Available talent pools are swarmed with programmers that do mediocre coding (or dumb) and just want an easy way out. Rarely do we see a passionate programmer geek that is ambitious enough to embark on a journey with a few obstacle and fails to see the potential of a great business model.
4. Ditch the internet startup and start a business without the need of technical expertise – I certainly refuse to take this route, and I don't think a determined and successful entrepreneur would ever ditch the business they've worked their butts off just because of this one dilemma. But what can we do?
I want to ask the successful business oriented startups that got through this phase.
What's your take?
Which route do you guys see more viable?
Are there any other suggestions other than the ones listed above? If business founders are stuck in this problem, what can they do? Where and how can we effectively tap in to acquire needed technical counterpart?
Thanks HN,<AUTHOR> <comment><AUTHOR> bump</comment>


Why Twitter's Dying (And What You Can Learn from It) - <AUTHOR> https://medium.com/bad-words/why-twitter-s-dying-and-what-you-can-learn-from-it-9ed233e37974 <comment><USER2> The cover photo is the oversaturated version, here's the original: [http://gallery.mikeolbinski.com/thestormgallery/h6b1e2196#h6...](http://gallery.mikeolbinski.com/thestormgallery/h6b1e2196#h6b1e2196)</comment>


Show HN: WhatShouldICost.com Use GitHub to find out what you're worth - <AUTHOR> http://www.whatshouldicost.com/

<comment><USER2> Seems legit! I'm not sure it's hugely accurate, but it gave me a pretty close estimate for my salary.</comment>


Struggling to concentrate? - <AUTHOR> http://glutendude.com/celiac/celiac-disease-and-brain-fog/

<comment><AUTHOR> I have no affiliation to the site linked, actually it was the first result that wasn't about.com.

Following some of my comments on the "Meals/Feels" thread ([https://news.ycombinator.com/item?id=6601091](https://news.ycombinator.com/item?id=6601091)) earlier in the month, a number of people contacted me mentioning that they also had these symptoms, but had never put things together.

Showing up for work at 8:30 and being useless, frustrated and unable to focus by 10:00, probably that bagel you ate for breakfast.

I just wanted to put out a link in a place where people might run into it, that might just improve your quality of life!

Whilst I can't stand by suggestions to go to a caveman diet, I can stand by advice to experiment with your food, and be aware that being short tempered, unable to focus, and a menace to your team might be related to something as innocuous as your daily bread.

</comment><comment><USER2> I'm glad more and more people are realizing Paleo is the way to go</comment>


Review my startup: Snaplog.com - <AUTHOR> http://snaplog.com Hi, Snaplog is a Photo Blogging app. Works as an iPhone app or just as a standalone webapp. The motivation behind it was to make a site that is all about the photos. Simple. And no, I haven't heard of Flickr. ;)<p>I would love to get anyone's feedback. <comment><USER2> Seems like a really cool utility, particularly the image editing elements. I will definitely use this app.

It would be great if I could automatically syndicate my uploaded photos out to other services/locations where my friends and family are already expecting to see photos from me (like my blog, tumblr, facebook account, etc). I guess I could probably use the email sharing to accomplish that, but it would be great if I could pre-load all the posting information for these other locations (typically it is just a dedicated email address) and tell the app where I want to post the photo as part of the upload process.

<comment><AUTHOR> thanks! that's really good feedback. integration with other established networks is definitely a plus.</comment></comment>