Coming Soon To Chrome: Google Bookmarks? - <AUTHOR> http://www.readwriteweb.com/archives/coming_soon_to_chrome_google_bookmarks.php <comment><USER2> This would be a killer feature from Chrome. It's not earth shattering but with Google you have little fear of downtime or the inability to reach your precious bookmarks.

The question of course becomes privacy and security. Ideally there would be an option to bookmark for machine specific bookmarks. I don't need my work bookmarks at home usually, and some home bookmarks may not be suitable to be at work with me.

Chrome has a lot of potential to really be the first /cloud/ browser, but it's yet to be seen if it can make a significant land grab for anything more than initial wow factor.

Flock tried to do a lot of the cloud integration and social networking pieces, but it never succeeded in differentiating itself from Firefox due to the Fox's easy ability to do anything via plugins, and herein lies the problem for Chrome.

Does Google even want to really enter the browser war? Or is it content to keep working on its own and let Firefox / Safari / IE really fight it out? We'll see.

</comment><comment><USER3> Wasnt there someone who had made a firefox extension to add surfing history to google bookmarks, and then google had scalability issues due to which they sent him a check, mug and a tshirt and a request letter to discontinue his extension... This seems something similar! Ofcourse the load on google is gona be less as we don't bookmark each and everything

</comment><comment><USER4> I was hoping to see this, however as a del.icio.us user I'm afraid I'll be left out seeing as how I'm sure Google will not implement an 'open' social bookmarking mechanism.

</comment><comment><USER5> does anyone care? does anyone use chrome as their full-time browser? this thing has turned out to be a huge flop for google, and a big waste of time. as long as firefox and safari keep IE dominance in check and as a result keep the standards-based web viable, i wonder what google really stands to gain.

<comment><USER6> I use it a lot and really like it.

As far as what Google stands to gain: they pay millions to firefox and others for search referrals stemming from the firefox homepage and the integrated search bar. Also, Google certainly benefits from people surfing the web faster (more page views = more money for them).

<comment><USER7> I've always wondered if this is naive: couldn't a large part of it be that somebody at Google said "all these other browsers suck" and decided to fix it? I mean, Chrome takes ideas from other browsers and puts it together into something that's superb in nearly every way, especially for a beta. Google could very well have started the project intending just to make a really good thing.

That and, you know, the millions of dollars thing. That's big too.

(Does anybody else find it annoying that Google's software is always more aesthetically pleasing than their online programs?)</comment></comment></comment>


Ask HN: Guide to WebDev for Low Level Engineers? - <AUTHOR> I've been doing low level engineering for years (mostly hypervisor development), but have very little idea how web development works.
I tried writing some javascript, but I immediately tried using `require` on the client-side, without having any idea that was Wrong. My experience so far has been little moments like that over and over. I feel like there are some main abstractions I could learn that would be useful to build off of.
Are there guides out there for people that are already familiar with software engineering? <comment><USER2> May not answer your question, but maybe you find a use to this.

Web Dev Roadmap [https://github.com/kamranahmedse/developer- roadmap](https://github.com/kamranahmedse/developer-roadmap)

Spellbook of Modern Web Dev [https://github.com/dexteryy/spellbook-of-modern- webdev](https://github.com/dexteryy/spellbook-of-modern-webdev)</comment>


Is React Native Cross Platform Snake Oil? - <AUTHOR> http://rexstjohn.com/is-react-native-cross-platform-snake-oil/

<comment><USER2> To quote the only comment from the last time this article was posted:

> It seems the entire blog post is based on a misunderstanding of React > Native's goals.

Which is true, per the blog:

> There will nearly always be some level of customization required, Developers > and designers will nearly always need to have direct knowledge of each > platform target.

Which is exactly why React Native has separate controls on iOS and Android when necessary

<comment><USER3> I like to think of React components as interfaces. I'm saying that this component is capable of handling these actions, and displaying these things. On different platforms the exact behavior is expected to change, but I can trust that my UserStatus component always accepts a users status property, always displays it and perhaps manages modifying it. I can trust that my LogCard component will always be a container for a log using the same actions.

In that way I'm free to modify the implementation of the component to match the platform and can still share the component across platforms.

The React team has already stated they aren't attempting to Write-Once-Run- Anywhere, they are establishing patterns for learning once write anywhere.</comment></comment>


Agate: A Data Analysis Library for Journalists - <AUTHOR> https://source.opennews.org/en-US/articles/introducing-agate/ <comment><USER2> It's worth noting that for journalists, analyzing data is only half the battle.

Sites like FiveThirtyEight and The Economist usually have separate graphics departments who use nonstatistical tools like Illustrator to annotate and apply custom theming. Good visualization is an huge part of a persuasive argument, and so being able to do both is important (and languages like R have good native plotting as well)

Additionally, looking at the agate code Jupyter notebook, it appears that the processing syntax is very, very similar to pandas (despite the warning against it) aside from the print_bars method, so I'm confused about the specific utility of the module.

From the post comments, after someone else noted the similarities too:

> _You 're right, most of my problems with pandas are not in its interfaces. > My problems there are with the overhead of the numpy dependency, its > confusing handling of text, nulls, etc. (inherited from numpy) and its > documentation aimed at advanced users rather than beginners._

<comment><USER3> Hello! Author of the library here. Just want to point out that I am a journalist and very active in the data journalism community. (6+ years) Both the sites you name-check have journalists who do production online graphics that don't go through the traditional Illustrator workflow and news organizations are increasingly discarding that antiquated pattern. (I've made a hundred graphics for NPR and I don't even have a copy of Illustrator installed.)

To your second point, that's fine. The most common feedback I've gotten is "I don't see what purpose this serves that X doesn't already fulfill!" Well okay then, you don't gotta use it. But given the fact I've done this job for years, working with the very folks who it's targeted at, I think it's probably safe to assume I've got some reasons. (Which you will find enumerated in the blog post and documentation.)

<comment><USER4> hey man, good work on agate. I like it.

I actually used to live right near the NPR offices in Crystal City.

You might know a pythonista I know who used to work there and is now doing a machine learning start-up. (his name is Greg)

</comment></comment></comment><comment><USER5> I don't think the syntax is _that_ much nicer than dplyr in R (thank you Based Hadley). But the approach (focusing on less-technical users and reducing headaches) is certainly good.

I do really like the graphs being printed in console. Is this common elsewhere?

</comment><comment><USER6> Where I work, we do a lot of projects where we are replacing some aging and wacky system (i.e., FileMaker Pro, Access, old and ignored SQL Server 7, etc.) Our project managers might find this tool helpful, doing the data analysis in the wacky system is pretty specialized. Dumping that data to CSV and looking at it through a tool like this seems like it'd be a big time saver.

</comment><comment><USER7> is there any reason for the emphasis on "journalism" other than the fact that the author of the library is a journalist?

<comment><USER3> Journalists have some problems that tend to be somewhat peculiar to their jobs. Some examples:

* A mix of heterogeneous and often internally inconsistent data.

* A lot of data that is categorical, free text or otherwise non-numerical.

* A need to be robust that is not always accompanied by the time necessary to become an expert programmer.

I'm sure some other folks have these problems too, though I can't think of any other industry where folks would touch as diverse a range of data as we do.

If works for other niches, great! But I'm a journalist and I had journalism problems in mind when I built it. I can't speak to the needs of folks in science, finance or what have you.

<comment><USER8> I'd throw history into the ring for something that would be similar in variety of sources, types of data, etc.

I'm looking forward to checking out the library!

<comment><USER3> Yes, good point! There's a lot of crossover there and also with digital humanities folks.

<comment><USER9> +1 for digital humanities folks. Your emphasis on well written documentation is a strong argument for agate over more powerful, but more confusing, data processing libraries. I'm already thinking about using agate in my digital humanities workshops!</comment></comment></comment></comment></comment>


Why Go and Rust are not competitors - <AUTHOR> http://dave.cheney.net/2015/07/02/why-go-and-rust-are-not-competitors <comment><USER2> Go and Rust competes in the narrow space of, " _what 's The Next Interesting Thing to learn?_"

In that narrow sense, it doesn't matter that the underlying semantics and runtimes of Go and Rust are targeted for different use cases. They get lumped together in the same conversation because people have a vague sense that something... (newer programming language, newer database engine, newer CSS templating, etc)... will make their project better. In that nebulous cloud of possible future benefits, it's understandable for people to mention both in the same conversation. However once people get past the unspecified idea of "better" and actually analyze (i.e. write concrete programs) the real costs & benefits, the differences of Go & Rust will reveal themselves. People will realize that Go is inappropriate to write a 60 fps graphics rendering engine and likewise, Rust is inappropriate to write quick scripts for Google-scale cloud orchestrations.

One other reason that Go is mentioned along with Rust is that Google used the adjective "systems" to describe it. " _Go is intended as a systems language_ ". Unfortunately, a lot of folks didn't realize that Google was using an idiosyncratic definition of "systems" to mean a programming language to help the management of their datacenters. To others, "systems language" means writing operating systems, device drivers, embedded chips, etc. There was a nuance that got lost and it ended up muddying the discussion. The phrases, " _Go is a systems language_ ", and " _Rust is a systems language_ " look the same but they mean different things.

<comment><USER3> No, they meant Go was intended as a systems language. Rob Pike:

[http://commandcenter.blogspot.com/2012/06/less-is- exponentia...](http://commandcenter.blogspot.com/2012/06/less-is- exponentially-more.html?m=1)

> I was asked a few weeks ago, "What was the biggest surprise you encountered > rolling out Go?" I knew the answer instantly: Although we expected C++ > programmers to see Go as an alternative, instead most Go programmers come > from languages like Python and Ruby. Very few come from C++.

> We—Ken, Robert and myself—were C++ programmers when we designed a new > language to solve the problems that we thought needed to be solved for the > kind of software we wrote. It seems almost paradoxical that other C++ > programmers don't seem to care.

Read the whole thing if you have time - Pike talks about how they were trying to write a language that filled a role similar to C and C++. So they came up with a compiled, statically typed language.

<comment><USER2> I've read that and I disagree with your interpretation.

Google was using C++ in the "systems management" of their datacenters. Rob Pike is using a Google-idiosyncratic definition of "systems".

I do believe that Google did use C++ for many classic low-level scenarios (e.g. writing custom Linux device drivers, failover code, etc) but they _were also_ using C++ for "high-level" systems orchestrations and batch jobs. It's the "high-level" uses of C++ that that Rob Pike successfully addressed with Golang.

I'm saying a large percentage of programmers outside the Google bubble think of "systems" as low-level stuff like realtime embedded, low-latency device drivers, etc that require zero-cost abstractions. Rob Pike did not design Go's semantics & runtime for those use cases.

<comment><USER4> C++ for Linux device driver? Am I missing something?

<comment><USER5> It is possible to write a Linux device driver in C++, although most will be written in C (and I think all the ones that actually come with the kernel are in C).

</comment></comment></comment></comment></comment><comment><USER6> It seems pretty straightforward to me. Rust fits into more or less the niche of C and C++: a low-level systems programming language with minimal runtime dependencies (no garbage collection, smallish standard library), which happen to also be useful properties for realtime and other perfromance-critical software.

Go, on the other hand, fits more into Java's niche: an opinionated mid-level garbage collected language designed for application programming or mid-level systems stuff (i.e. web servers), with concurrency baked into the language design (though Go's concurrency design is much more to my liking than Java's).

<comment><USER7> I mostly agree with your analysis. As someone who is doing web development in Rust, what should I fear of missing from a language like Go or Java? Is it just an ecosystem thing? Java is a more popular option for web server development over C++, but I don't know why.

<comment><USER8> Is Rust really suitable for web development? I am genuinely asking.

For server development I think it might be a good choice, but for application code itself it seems like more of a pain to program in than an advantage.

<comment><USER9> Probably mostly depends on the libraries and frameworks that will appear? The SQL query->data->template pipe isn't very reliant on the language as long as it can manipulate "data" reasonably well.

Nobody wants to code C++ for webservers because of the risk (PayPal not included) but Rust doesn't have that issue.

<comment><USER10> Actually, some people use C++, with an OKCupid framework.

[https://github.com/okws/okws](https://github.com/okws/okws)

</comment></comment></comment></comment></comment><comment><USER11> > _Rust and Go are both touted as memory safe. While this statement is > absolutely true, both languages will not tolerate unsafe memory access, what > is more important is that the world will not tolerate any new language which > is not memory safe. It just so happens that Go and Rust are the first two > languages to emerge after decades of evidence that in the real world, > programmers as a whole, cannot safely manage memory manually._

This is extremely misleading.

Go and Rust are not at all "memory safe" in the same way.

And Go and Rust the "first two languages" in this regard? Hardly.

Rust maybe, because it uses a novel approach, but there's absolutely nothing special in Go's "memory safety" approach compared to Java (and Scala, Clojure), C#, D, Haskell, etc.

<comment><USER12> You took it the wrong way. Dave didn't say that Go's GC was special, of course garbage collectors have been around for decades. The key takeaway:

> what is more important is that _the world will not tolerate any new language > which is not memory safe._

Because of that, both Go and Rust, as a new languages, are not memory unsafe. Go's safety is boring, sure, but it's still a feature of the language.

So both languages are memory safe in that they are not memory unsafe, big whoop. That's Dave's point. _All_ new languages have this, and even though they're commonly compared with this metric, the metric itself is useless for new languages.

<comment><USER13> >Rust and Go are both touted as memory safe. While this statement is absolutely true

Duh?

>So both languages are memory safe in that they are not memory unsafe

This is more accurate statement imo. Saying Go is memory safe [1] is like saying a lamb is safe among a heard of hungry lions.

[1] [http://www.pl-enthusiast.net/2014/07/21/memory-safety/](http://www.pl- enthusiast.net/2014/07/21/memory-safety/)

<comment><USER12> From that article, safe Go prevents: buffer overflow, use after free, use of uninitialized memory, illegal free, access to undefined memory. The only thing it misses is null pointer dereference. (OOM errors are not possible to prevent in turing-complete languages.)

I don't agree with your analogy. A lamb among lions is _clearly very unsafe_ , but Go isn't unsafe; you just agreed with me on this. Your analogy fits better to C/C++. The lamb could theoretically survive, but it's very unlikely; just as unlikely as a C/C++ program with no memory bugs.

<comment><USER13> Yes I do generally agree with you. I went a bit overboard - somewhat HN pushes me over the edge sometimes :-(

Lamb metaphore would not do Go the justice indeed. I do like Go, but also do not like some opinion which oversimplify reality.

</comment></comment></comment></comment></comment><comment><USER14> So I've written a few things in Rust, none in Go, but I've looked through Go's syntax.

Everything that can be written in Go can be written in Rust. However, Go would be much more simpler for things, ie. right now, a web server. On the other end, some critical performance things or microprocessors, etc., written in Rust cannot be written in Go.

They each have a purpose, and while there is some overlap, the purpose is very different. Go is geared more towards developer simplicity. Inevitably, Go will be a more popular language because of the simplicity. Similar to Ruby and Python. I also see Rust becoming a much more mature language that will take many C and c++ programmers over the next few years. It takes time, 1.0 was only released 7 weeks ago.

In the end, I see both of these languages growing more and sticking around for awhile. Especially with large corporate backings (Google, Mozilla) and growing communities.

I think I will probably learn both eventually.

</comment><comment><USER15> > Go competes for mindshare [with those who] have lost patience with the high > deployment costs of JVM based languages

This is repeated so often, but I genuinely don't understand the underlying point. At Snowplow we have to deploy Scala, Java, JRuby and Go, amongst other things.

Scala/Java: build a fatjar containing all dependencies using sbt-assembly, upload to Bintray and then deploy onto servers which have a recent JVM.

JRuby: build a fatjar containing all dependencies using warble, upload to Bintray and then deploy onto servers which have a recent JVM.

Go: build a binary containing all dependencies with godep for each relevant server architecture, upload to Bintray and then deploy onto servers.

Yes, Go doesn't need a JVM installed, but on the flipside I have to build a version for each relevant server architecture. And then there's the software where I have to export GOMAXPROCS=`nproc` in a wrapper script...

<comment><USER16> The JVM, CLR, Frameworks, Runtimes, app servers, configurations, etc. _ARE_ the problem. We're tired of all that crap all the time. Compile to an executable and xcopy the executable to an arbitrary server. Ideally, nothing to configure outside of the application itself.

Go fits that bill nicely, but it's an annoyingly austere language. With all the languages in this last wave, I just don't know why nobody hit on a full featured Go level language yet. No memory management, not deployment dependencies, full of nice sugary high level abstractions, and cross platform Windows/Linux. Something solid and ready for production use, not an alpha or beta.

<comment><USER15> > Compile [assemble] an executable and xcopy the executable to an arbitrary > server [with a JVM]. Ideally, nothing to configure outside of the > application itself.

That is exactly what we do with Java, Scala, JRuby. Installing a JVM is 5 lines of bash; 1 line of Dockerfile. I don't understand the point you're making.

<comment><USER17> Let me start by saying I think the argument for binaries vs fat jars is overblown.

That said there is more complexity with the jvm. Do you have the _right_ jvm installed? Where was it installed? Are there multiple versions of the jvm installed? Do you care? Can you mess with it? Have you accepted the license for the jvm? Should I use docker to manage all this complexity? Is the docker agent working? etc.

In environments where you are deploying to a single architecture that is more complex than "copy binary". In environments with LOTS of servers the (admittedly limited) complexity difference can add up.

<comment><USER18> IT says everyone uses version X.

<comment><USER17> This group IT, do they set up the servers? Do they make sure policy is enforced? Do they deploy your software? If so, they are doing the work and we should be asking them & not you whether they prefer JVM based solutions or single binary ones.

<comment><USER18> Most of the companies I worked for, only IT has a say what devs have on their machines and servers. You need tickets for everything.

</comment></comment></comment></comment></comment></comment></comment><comment><USER18> Go is only a competitor for Java 1.0 like languages.

It is not a competitor to Rust, because it lives in enterprise mindset of 90's language design.

It is not a competitor to the JVM languages, because all of them are more feature rich and any knowledgeable JVM developer is aware there are plenty of options to deploy, including static binaries.

<comment><USER17> I have a lot of experience in the JVM and understand how to deploy, build, etc. JVM based solutions including those built on "next generation" JVM languages like Scala.

Go absolutely is a competitor to that environment because writing web services across large teams is something Go has a compelling story around. This has been the domain of the JVM for a long time and many people have bad experiences with it (many people have good experiences as well I'd add).

<comment><USER19> > the JVM for a long time and many people have bad experiences with it

And the only reason for this is that people don't have to maintain 15 yo Go code bases yet. But Go is verbose and will be a hell to maintain just like any other language that becomes 'enterprisey', just like big nodejs code bases, big rails code bases or big JEE code bases give people 'bad experiences'.

<comment><USER17> I dont disagree at all. The one thing I would say _might_ mitigate this, is that the golang community and leaders are very much rooted in the Unix philosophy of doing one thing well. They push back very hard on things that enable code bases to get big.

Its possible that golang will simply not be viable in use cases that require big code bases, and therefore won't deal with those problems. Its also possible that over time the focus on keeping things small will drift, and golang will just be Java.

</comment></comment></comment></comment><comment><USER20> Why are we still talking about this?

Every language that's vaguely close to a multi-purpose language is a competitor with every other language. There are people who write websites in X86 assembler and people who write embedded systems in Python.

Rust and Go are competitors. Yes, they were intended for different things, but who cares? Any reasonable metric of language success is going to show one language pulling numbers from the other. Pick your metric: users? There are plenty of people who _aren 't_ using Rust because they're using Go, and vice- versa. Successful projects? There are plenty of projects which _aren 't_ being written in Go because they're being written in Rust, and vice-versa. Reliability and safety? Maybe Go would have a reasonable type system if Rust hadn't snapped up so many of the good thinkers in that field.

Arguing about whether languages are competing based on what they were intended for is a pointless argument: there's no metric for success, no way to validate who's right or wrong. Are we really going to spend time arguing over what Google devs meant when they used the word "systems"? Seriously?

</comment><comment><USER21> I certainly see the need for Rust, a better, stricter and more modern C designed for low-level tasks where both performance and correctness matter, e.g. layout engines, game engines, OS kernels.

On the other hand Go seems more suited to system/server tools where good- enough perfmance and quick startup matters more. I've noticed that people have been converting Python and Ruby code-bases to Go, and its use in system tools such as Docker, CoreOS, and Kuberentes. We're working in this area and have considered jumping on the bandwagon and rewriting our Python prototype in Go for the same reasons - performance, minimal runtime, strong ecosystem, some 'typing'. (Python made/makes sense atm as we're still very exploratory so doesn't get in our way).

However upon investigation I was a bit disappointed with Go, although it has an incredible ecosystem and active community. Perhaps its simplicity is also an advantage although I found it counter-intuitive at times. However I can see why it found use in a way that 'better' (IMHO) tools such as OCaml were unable to.

We're still undecided as to what to use when/if rewriting our code. Funnily enough I'm wondering if maybe C#/F# would work, now .NET has been open-sourced and has a native compiler. A good language/runtime, stronger type-system, lots of libraries, and potentially good performance with quick startup. I guess it would be quite amusing if MS's tooling ended up as the best way to write Linux system/server tools within those particular constraints.

</comment><comment><USER22> Cheney sounds on the money to me. Even with this ending- "Go competes for mindshare in the post 2006 Internet 2.0 generation of companies who have outgrown languages like Ruby, Python, and Node.js (v8) and have lost patience with the high deployment costs of JVM based languages."

I agree. If you're a large company that has a lot of product which is backend webservices and you have huge amounts of Ruby, Python (dunno who has large amounts of Node, but that has to be sad)- then Go needs to be looked at pretty hard. While some of Go's deployment advantages are nullified a bit thanks to things like Docker and UbuntuCore, it's probably going to win on maintainability with large codebases over time with new programmers coming in the door over time. I wouldn't put up much argument against that. If running a business and the choice was a 500KLOC codebase in Python, Go or Java.. I'd prefer that is in Go. And no one starts out with 500KLOC, so the decision for a new business would need to be taken seriously from the start.

It's cliche but if your problems match Google's, then Go is a great solution. I think Go will be and already is wildly successful in this domain. The killer feature that ensures this is the simplicity. I think anyone coming from any language could pickup one of the "simple is better" languages like Go. That's going to ensure the prophecy continues IMO. Doesn't mean I'm onboard as 1 guy. I wouldn't have a problem with doing it for a job though. It'd be on my short list of acceptable technologies I'd work with.

Doxsey in his response though with his Go for everything stance, is a bit overzealous for me. I'd agree if it seemed right, but it doesn't seem right. I don't see it. Fortunately for Go, he doesn't have to be right. I think what I described as being Go's sweet spot in the industry will be more than enough. That religiosity reads as someone who's overly excited and maybe trying to keep Go in the news.

</comment><comment><USER23> Yeah I think of go as an upgraded scripting language in a lot of ways. In a lot of ways I think go or scala are going to become the standard "oh crap we need to scale and preform better" web application languages. I think in most cases if I'm building a green field web application on the server side I'd be hard pressed to not choose go or scala at the beginning. Nearly as quick a development cycle and a MUCH better scaling story.

Rust is too my a language aimed squarely at what I mentally model at tight loop applications, web browser engines, game engines, real time network servers etc... Go has amazing performance compared to python or ruby or even node.js but the GC is still too unpredictable to work well enough for those type of apps IMO.

</comment><comment><USER24> Two fringe languages are not competitors. Who would have thought it.

<comment><USER11> First, being fringe doesn't make you non-competitor automatically. Fringe language can and often DO compete for the same niche.

Second, with support from most major shops, and being deployed even in companies such as Apple, Mozilla, Facebook and more, Go is hardly "fringe" at this moment.

<comment><USER9> What's the source for Apple, Mozilla (ok Facebook I'm less surprised) deploying Go?

<comment><USER25> [http://www.golangprojects.com/golang-go-job-in-Senior-CDN- De...](http://www.golangprojects.com/golang-go-job-in-Senior-CDN-DevOps- Software-Engineer-Santa-Clara-Valley-Apple.html)

[http://daringfireball.net/linked/2015/05/06/applebot](http://daringfireball.net/linked/2015/05/06/applebot)

[https://blog.mozilla.org/services/2013/04/30/introducing- hek...](https://blog.mozilla.org/services/2013/04/30/introducing-heka/)</comment></comment></comment></comment>


Ask HN: Terminated two weeks before vesting cliff – thoughts? - <AUTHOR> Details hidden to provide anonymity to both parties.
I am being terminated from a startup 2 weeks before reaching my one year cliff. The other day I was asked to sign a release form noting the date of termination and that I would receive no stake in the startup.
To provide some background, I was visiting the company at their new out of state location for a few weeks. Historically, the company started in SF and moved. We also worked remotely for a better part of a year. I was asked about my future with the company, and I mentioned that I would like to transition out of the company. My flight back home was scheduled for next week, but it was pushed up to two days after the discussion when a new ticket was purchased for me.
The following weeks progressed with my permissions to various websites were being revoked, and my receipt of a release form.
The company was bootstrapped, less than 5 people, and everyone worked for more than half a year without salary.
I saw a similar situation here on another Ask HN thread. https://news.ycombinator.com/item?id=3962292
What are your thoughts and advice about the situation above?
Thank you for taking the time <comment><USER2> Don't listen to the people here telling you to just "move on". You worked for half a year without salary; they don't get to screw you and get away with it. There is no "high road" that benefits exclusively them.

Get a lawyer _now_ , do not sign anything, do not pass Go. Upvoted advice in the other thread applies. The card you hold is the threat of a lawsuit, which happens to be justified.

To be clear: you're still an idiot. They're jerks. Let this be a watershed moment for you.

<comment><USER3> >more than half a year without salary

Pretty sure a lawyer would be salivating to take this case.

<comment><USER4> Why? Someone agrees to no salary, what claim do they then have?

<comment><USER5> At the very least, there are hourly minimum wage laws that you cannot agree to forfeit.

<comment><USER6> Lest someone think this is incorrect, California anyway has "you must pay overtime exempt workers at least 2x minimum wage" (or they can sue). Start at the overtime page: [http://www.dir.ca.gov/dlse/faq_overtime.htm](http://www.dir.ca.gov/dlse/faq_overtime.htm) and follow through on exemptions.

Source: have known founders who had to sign waivers agreeing not to sue.

</comment></comment></comment></comment></comment><comment><USER7> It's not clear what "write up your own response" means here, but:

1\. You're in lawyer territory now. Stop talking.

2\. Lawyers, the good ones anyhow, run about $350/hr minimum in the Bay Area. Quite possibly more. This will likely cost you $5k - $10k to litigate. The more you talk (and the more you tie up your lawyers time, quite probably billed in 15 minute to one hour minimums _per contact_ \-- and email or phone calls are contacts -- the more that will be.

3\. Let your lawyer talk for you.

4\. We've already established that you're an idiot and you were working for assholes. That's no real insult, _most_ employees in the tech world are idiots when it comes to dealing with employment stuff. I certainly am. There's far too little training on this anywhere, and the law changes both quickly and regionally.

5\. Just shut the fuck up already.

6\. The fact that most employers are assholes and the law is the shits (among many other faults) are why I'm as far the fuck as I can get from tech these days. Watching my garden grow is both more rewarding and remarkably less stressful. Some plants are assholes, but I can burn them with fire, legally.

<comment><USER8> This is a side note but if your lawyer charges $350/hr _and_ bills you .25 or 1.0 hours for an email, they are a piece of shit and you should get a different lawyer.

At that rate you should absolutely not be charged in increments larger than .1 hour (6 min).

Our attorney (Associate) charges $145/hr and his boss (Partner) charges $285/hr and they both bill in increments of .1, and they typically won't bill every single email either.

<comment><USER7> Read your lawyer's billing terms and understand them clearly. My information may differ from others, and it's not a field in which I'm an expert, though I've paid for a certain level of education, and not through an academic institution.

There may well be forums for discussing particulars of these terms and there may be value in negotiating those as well.

The larger point is that lawer time is expensive.

</comment></comment></comment><comment><USER9> Obviously, the only genuine advice this forum can give is

1\. Don't sign anything. 2\. Don't say anything else to them. 3\. Quit discussing it publicly. 4\. Go directly to a lawyer.

But honestly unless they're completely incompetent they probably hold all the cards. Yet another reason not to trust employee equity.

<comment><USER10> Don't underestimate how completely incompetent a five person startup can be.

<comment><USER11> Bootstrapped, no less.

</comment></comment></comment><comment><USER12> > The company was bootstrapped, less than 5 people, and everyone worked for > more than half a year without salary.

This is almost certainly illegal, and may not even take a lawyer to address (though that's usually going to be most effective, if not always most _cost_ effective): if you had a nominal salary [ _], most jurisdictions ' labor law require it be paid with a minimum frequency, and this is often a violation that state agencies will pursue on behalf of employees (e.g., in California, wage claim can be filed with the Department of Industrial Relations, Division of Labor Standards Enforcement [1]. Likewise, to the extent there are federal wage-and-hour violations, these can be addressed by complaint to the federal Department of Labor [2].)

[_] if you didn't, its probably a violation of minimum wage laws (potentially both state and federal), and since you were probably otherwise treated as FLSA exempt in other aspects of employment, and FLSA exemption includes a minimum salary, its probably a violation of other labor laws. These, again, may be things that can be addressed through complaint to government agencies without pursuing a lawsuit; particularly, the Federal Department of Labor [2].

[1] [http://www.dir.ca.gov/dlse/howtofilewageclaim.htm](http://www.dir.ca.gov/dlse/howtofilewageclaim.htm)

[2] [http://www.dol.gov/wecanhelp/howtofilecomplaint.htm](http://www.dol.gov/wecanhelp/howtofilecomplaint.htm)

<comment><USER4> Ianal but tons of startups forego salary when times are tight (a month or two) and a bootstrapped startup isnt paying anyone until money starts flowing. What's illegal here?

<comment><USER13> Minimum wage laws. It's technically illegal, but it's a civil penalty, not criminal, and so the employee has to sue to claim damages. And if the company doesn't have money to pay salaries, they aren't going to have money to pay out damages to a lawsuit - a victorious plaintiff just goes to the top of the creditor list when it comes to fighting over the carcass.

[Edit: "Willful" violations may also be prosecuted criminally, although again, this usually requires that somebody report it. [2]]

It's a calculated risk for many founders. They're one disgruntled employee away from a company-ending lawsuit, but usually if they're not paying salaries then they're a paycheck or two away from a company-ending bankruptcy. And once money comes in, good founders will usually pay back all the back wages to avoid that lawsuit.

(This is also why founders should pay themselves minimum wage - I've had a (Massachusetts) lawyer tell me this, and YC's legal counsel also suggested it in their "How to start a startup" lecture [1]. Yes, this also means you have to pay taxes on the money you're paying yourself. This is one of the few good arguments against incorporating before there's money coming in.)

[1] [https://www.youtube.com/watch?v=EHzvmyMJEK4#t=1980](https://www.youtube.com/watch?v=EHzvmyMJEK4#t=1980)

[2] [http://www.dol.gov/general/topic/youthlabor/enforcement](http://www.dol.gov/general/topic/youthlabor/enforcement)

<comment><USER12> The employee may not have to sue themselves; both the federal and many state governments have agencies that take wage and hour complaints and pursue employers on behalf of employees. "Civil" does not imply "not pursued by the government".

</comment></comment></comment></comment><comment><USER14> I think if you weren't ready to leave, you shouldn't have said you were leaving. They would be derelict of duty if upon hearing you say it, they didn't immediately stop any capital flow in your direction.

It's shitty as hell, and I'd like to think I'd never do that, but it's rational, and people tend to choose rationality over morals.

<comment><USER15> It's going to seem less rational when the company is forced to give back the stock+penalties, or a year's salary at a reasonable engineering rate (they're either a founder or an employee, and either way the company is screwed).

<comment><USER4> What salary is someone owed when they agree to work for free?

<comment><USER16> In the USA, you can not agree to work for free. It's just not allowed. People do it, yes -- but it's illegal, and governments do prosecute companies, and it's one of the few violations that can "pierce the corporate veil" and go directly after owners.

</comment></comment></comment></comment><comment><USER17> I've worked in lots of tech companies and my experience is that you don't give notice in advance at all. That's because you get walked out the day you say you want to / will be leaving. That's a no-brainer from the tech company point of view. The longer you stay after announcing an intention to leave the more IP they stand to lose. You should have expected to be walked out immediately. Sorry. You may have a case because of the 6 mo without pay but that's not your equity option. Live and learn.

<comment><USER18> I'm sorry you've had so many bad experiences. It's not that way everywhere. In my experience it's normal at Bay Area tech companies to have a happy hour and send people off warmly.

<comment><USER4> Absolutely! But his point still stands: don't give notice until the day you're ready to walk out. Don't give notice the week before yearly bonuses (and make sure you have the dates correct!), don't give notice right before a big vesting event, don't give notice until you transfer/clear out the gigs of photos and personal crap you accumulated on your work machine over the years, etc..

</comment></comment></comment><comment><USER19> You can ask to amend the release to get 50/52 of your yearly reward of shares, or 96.15%, and then you'll agree to the rest of the release.

Generally, a company is not allowed to push out employees in order to avoid granting vesting options. This is a "breach of contract," in the sense that you're only supposed to be terminated with cause. "Pushing out," in many circumstances, includes making you miserable and making you want to leave.

Termination with cause is pretty tricky. If you received a "performance improvement plan," then you'll have a weaker case. If your performance was poor, then it was poor. They had to inform you at some point. Otherwise, it doesn't really mean anything if you say you plan to transition out of the company. That doesn't sound like cause, but it may in the state in which you are employed.

You'll notice on the release that you're going to be agreeing that you can't sue about anything that happened under your employment. That clause is there to specifically prevent people from suing about being pushed out.

Absolutely don't sign the release, do not say anything to them. They do not hold any cards, as others have said. Your lawyer will ask to perform discovery on their e-mail. If they have but one text message or e-mail that says, "We need to terminate this guy before he vests," or if any of the employees sign an affidavit indicating anything to the effect of pushing out, they will incur a significantly higher liability.

So what you're betting on is not whether or not they wanted to push you out, or what you said (being unhappy doesn't make you less entitled to your shares). It's whether or not you can prove that they pushed you out.

You're probably not used to being an aggressive person. Expect to pay a good lawyer a $2,500 retainer for the first time in your life. My suggestion is to talk to them first, see what they'll agree to, and then if you don't get 50/52 of a year's grant, talk to a lawyer. Note, if they so much as agree to even 0.01% of granting your shares, your life becomes immensely easier in court-- then the argument because not IF you should get a grant, but HOW MUCH. So if you can get a piece of paper that says even 1 share on it, grab a copy and don't sign it. Talk to a lawyer with it. You'll have everything you need.

</comment><comment><USER20> In practical terms, this company is on a path towards failure. You screwed up by voicing your intentions prematurely, no question.

It's possible that you could attempt to use the law to get them to settle for an amount that could cover part of your last six months. However, I am strongly of the opinion that your equity is worth nothing because companies that act like this never make it anywhere near profitability.

There's a huge difference between founder bootstrapping and exploiting people.

</comment><comment><USER21> When you mentioned you wanted to transition out of the company it sounds to me like you resigned.

Why would they allow you to stay past the vesting period if they know you are intent on leaving? Generally the vesting period is to ensure you are going to stay, and you stated your intent to leave.

<comment><USER22> Disagree, twice.

First, when he mentioned that he wanted to transition out of the company, that was giving notice, not resigning on the spot. You know, the kind of thing that is considered reasonable, polite behavior when leaving a job.

Second, what's the point of the vesting? It's to give him an incentive to stay for the year. _He was doing that._ You want him to stay longer than the year? Give him a carrot that shows up at two years.

<comment><USER21> Yes good points. Technically he was giving notice however the reality of working "at will" means the employer can say thank you very much for the courtesy but please leave the building asap and don't let the door hit you on the way out. The company I work at does this if you are leaving for a competitor. They typically will pay you the two weeks you give notice for but your badge, logon and email no longer works.

Great point about making the vesting period 2 years... But again being "at will" means your courtesy was equivalent to a resignation. True there is a common decency the company could be expected to uphold but it sounds like that was too much for this company. The way I look at it though was at least they bought him a plane ticket home.

Pro Tip: don't give notice a few days from vesting.

</comment></comment></comment><comment><USER23> Alternative advice: It's such a small team, and clearly money is tight, so hiring a lawyer is going to waste a lot of money and you will all be squabbling over scraps. Instead consider pointing them to this post,and sit down with them to work out an outcome you can all live with. Don't be afraid to get less than your 'fair share' in order to get a deal done,but they should also know there is the credible threat of a lawyer. They just want you out of there, you just want a trailing stake - but they will stay and keep working, so they deserve much more.

However if the founders have gone feral and are not willing or able to be rational, then consider writing a formal letter insisting on your rights to the vast bulk of the stock owing to you and sign nothing they give you. This way if the company ends up doing well then you have more evidence that you can hand to a much more expensive lawyer. I've been done over a bunch of times, and it's alost always better to just move on. You are playing a multi-round game and the most valuable commodities are your time and mental health, not money.

</comment><comment><USER24> I am a firm believer in the military 'need-to-know' philosophy. Your managers had no 'need-to-know' your future plans, especially since those plans were seemingly not concrete. And more importantly, you should not have told them so close to a vesting date. C'est la vie.

Question though: do they owe you a half year salary, or did you waive this?

<comment><AUTHOR> We all didn't take salaries

<comment><USER24> This would help out if you pursued a lawsuit. But remember: civil lawsuits have nothing to do with right/wrong, only who has the deepest pockets.

<comment><USER25> This plainly is not true. Ignore this comment OP.

<comment><USER24> Fine. Ignore it. But the OP seems very young based on his decisions, so maybe, just maybe it is worthwhile telling him that the world sometimes is not just. Just because he may have a 'case', doesn't mean anything. It all depends on how important this lawsuit would be to the company. They may be in a funding phase or trying to sell company, and don't want the hassle so they will settle, or they don't want to lose this lawsuit as all the other employees (who may be as naive) would then claim against the company. So you don't know anything about the company, and your statement that I am wrong, is wrong.

</comment></comment></comment></comment></comment><comment><USER26> So you don't get your lottery ticket. My advice is to just move on.

Maybe in the future don't telegraph your intentions so clearly. You practically begged them to fire you.

</comment><comment><USER27> You told them you wanted to leave before they fired you? Is that right?

<comment><AUTHOR> Yes, I wanted to transition out with intention to stay longer than the time given

<comment><USER28> why would you tell them that? Did you have any personal guarantees to pay back or something?

</comment></comment></comment><comment><USER29> Do NOT sign the release form. Get a lawyer experienced with Silicon Valley employment contracts. Now.

<comment><AUTHOR> No one in the company has an employment contract.

<comment><USER29> That may be to your advantage. Talk to a lawyer.

</comment></comment></comment><comment><USER30> Something very similar had happened to me at my previous company. Our team was not as small as yours, rather pretty big.

So the story goes something like this. I was given stocks after having worked there for around six months. Their rationale behind it was that you need to earn stocks at [company] and I totally get that.

After a total 17 months at the company I decided that I wanted to leave and had a conversation with my manager regarding the same, they were ready to let me go. But they did not let me decide my exit date. My first set of options were set to mature in another week and they asked me to leave.

When I get my full and final settlement, I was given cash for my stocks. I wanted to exercise my options and keep them, but instead they cashed them out for me.

<comment><USER31> Hey, at least you got cash for them. :)

</comment></comment><comment><USER32> > everyone worked for more than half a year without salary

WHY WOULD YOU DO THAT?!? Sorry, that's not fair... Why would you do that without a _FIRM_ equity deal? Why would you get yourself into a situation that allows somebody to yank your share away having already worked?

If you happily work for somebody without anything in return, I'm afraid to say you deserve everything you get when they turn around at the eleventh hour and take the cheap way out.

There may be laws attached to this (IANAL) but really, you've earned a very valuable lesson here. Don't work unless you're contractually guaranteed something in return.

</comment><comment><USER33> Get a lawyer to draft a response asking them kindly to let you have the options anyways for their own reputation's sake.

They will be pressured by the fact that you are not willing to signed anything, you have the upper hand here.

Other than that, you deserve nothing. You stated your intent to leave, therefore there is no reason for the company to give you equity even though you worked very hard for it. They prefer to keep the equity for employees who would continue to work in the company.

As a founder, I wouldn't act like that because it is not nice, but it is the more rational decision.

<comment><USER34> _You stated your intent to leave, therefore there is no reason for the company to give you equity even though you worked very hard for it._

WTF? An intention to leave isn't the same thing as handing in your resignation. The guy worked for the equity he was promised and IF it turns out that they terminated him for no other reason to than to avoid giving him that equity, that's a clear violation of their agreement.

* They prefer to keep the equity for employees who would continue to work in the company.*

Sure and that's why vesting periods exist in the first place. But if they agreed to a one year vesting period, they have no right to punish this guy for not wanting to do more. You make an agreement, stick to it. FFS.

</comment></comment><comment><USER35> I know you're looking for advice, but I hope it all works out! :)

</comment><comment><USER36> Working for free for 6 months? Where can I find workers like you? I'll take a pack of 5. Seriously.

That said, I am sorry you are going through this. I know what it is like to believe in something. It's human to have hope for the future, but don't do this again.

When you work for free, you are establishing that you don't value your time. If your time is worth nothing, well then they don't owe you anything and that is how they see it.

</comment><comment><USER37> It hurt you to say that you were planning on transitioning out before hitting your cliff. That was a mistake.

</comment><comment><USER38> You were based in SF and then relocated? Was the company acquired before the relocation?

<comment><AUTHOR> They relocated to be closer to the target market, and we agreed I could work remotely with visits every few weeks

</comment></comment><comment><AUTHOR> I haven't signed the release

</comment><comment><USER39> Congratulations, you have experience. No, really, chalk this one up to experience and learn from it.

</comment><comment><USER40> _> I mentioned that I would like to transition out of the company_

put simply, you shouldn't have done that.

</comment><comment><USER41> And this is why you should never agree to a cliff. Your shares, if valuable to you, better start vesting from day one - especially if you have accepted lower compensation in exchange for more shares. Either that, or you want to negotiate some sort of a severance package BEFORE you join the company. Think about it: the company will try their best to have you accept the lowest dollar offer in exchange of equity in the distant future - what will you do to protect against the downside of losing your job in the less distant future?

<comment><USER16> I have never heard of, nor worked for, a company that offers vesting from day 1.

<comment><USER4> Another reason why it's kinda plain dumb to work as a non-founder employee at any startup except those on a clear exit path. Founders enjoy too many benefits and advantages. If the company succeeds, they become megarich while you cash in a nice bonus. If a founder underperforms, only rarely does a board take immediate action -- in sharp contrast to employees.

And like you said, employees vest slowly, while founder is usually vested on day 1.

<comment><USER42> I've been a founder twice, I had a vesting schedule for options and for founder's shares. Our investors insisted on it, for obvious reasons. We insisted on it because we wanted out founding team to play nice.

<comment><USER16> Thanks, I was going to say I thought this was the usual case, but I don't have direct experience. It's only fair to have founders vest too, so a co-founder who walks out after the first month doesn't walk away with a third of the company!

</comment></comment></comment></comment></comment><comment><USER43> Well, what do you want out of the situation?

If you had the honest conversation that you weren't happy, it sounds like you got what you wanted.

If you did/do still want equity, take the advice of others: Take all of your paperwork to a lawyer and stop talking to anyone else.

Personally (having just resigned <4 weeks ago, 10 days before my vesting), I think this sounds like the right thing to do. No reason to prolong an unhappy situation just to end up with equity when you want out anyway.</comment>


LG launches open-source version of webOS - <AUTHOR> https://sdtimes.com/os/lg-launches-open-source-version-webos/ <comment><USER3> Actually this is the second time webOS is open sourced.

First time was by HP after the acquisition and Palm more or less went _poof_ , just about 4 years ago.

In fact, the original repositories are still available on GitHub:

[https://github.com/openwebos](https://github.com/openwebos)

<comment><USER4> According to [https://pivotce.com/2018/03/19/open-source-webos-now- brought...](https://pivotce.com/2018/03/19/open-source-webos-now-brought-to- you-by-lg/) "they open sourced…well…bits and pieces of it back in 2012." So it wasn't a full release.

</comment></comment><comment><USER5> When I had to go from my Palm Pre to an android phone it was a giant leap backwards in functionality and usability. They got so many things right from the get-go with WebOS, but it would have had to have been perfect to break into the already existent duopoly.

The ship has long since sailed and android now is almost certainly better than WebOS ever was, but this does make me nostalgic.

<comment><USER6> Even beyond smartphones (I never used WebOS on a smartphone), it was amazing on the HP TouchPad. I acquired one after the fire sale and used it _waaay_ past it's EOL. Sad that it just stopped booting one day. :-/

<comment><USER7> I've got 3 of them in various states of working I'd happily ship to an enthusiast who'd value them. I've long since switched to the iPad Pro, but I'm too nostalgic to throw them away / recycle. What a wonderful device it was, just poorly price (before the fire sale).

<comment><USER8> Same - I have one from the firesale laying around, but can't bring myself to get rid of it. Was a really nice device, and the OS was a dream.

<comment><USER7> My kids loved it as I had it loaded up with their favorite Disney movies, and they had figured out how to operate the camera. The interface was simple and intuitive enough for a toddler to use. They still call the new iPad a "TouchPad".

I continued using it as a glorified e-reader until the Apple Pencil--taking notes and markup PDFs is what finally made me switch. I wouldn't go back as iOS has finally surpassed what Palm/HP had half a decade ago, but it still holds a place in my heart. Kinda like the Amiga, Commodore 64, and BeOS.

</comment></comment></comment></comment></comment><comment><USER9> Embarrassing admission: I still carry a Treo 700p running Palm OS 5.4.9. Not as a phone, I have my work phone for that. It's for carrying personal info. The OS fits me hand-in-glove so I love it.

I tried converting to Android but every app I tried (and I tried dozens!) either had some critical missing feature or cost too much. And the work phone is locked down, so I can't put any personal info on it.

So I have a bump in the left pocket and the work phone on the right hip. A Google Voice number as my personal "cell" which gets forwarded to the work phone.

I imagine I'll die with a Treo in my pocket. They're reliable, but if one breaks they're $15 on eBay in almost new condition. Since one can still find the original Palms also on eBay, I expect to be able to find replacements for one of the last Palms made for a lonnnnng time.

<comment><USER10> Your bigger problem is going to be EVDO networks shutting down...

<comment><USER9> I don't use it as a phone. It's just a classic PDA. Got the work phone and Google Voice for calls/Internet/email.

</comment></comment></comment><comment><USER11> The only way this becomes interesting is if you can deploy it to your TV. Then you could comment out all the "features" and dumb your TV down to where it's not spying on you and showing you ads.

<comment><USER12> In what application does a LG TV show you ads?

I get the spying part, as long as we talk about the standard "needs a internet connection to do whatever a Smart TV does these days".

Or is there more to it?

<comment><USER13> > In what application does a LG TV show you ads?

The home screen/main menu shows ads on the left hand side all the time.

In my case, in Australia, it's often "BigPond Movies" which I'm not a subscriber to.

See for example this screenshot from a review...

[https://www.idgcdn.com.au/dimg/1200x1200/dimg/img_20170518_1...](https://www.idgcdn.com.au/dimg/1200x1200/dimg/img_20170518_141717.jpg)

<comment><USER12> Interesting. No, I don't have that.

Maybe a country specific thing or even outright prohibited in Europe.

<comment><USER14> Probably just country specific, we have the ads here in Finland as well.

</comment></comment></comment></comment></comment><comment><USER15> For those looking for the source: [https://github.com/webosose/build- webos.git](https://github.com/webosose/build-webos.git) will get you started.

<comment><USER16> And also

[http://webosose.org/](http://webosose.org/)

</comment></comment><comment><USER17> This a solid five years behind schedule but I'll take it.

I believe any solid grab for a more open handset os starts here.

<comment><USER18> This is built on OpenEmbedded, which goes back to OpenZaurus, [https://en.m.wikipedia.org/wiki/OpenZaurus](https://en.m.wikipedia.org/wiki/OpenZaurus)

 _" In its original form, the project was a repackaging of the SharpROM, the Zaurus's factory supplied kernel and root filesystem image. In order to make the Zaurus's OS closer to the needs of the developer community, the SharpROM was altered through the use of bugfixes, software additions, and even removals in order to make the package more open.

The OpenZaurus project was revamped completely, becoming Debian-based built from source, from the ground up. Due to the change in direction, OpenZaurus became quite similar to other embedded Debian-based distributions, such as Familiar for the iPAQ. OpenZaurus, in its current form, facilitates an easy method for users to build their own custom images. The efforts of Openzaurus, along with other embedded Linux projects, were integrated into the OpenEmbedded Project, which now provides the common framework for these projects._"

</comment></comment><comment><USER19> I was among the first batch or two of webOS app developers in 2009 (into webOS' smartphone death in '12) and wow, this makes me nostalgic all over again. I'm going to need to have a look at this when I have some time.

Good to see LG keeping it even tangentially relevant.

</comment><comment><USER20> LG TVs thanks to WebOS are the only TVs with a software experience that makes sense. Cool to see this news happening.

<comment><USER21> I disagree, I feel LG has done a horrendous job on the software side -- always-on recording (illegally), ads that you cannot remove on their $5k flagship tvs, delays/loading times for plain menus.

<comment><USER22> where exactly are the ads? I have one and I've never seen an "LG ad". There are apps with adds(i.e. youtube) but it has nothing to do with LG.

<comment><USER23> I bought a 55C7V last year which shows ads. When you open the menu there are ads on the left side (usually for streaming services), and again in the app store at the top of the screen.

<comment><USER22> My LG is older(first OLED generation) so I guess that's why it doesn't have this new "feature". Ads in AppStore make sense but displaying them in the menu is outrageous.

</comment></comment></comment></comment></comment><comment><USER24> Easily my favorite smart TV UI I've ever been burdened with, for what it's worth. I doubt we'll see a smartphone push with it... but hey, a guy can hope for a new open source OS option.

<comment><USER25> Is there a premium TV brand where I can pay $100 extra to _not_ be burdened with smart TV features?

I just want an on/off button, a good panel, and a single HDMI input. The TV displays what comes in from the HDMI input.

From the searching I've done, apparently this is too much to ask for.

<comment><USER24> I've actually never had a hard time finding dumb TVs. (I have three 2015 model Samsung dumb TVs on my desk, the smart TV variant cost about $20 more per unit.)

Where it becomes unavoidable is if you want certain features. Like my LG is the last generation of 3D TV, and one of the only TVs with Passive 3D on a 4K panel. I found that all 3D TVs were smart TVs, but if you're just looking for a panel, numerous brands will sell you a panel.

Also, note that smart TVs are only "smart" if you connect them to Wi-Fi. It's not like they have cellular radios. Don't give them Ethernet or Wi-Fi, and they'll do pretty much just what you want them to.

<comment><USER25> I've seen smart TV's with annoyingly long startup times, more similar to a low end cell phone than a television, but I haven't investigated enough to know if that's a consistent issue across manufacturers.

<comment><USER25> Re: features, I'm planning to get 4K HDR for my next TV, which appear to be all smart. But all the smarts I need are already happening in my receiver and various devices connected through it, so anything other than displaying a single video input is unneeded (and unwanted).

</comment></comment></comment></comment></comment><comment><USER26> The whole build-system talks about using a Raspberry Pi, but what of existing webOS products?

I'd love to be able to have picture modes that would remove all image processing to reduce input lag, and get the image as intended, especially when I'm using the TV's native resolution.

Perhaps around here: [https://github.com/webosose/avoutputd/blob/master/src/video/...](https://github.com/webosose/avoutputd/blob/master/src/video/videoservice.cpp#L765)

<comment><USER27> I dug through some files in the build-webos repo and it appears that the raspberryPi is the only build target. I am looking for a pre-made qemu image so I can at least try out/look at webOS OSE. The README says the build needs 100GB of free disk :O

</comment></comment><comment><USER28> I have WebOS on my TV and it's the first "smart TV" software I've ever used that doesn't deeply offend me on a UX, UI, and implementation level. It's competent, pretty, intuitive, and unobtrusive. That said, I'm not sure what else it will be useful for.

<comment><USER29> In a more fair world, the Palm Pre would have taken Android's throne.

<comment><USER30> No fair world could have prevented the incompetent management that sealed the fate of WebOS.

</comment></comment></comment><comment><USER31> I really liked the HP tablet with WebOS, got it for $99 when they blew them out and it was useful for a couple years and then the web browser became too obsolete.

It would be interesting if some kind of political rift propelled WebOS back into phones.

<comment><USER32> Like, Google having too much power over manufacturers? Like LG?

<comment><USER31> Yeah imagine some mfgs saying enough is enough and Samsung and LG teaming up on a transition to WebOS across budget and flagship phones. They'd have enough power to gain meaningful presence in some countries. I think you'd probably need an Android sandbox to bootstrap any worldwide competitor.

</comment></comment></comment><comment><USER33> I don't have a lot experience with TV hacking, but would this be possible to build and run on my LG TV I have today or is this for legacy devices stuck with some special version of webOS? I think my TV currently runs webOS 3.0.

<comment><USER34> The update binaries likely use signing to prevent modification

<comment><USER33> Thanks for the reply. So basically the TV has to be jailbroken (kind of) before being able to flash it?

</comment></comment></comment><comment><USER35> With web assembly there really is a big opportunity for a browser based mobile OS like webOS or Firefox OS to potentially take off.

<comment><USER36> Not really. Firefox OS failed for market reasons (impossible to break through) and performance reasons, but those were DOM related, not JS related

<comment><USER35> JS performance leaves a lot to be desired and there are a mass of developers who won't bother if there is no escape hatch to get that performance when it's needed.

<comment><USER37> A lot of people get confused about JavaScript and DOM performance. Now, of course it's possible to write terribly slow apps in JavaScript, but the same is true for C.

When used properly, JavaScript can actually be quite speedy (but don't use it for huge calculations).

</comment></comment></comment></comment><comment><USER38> This is great to hear. I had an HP Touchpad and loved it.

</comment><comment><USER39> Good to hear - the HTML & JS approach as the entire mobile OS was a good 3-5 years ahead of it's time.

<comment><USER40> Then it subsequently had its time with Firefox-OS?

<comment><USER41> Maybe, but not in the way WebOS did it. Palm Pre devices weren't top of the line but they had enough power to run HTML and JS apps. FirefoxOS seemed to focus on devices that really didn't have enough power, with hardware designed to hit a price rather than any performance metrics.

There may not be a market for a straight-up Linux system with first-class HTML and JS apps anymore, but judging it based on FirefoxOS isn't really fair.

<comment><USER42> You must be remembering a different webOS than I am. I remember 20-40 second app launch times.

People love their rose-colored glasses.

</comment></comment></comment></comment><comment><USER43> I always thought webOS was really nice and ahead of its time. I assume making phones using this would be difficult without having good driver support from the hardware vendors?

<comment><USER44> Speaking as someone who has (a bit) worked with Firefox OS, the answer is very much yes. Also, that's only the start of your worries.

<comment><USER45> Curious what you think the problems are. Drivers are a huge one IMHO (as the parent poster mentioned). From a tech perspective, perhaps the biggest one. The only other tech major tech challenge I see is getting app developer support (basically, what killed Windows Mobile).

<comment><USER32> Baseband is one, if the other commenter doesn't get back to you.

</comment></comment></comment></comment><comment><USER46> "As we move from an app-based environment to a web-based one, we believe the true potential of webOS has yet to be seen." \- [http://www.lgnewsroom.com/2018/03/webos-enters-next-phase- as...](http://www.lgnewsroom.com/2018/03/webos-enters-next-phase-as-global- platform-under-lgs-stewardship/)

But I said this in 2015.. "The web will eat up everything, watch." \- [https://news.ycombinator.com/item?id=9458505](https://news.ycombinator.com/item?id=9458505)

Enyo was/is truly a pioneer in the field of web technology. It still is and I believe it's magic is just being under utilized at the moment.

Though, haven't used my LG devices in years :(

I worked at Office Depot and got my hands on a few of the early Palm devices, Pilot, Tungsten3T and then then the European only Pre3. The integration with the Touchpad was underwhelming though and a real disappointment.

<comment><USER47> Nokia was the first one to try with their web runtime for Symbian, I am still awaiting for web apps to match in performance my daily Android, UWP and iOS apps.

I would already be happy if webgl demos that keep being regularly posted here would run as smooth as my OpenGL ES native ones.

</comment></comment><comment><USER48> > As we move from an app-based environment to a web-based one

This is very exciting. I was saddened when Firefox quit its web OS initiative. Similarly when they removed the ability to create application shortcuts - chrome also seems to be de-emphasizing them.

I'm a believer in the web becoming the future of apps, and by extension the operating system. Apps are in a sense today's Flash - closed, proprietary, custom, prettier, faster. As the web catches up - it's getting there - <USER2> free, open standards and develop-once-guaranteed-to-deploy-anywhere characteristics will win out.

I'd say this reasoning was the main catalyst for Apple killing Flash, and why they only allow their own rendering engine on iOS (chrome on iOS, for example, uses the same internals as Safari).

<comment> yoz-y The main difference though is that flash was the resource hog in the old world and now it is the web. Until we have way more energy efficient CPUs this will remain a problem. I have since given up on HTML rendering getting more optimized.

</comment></comment><comment><USER49> Concerning another dead mobile OS, I never understood why Microsoft did not try to spin off or open-source their mobile effort.

In fact, the rationale for killing it seems an example of corporate waste: it had user base in double-digits in mid-size markets like the UK and a growing base in major non-North America markets. Why not let it grow outside of America?

It was also an OS ahead of its time, at least in terms of the UI. Where else can I pin a huge preconfigured icon to the main screen to quickly activate it when I'm in a rush? Where else I don't have to scroll through the endless list of tiny icons to find what I want?

<comment><USER50> Much the same as iOS exists as a fork of OSX and shares the kernel and a lot of userland frameworks, Windows Phone 8 and 10 were just forks of Windows and shared the kernel and even more of the userland. It's unlikely Microsoft would want to open-source that.

<comment><USER49> That sounds plausible but they do collaborate with the .NET open-sourcing efforts, that could be an opportunity for them to test new waters.

</comment></comment></comment><comment><USER51> Where would this be used in 2018?

I'm curious to understand the corporate motivation here... do they see specific use cases that the market is demanding that open source WebOS can meet?

<comment><USER47> Yet another horse on the IoT OS race.

[http://www.lgnewsroom.com/2018/03/webos-enters-next-phase- as...](http://www.lgnewsroom.com/2018/03/webos-enters-next-phase-as-global- platform-under-lgs-stewardship/)

</comment></comment><comment><USER52> webOS on their TVs isn't to bad. I just wish more companies developed apps for it. Roku is fantastic, but it'd be a bit cleaner if everything was just integrated into webOS.

That said, I do have a nagging feeling that the interface could be improved if it looked a bit more like Roku's. Some people complain that Roku's is archaic, but it's perhaps the most navigable I've come across.

</comment><comment><USER53> I hope that means someone could implement 120hz 1080p over HDMI on 2016 models. I have a B6 and that is the most missing feature which 2017 models have. It should be doable since the TV can interpolate to 120hz internally. 2017 models support 120hz 1080p having practically the same panel afaik.

<comment><USER54> Yes but sadly there will never be a way to actually install binaries built form this source code onto actual LG TV products.

</comment></comment><comment><USER55> LG should buy back Palm trademark from TCL and make it a premium brand in its mobile portfolio.

</comment><comment><USER56> Nokia and webOS Team should team up: Indestructible Hardware meets indestructible software.

<comment><USER57> Nokia no longer build their own phones, it's Foxxcon nowadays.

</comment></comment><comment><USER58> I hope they fix that bug where when I press up at 18th channel it goes to 23 and then if I press down it goes to 22.

And if I eant to go to 5 from 6 by pressing down I need to wait 15 seconds. If I don't wait it skips 1-5 range and lands on channel 1300 something.

</comment><comment><USER47> This just sounds as a way to try to make anyone besides LG to actually bother to try to target webOS, or yet another attempt to gain a foothold on the new IoT OSes fight for market share.

</comment><comment><USER59> i hope one can install open webOS on old LG TVs (2014/2015)

</comment><comment><USER60> 5 years too late

<comment><USER61> webOS was first open sourced 6 years ago.

[https://www.phoronix.com/scan.php?page=news_item&px=LG- webOS...](https://www.phoronix.com/scan.php?page=news_item&px=LG-webOS-Open- Source-Edition)

<comment><USER60> It doesn't matter - webOS died the day Palm was sold to HP.

<comment><USER62> Sad but true</comment></comment></comment></comment>


Preserving Laptop Stickers – A Post Factum - <AUTHOR> https://grh.am/2019/preserving-laptop-stickers-a-post-factum/ <comment><AUTHOR> This is a retrospective on the original post here: [https://news.ycombinator.com/item?id=20405957](https://news.ycombinator.com/item?id=20405957)

It got enough attention that it only seemed fair to give this a real chance, and for that, I decided to try out Kickstarter.</comment>


Understanding C by learning assembly - <AUTHOR> https://www.recurse.com/blog/7-understanding-c-by-learning-assembly <comment><USER2> There are two levels of deepening your understanding of C.

Level 1 is what this article describes: your eyes are opened when you see how various features of C map naturally onto things that are simple/efficient in hardware. You see a pointer dereference and in your head you think "aha! load instruction." You understand that there is a real difference between "char ch[10]" and "char ch[10] = {0}" \-- the latter emits extra instructions to zero out the memory.

Level 2 is when you realize that the optimizer is free to screw with all your intuitive ideas about C -> hardware mapping that you learned about at level 1. You learn that writing _correct_ C means that you need to think in terms of the abstract machine that C defines, and not assume that any specific C statement will translate to the assembly code you expect. You can't think "pointer dereference means load instruction", you have to think "pointer deference reads an object."

There's nothing wrong with level 1, as long as you don't stop there!

<comment><USER3> Great point. It's also worth remembering that optimizations such as floating point at O3 will trade away accuracy for speed. C compilers are willing to give you... the wrong result... but faster than ever! Undefined behavior is another fun line of inquiry. Best to learn about the dark corners and avoid them where possible.

<comment><USER4> No, you don't get inaccurate floating-point results just by using a higher level of optimization. For example, gcc requires an explicit -ffast-math option for that kind of optimization.

</comment></comment></comment><comment><USER5> Assembly has one huge advantage over C: no undefined behavior. What you see is what you get. There's none of the it-might-work-for-years-before-betraying-you worry when you deal with assembly. Even if you need to think about multiple machine types, you can think about the finite set of machine types you care about, and not worry about some abstract ideal of portability that will cause the C compiler to do strange things ([http://blog.regehr.org/archives/213](http://blog.regehr.org/archives/213)).

Unfortunately, this advantage means you can't understand _all_ of C just by understanding assembly, even though C programs turn into just assembly at bottom.

 _Edit_ : after the responses below I've been (re)reading [https://www.scss.tcd.ie/John.Waldron/3d1/arm_arm.pdf](https://www.scss.tcd.ie/John.Waldron/3d1/arm_arm.pdf) and [http://www.intel.com/content/dam/www/public/us/en/documents/...](http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures- software-developer-instruction-set-reference-manual-325383.pdf). And marvelling.

<comment><USER6> > Assembly has one huge advantage over C: no undefined behavior.

In the olden days, maybe, but nowadays? No way. As the most extreme example: forget to use memory barriers when you should? Congratulations, the OOO nature of modern day CPUs means your code may not execute identically on all platforms. But even lesser things can impact you: instructions that were cheap become expensive, or suddenly registers that you know you weren't supposed to touch but did (and that happened to work) suddenly don't because a library got changed, or half a dozen other things.

With assembly on a modern CPU, congratulations: you have eliminated one level of abstraction. But there are still many, many turtles to go before you're really all the way down.

<comment><USER7> > instructions that were cheap become expensive

Agree.

At which point, C gives you a huge advantage. Sure, you can hand write assembly, but I bet the libc implementation you're linking against has optimized to death with intimate knowledge of timing sequences and inner state of the processor from the processor vendor. I would expect a company like Intel to contribute patches to glibc (GNU libc) based on running functions from the standard library on a very very expensive FPGA (or just expensive- software simulation of hardware).

Memory ordering operations are an advanced topic; I have a copy of C++ Concurrency in Action, currently sitting on my bookshelf, that has a chapter explaining the concepts. Should be a fascinating read!

<comment><USER8> Agreed. I think there's no clearer example of C giving you an advantage than integer division by a constant. Even on architectures where it's supported (x86), the divide instruction is really slow. The standard approach is to use the Hacker's Delight technique to convert the division into a fixed-point multiplication and shift. All production-quality compilers will do this for you by generating the magic number, but if you're doing it yourself in assembler you'd have to look up the magic number and shift. Lots of assembly language programmers won't even bother doing this and will just write "idiv" in x86 (or "bl __divsi3" on ARM), which slows down their programs.

</comment></comment></comment></comment><comment><USER9> I don't think the article is aptly titled, which is too bad, because literally "understanding C by learning assembly" is actually a terribly wrong-headed idea.

The article is rather about exploring a particular C run-time at the assembly language level, and a tutorial about stepping through programs at that level.

This is something useful that would-be developers need to learn, the main reason being that programs sometimes fail in ways such that uncovering the root cause requires a trip through that level. Other reasons are that in some situations we need to _verify_ that programs believed to be correct at the source level are actually being translated in the way we expect.

<comment><USER10> I agree with the wrong title for that article,

But, why do you think that understanding C by learning assembly is a terribly wrong-headed idea?

Some professors tend to disagree and prefer a bottom up approach of learning. The main advantage is : you get rid of the "magic" of computing.

[http://www.ncsu.edu/wcae/WCAE2/patt.pdf](http://www.ncsu.edu/wcae/WCAE2/patt.pdf)

[https://www.youtube.com/watch?v=J926i6MwRpo](https://www.youtube.com/watch?v=J926i6MwRpo)

<comment><USER11> The thing is, C does contain quite a bit of "magic" built into the transformations a compiler is allowed to do to your constructs. A mental model of C built on the mapping to assembly is appealing, but leads to false intuition when reasoning about the language's rules, which occasionally has disastrous effects.

Just as an anecdote, I have seen a surprising number of C programmers assume that the language's type aliasing rules are related to or somehow governed by pointer alignment, when these are entirely separate. The former exists to facilitate analysis and optimization at the compiler level -- there is no "ground" reason. It's important not to get trapped in the portable assembler mindset and lose sight of an entire level of transformations that might not have an intuitive relationship with hardware.

</comment></comment></comment><comment><USER12> Alternatively: Understanding C by writing a compiler.

<comment><USER13> Strong agree. Everyone should do this at least once in their career.

<comment><USER14> What resources would you recommend to get started with?

<comment><USER15> The "Dragon Book" is pretty solid and a widely accepted resource: [http://en.wikipedia.org/wiki/Compilers:_Principles,_Techniqu...](http://en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Tools)

<comment><USER16> One of the authors of the Rosalyn compiler has a different opinion: [https://news.ycombinator.com/item?id=5149315](https://news.ycombinator.com/item?id=5149315). And he gives some examples of much better books.

It used to be good, but it is not any longer thought of that way.

<comment><USER13> I think you'll learn more from porting a simple C compiler than you will from any compiler book, at least given a fixed amount of time to do either task in.

<comment><USER16> This book, [http://www.amazon.com/Compiler-Generator-Automatic- Computati...](http://www.amazon.com/Compiler-Generator-Automatic-Computation- McKeeman/dp/0131550772), which by today's standards is not a very good book, got me started in my compiler career.

And I agree with your basic point that building one is the only to gain true understanding.

</comment></comment></comment></comment></comment></comment></comment><comment><USER3> I agree with kazinator: the title doesn't reflect the work. I bet I got something that does: Write Great Code [1]. Hyde helps a programmer understand how the compiler converts most imperative language features to assembler if it's doing it in a direct, lightly optimized way. It often gives C code next to assembler code along with optimizations you can do in assembler but not C. He also wisely created a High Level Assembler that embeds 3GL-style constructs and libraries in assembler code to help beginners learn it piece by piece instead of all at once. Enjoy!

[1] [http://www.plantation- productions.com/Webster/www.writegreat...](http://www.plantation- productions.com/Webster/www.writegreatcode.com/index.html)

</comment><comment><USER17> Another article by the same blog titled "Learning C with gdb" was posted 3 days ago with 24 comments:

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

</comment><comment><USER18> Learning NIOS ASM was great for learning how to code functional languages too. When you see how much overhead is involved in languages like C for recursive functions that have a simple algorithm, then you start to appreciate the power of functional languages!

</comment><comment><USER19> Did anyone encounter this error when trying to run gdb with the example progams written in this article?

The error: "Unable to find Mach task port for process-id 13942: (os/kern) failure (0x5). (please check gdb is codesigned - see taskgated(8))"

</comment><comment><USER20> One nitpick here, if you want a generator style function, you need a struct to hold the state, not a static local variable. Otherwise you're limited to one global function. I can't think of a valid use case for static local variables.

<comment><USER21> they are nice if you want to switch the behavior of a function at runtime with a debugger. I use them a lot when tweaking the constants in GUI layout code. But I have them behind a macro that switches "static" to "const" in optimized builds.

</comment></comment><comment><USER22> This is actually how my school's ECE department teaches C and lower level hardware. Its quite nice, actually.

</comment><comment><USER23> I started with assembly when I was 10. Self taught C at the age of 12. I learned that speed of development is more often the bottleneck than speed of execution...

</comment><comment><USER24> Appreciating C by learning assembly</comment>


AV referendum: Yes campaign handed thumping defeat - <AUTHOR> http://www.guardian.co.uk/politics/2011/may/06/av-over-yes-campaign-routed

<comment><USER2> I suspect that the Guardian's editorial staff may have acted like a spy in the camp throughout the election period. The rest of the media, I could understand: but the Guardian seemed to like AV as much as the Telegraph or the Mail, and that I could not understand.

When even the BBC and internet news sources started to speak up against AV, I had a feeling that we would soon see the baby flying out along with the bathwater: and so, indeed it came to pass.

A sad day, that the British public would reject innovation in favour of an old, failing system. I'd rather have had the new system; the politicians' unfamiliarity with it meant that they could not game the system with the same expertise as they all now have with First Past The Post.</comment>


Google Chrome Now Blocks Insecure Scripts on HTTPS - <AUTHOR> http://google-chrome-browser.com/google-chrome-now-blocks-insecure-scripts-https

<comment><USER2> I like Chrome's ongoing attempt to push forward security where it's obviously deficient, but I'm worried that that we'll start getting warning-weary with all these drop-down bars telling us that something _might_ be awry. Any site that has Java already gets one of these on Chrome, now this will pop up, seems like it will just train users that the only way to get their web content to display properly will be to click "yes! run it! dammit, just let me see my stuff because i couldn't care less what you're telling me!" I'm not quite sure what a better UI solution would be however...

<comment><USER3> It's not a UI problem, it's a user problem. Users will always click "Yes, allow" to everything without even reading it, be the message in dialog box or notification bar or a demon holding a flashing neon sign.

It's a big problem, but it's more about users compulsively clicking Yes and not so much about Chrome's UI.

<comment><USER4> Wait a minute, what the hell do you think got them in the habit of compulsively clicking "yes"? It's interfaces like this, which offer a question for which the correct answer 95% of the time is to click "yes".

I'm not saying that I have a better idea about how to do it, but this is UI designers reaping what they have sown.

<comment><USER5> The correct answer isn't to click "yes", the correct answer is to click "no". The problem is that the correct answer doesn't give someone access to the content, and many, many sites are not in a position to do things correctly or don't understand what the correct thing to do is (I don't know why this is the case), so if the user wants to make any progress at all, even if they end up doing so insecurely, they have to answer in whatever way allows them to make progress.

<comment><USER4> Well, I'm not sure I agree. The correct answer is determined by how much they care about the risk that someone might be feeding them a malicious script. I think most users care more about the convenience of accessing their favorite site with full functionality than this security problem, as demonstrated by most people's totally lax regard for security in other ways.

(Of course, I'm sure that most users have no idea what clicking 'yes' entails -- I'm just proposing that if they did, they would probably click 'yes' anyway.)

<comment><USER3> No, you're wrong. If a site has users that don't care about security at all and are happy to have their accounts compromised, the site shouldn't even be using SSL in the first place.

<comment><USER4> Isn't it perfectly plausible that 80% of a site's users don't give a hoot about security, but 20% do? I don't see any reason not to give the minority SSL (hopefully compromised minimally by non-SSL resources) regardless of whether the majority cares.

<comment><USER3> | SSL (hopefully compromised minimally by non-SSL resources)

There's a reason browsers don't display a secure logo on HTTPS connections with non-HTTPS resources: it's not secure. It's not "minimally compromised", it's compromised. If my server has one service with one vulnerability, it's not "minimally vulnerable", it's vulnerable.

| I don't see any reason not to give the minority SSL

I was being sarcastic.

| Isn't it perfectly plausible that 80% of a site's users don't give a hoot about security, but 20% do?

It's not even about the users. _The site should not ever be mixing HTTP with HTTPS on the same page._

<comment><USER4> Yeah, I agree with that. It's a stupid problem, but the problem exists, and until we are allowed to forcefully seize the servers of people who implement shitty software and fix the problems, it won't go away, so it's worth trying to do the best thing possible for users.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER6> One of the side effects of this that I've seen is on sites that are on <https://> but offer embedded YouTube and other such scripts that are coming from <http://>

Basically... I'm seeing this message crop up wherever I see embedded media.

Message is: Even if your site doesn't need <https://> , if you're going to offer widgets and embedding you better offer a <https://> option for those.

<comment><USER7> YouTube does provide SSL for embeds. Many sites just don't use it.

</comment></comment><comment><USER8> I would go one step further and block form input when you are on an HTTP site, to forms that go to HTTPS. This would end the charade of "secure" log-ins on an HTTP page by forcing the login page to be an HTTPS page.

<comment><USER9> can you explain how this is a charade? I would think that posting my username & password from a http site to a https site still does ssl negotiation before sending that username and password along a network pipe. Doesn't sound like a charade to me.

<comment><USER10> The only problem is that someone can MITM your connection to the http page and send you back javascript that steals your password.

<comment><USER11> Or just change the form so it POSTs to their secret evil server, rather than to the secure site.

</comment></comment></comment></comment><comment><USER12> Harsh, when this hits the stable build, but a good thing overall. Web security really is a frightening place, this will help encourage at least a chunk of it to improve.

<comment><USER13> IE has been doing the same thing for years.

<comment><USER14> It has, but I bet this has trained a lot of Windows users to just click OK because it's another thing that gets in the way of loading a page…

At least Chrome's interface for this makes it less obtrusive than a pop-up dialog.

<comment><USER15> In IE9, the mixed content warning is not modal. It blocks insecure content by default, with a notification bar that allows the user to allow mixed content.

<comment><USER16> IE9 hasn't been out for 'years' though.

</comment></comment></comment></comment></comment><comment><USER17> <http://news.ycombinator.com/item?id=2662694>

</comment><comment><USER18> The important thing with features like this is that you can't allow the user a way to disable it.

If it can be disabled, the first people who disable it will be developers, who will proceed to continue building websites that pop this up for everybody else, oblivious that it's pissing off every one of their users.

We already went through this cycle once with javascript error popups. Developers turned them off, then pasted in crappy 3rd party dhtml menu code, which in turn threw up warnings for every regular user to come down the pike.

These warnings need to be prominent and painful. And they need to stay that way for everybody, otherwise they'll just be an annoyance for non-savvy users, rather than an incentive to fix the 400 million sites that are currently getting this wrong.

</comment><comment><USER19> This can only be considered as a good thing. Chrome is innovating, and pushing all the other main browsers to do the same and become more secure. If anything I think that Chrome is helping Google's Apps (Gmail, Calendar etc) to run smoother across the board on all browsers.

</comment><comment><USER20> That's were relative URLs without a scheme come in handy, e.g. "//www.example.com/example_file.js"

If the current page is served over https, it will load scripts using https. If it's served over http, it will use http.

[http://stackoverflow.com/questions/550038/is-it-valid-to- rep...](http://stackoverflow.com/questions/550038/is-it-valid-to-replace-http- with-in-a-script-src-http)

</comment><comment><USER21> We just need to start doing //:domain.foo/script.js (protocol relative URL)

</comment><comment><USER22> I've been puzzled for years about why Chrome ever allowed this. IE always blocked such scripts. It makes no sense to block a whole page that has an invalid cert with a warning but display no warning at all to a user (other than losing the green on the URL) when a valid HTTPS site loads an insecure script in the background.

</comment><comment><USER23> This has been annoying to me, since Google Reader doesn't have a valid cert (sometimes) so I always get that message.

<comment><USER24> Nope. Google Reader is fine. But the RSS entries that it's displaying sometimes other resources from the original blogs. For videos or click tracking, this sometimes is JS.

Before the change, it just put the browser into mixed-content-mode, but now it does that and in addition it disables loaded JS.

I think it should block it without the error message though.

<comment><USER7> The problem with not having an error message is then content disappears and users will have no idea. Not a good experience.

</comment></comment></comment><comment><USER25> this is truly nonsensical. How am I supposed to server my YUI files ?</comment>


Exploring Expressions of Emotions in GitHub Commit Messages - <AUTHOR> http://geeksta.net/geeklog/exploring-expressions-emotions-github-commit-messages/ <comment><USER2> A new commit verification product was born inspiried also by this research...[https://goo.gl/bGfFBw](https://goo.gl/bGfFBw)</comment>


How to use your iPad as an email notifier - <AUTHOR> http://www.vikasing.com/2014/01/how-to-use-your-ipad-as-email-notifier.html

<comment><USER2> wat</comment>