Glassmap (YC S11) Launches A Better "Find My Friends" - <AUTHOR> http://techcrunch.com/2012/02/16/yc-backed-glassmap-launches-a-find-my-friends-for-facebook-users-on-iphone-android/

<comment><USER2> It's nice, but they're going to have a really hard time competing with Latitude and Find my Friends, given that they're baked in.

 _there's also a company philosophy that realtime location sharing is the future. They believe that startups like Foursquare, which requires manual updating, represent out-of-date technology._

While I'll agree that check-ins are a little messy, they represent an important difference that goes unmentioned- I check in when I want people to know where I am. At all other times, my location is unknown.

That's important to me. I don't want everyone knowing where I am on demand- not that I'm doing anything shady, but it just weirds me out and I don't see the benefit in it. Glympse and my own project, Taxonomy (<http://www.taxono.my>) do selective sharing- I manually choose who I want to share with, and when. For me, that's much better. But maybe I'm not representative of most people?

<comment><USER3> I think I agree with you for the most part.

I do use Find My Friends for two reasons, one is to share my location with my very, very close friends (4 people) as I really don't care if they know.

Second, my wife is a teacher at an inner city school here in Atlanta. The school is located in a pretty bad area, and I like to know she made it to/from school safely.

Beyond that, I don't use it for anything else. I do find apps like foursquare/path much more interesting from the sharing a location standpoint.

</comment></comment><comment><USER4> Deriding Foursquare as "low tech" reminds me of Balmer bragging about how you could use Zune's wifi to share a song with a girl and Steve Jobs suggesting you just give her one ear bud.

<comment><USER5> So his message is basically that Microsoft users are creepy beta orbiters who have to send songs to girls on the Internet, while Mac fans are suave lotharios who get to enjoy actual physical proximity with girls instead? Good marketing there...

(We all know what Unix people are up to: arcane invocations to fsck daemons to gain access to remote mounting privileges _shudder_ ).

</comment></comment><comment><USER3> While I do think it's a step up from Find My Friends in that you can share your location with people who aren't on iOS, is the underlying technology really any different than Find My Friends?

When I pull Find My Friends up, I'm fairly certain it's doing exactly what this "killer feature" relay technology is doing. The app tells me when the location was last grabbed, and it appears to refresh a friends location when I ask to to rather than a continual update (where the user's phone is pushing its location). Although, I may be wrong about how the Find My Friends app works.

<comment><USER6> That's definitely what FMF does. If you happen to be watching your phone when somebody else tries to fetch your location, you'll see the location services icon appear in the status bar for a couple of seconds while it does its thing. It's not transmitting anything about your position except when people are actually looking for you.

</comment></comment><comment><USER7> I dont understand why they would drop out of school for this. Seems like its been done before and the appeal is supposed to be that it doesnt drain your battery as fast ?

I think they need some new features or something to pull people from Loopt, Tagged, etc. I dont see why they couldnt do this while in school. To each their own though

<comment><USER8> tl;dr: skating to where the puck will be, not where it is now.

I think they are positioning themselves for the ubiquity of location-based technologies.

By the end of 2013 I fully expect more energy efficient solutions to geolocation to be integrated in cellular phones or whatever we may see in terms of wireless connectivity. I also suspect there will be a social acceptance, if not necessarily embrace, of LBS. But in order to take advantage of the opportunity, they actually need to be in the field.

The technology is emerging: [http://eetimes.com/electronics-news/4236252/TI- announces-fiv...](http://eetimes.com/electronics-news/4236252/TI-announces- five-radio-combo-chip)

</comment></comment><comment><USER9> I'm really not seeing the value in the app. Sure, the potential for revenue is huge through location-based advertising, but as an end user I can't see myself using this more than once or twice.

It's also kind of creepy. Granted, it's opt in, but given enough social pressure lots of people who would normally not use something like this will opt in reluctantly.

The "relay" system sound ingenious though. One project I worked on last year had to do with location based messaging. The problem that we had was with battery life and the fact that updating location passively is a huge battery drain. Although it was just a proof of concept app, we probably should have spent more time looking at the problem from another angle like these guys.

</comment><comment><USER10> Glassmap seems to have a lot of overlap with Loopt and I'm curious if it ever becomes a delicate situation when YC (or any startup fund) invests in competing/overlapping/replacement companies.

(apologies if YC no longer has an interest in Loopt)

<comment><USER11> YC would be able to invest in very few companies if it avoided companies that compete/overlap.</comment></comment>


Ask HN: Money or Growth: what is it right to focus on? - <AUTHOR> Hey there!
Six month ago I had to make a choice if I should try to get initial traction on US market or just make money on my local market. We didn't have any investment and our burn rate was about $4000-$5000/mo. So all that time we were focusing on revenue but not growth. In our case we could start selling just in local market, not in the US.
Despite being profitable (we've made $33 000 and our costs have been $24 000), we don't have growing customer base and every single deal takes huge efforts.
At the moment we have some competitors which have awesome growth rate (more 300% per month), but they are still not making profit. Probably if we had not focused on making money on local market, we would have been out of the game. However for investors we are not interesting and I feel that we've spent too much time on product features.
So my question is what is better for startup: growth or making money? <comment><USER2> For a startup growth.

But, most new businesses are not startups in the way "startup" is defined in Silicon Valley and among seasoned venture capital investors. Outside of those communities, people use "startup" as a synonym for "new business". Ordinary people may call new restaurants and new architecture firms and new Ebay storefronts startups.

To put it another way, any business that is deciding between profitability and growth probably isn't a startup in the narrow sense in which organizations like YCombinator use the term. There are profitable startups, but they're profitable and growing.

There's nothing wrong with not being a startup in the narrow sense. Odds are that the competitor growing at 300% with no profits will run out of money and die. Most startups in the narrow technical sense do.

On the other hand, being a startup in the technical sense can provide access to investors seeking to maximize returns through equity growth rather than continuous cash flows...i.e. venture capital. For a company that wants to grow, this is a better alignment interests than with investors seeking dividends.

Finally, investor interest is not a good target. The target should be user interest. Building features should make customers happy. Making existing features better is an alternative that may make customers even happier. The goal is to make the product better.

A product can be good and not work in the US market. But it's more likely that a good product for a local market can be adapted to it.

Good luck.

<comment><AUTHOR> Thanks alot for the full answer and many great ideas. I agree with an idea that not every new business is a start-up, but in our case we are SaaS startup in YC definition of that term ) After some intern discussions we decided to combine money making and growth as much as possible.

</comment></comment><comment><USER3> if you can't get investors the answer is obvious you need to make enough to cover expenses. then, if you can afford it reinvest in growth that's up to you.

But if your not making 3x times what it costs to get a customer than you might want to question your business. factor in time too.

<comment><AUTHOR> We are not profitable, but we cover your costs. Thanks!</comment></comment>


Life on the Infinite Farm [pdf] - <AUTHOR> https://www.math.brown.edu/~res/farm.pdf <comment><USER2> I wonder what the intended age group is. These animals are a bit scary - imagine an infinite row of sharp teeth and infinite number of tentacles going after you (on the bright side it would take infinite time to mobilize them all);

i got scared by the yellow submarine as a kid, interesting if real kids like it.

<comment><USER3> > _I wonder what the intended age group is_

Stoned grad students? ;)

</comment></comment><comment><USER4> While I thoroughly enjoyed the piece, I am not sure how much an untrained mind would appreciate the whole idea.

I can't really judge without going through the material that accompanies the slides, but I am really skeptical about what a normal child takes away from this.

<comment><USER5> I'm a relatively intelligent adult who hasn't previously considered any of these problems or spent much time thinking about infinity. This was perfect for me, I developed an understanding of the problem and solutions in a short amount of time. It was a great read and I felt like I learned something, not sure I can ask for more...

I guess what I'm saying is I'm not sure this is even targeted at children.

<comment><USER6> Meh, infinity is not a number. If you want kids to look at it like a mathematician you just need to show infinity as a process and leave Lovecraft horror behind.

Here is a circular track. Little ant walks around it counting every number. Where does he stop? Well he never stops!

What happens if he needs to two bags. Well if he picks the first up and leaves the other while counting he will never go back. But, he if picks one up moves it an inch, goes back to the other then they both keep moving forward without stopping.

You can't say he stops sooner without the bags because he never stops! You can say he moves faster without the bags.

PS: If you use this mental model you realise the cow walking forward would never stop stepping into the next set shoe. It would look like a wave where you have infinity and a wave heading at it, but never reaching it. Thus, your not adding 1 to infinity and she never stands on more shoes or adds more legs.

</comment></comment></comment><comment><USER7> I didn't realize someone slipped acid into my coffee this morning.

This was a book of nightmares. Something about the drawings was a bit unsettling, especially the person at the end.

</comment><comment><USER8> My personal favourite to illustrate infinity (as possible) and some math concepts around it is still the video "How To Count Past Infinity" from Vsauce:

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

"This is math, not science." (~12:30)

</comment><comment><USER9> This has been going around the internet as an example of when trying to teach kids fun facts slips into terrifying Lovecraftian evil.

</comment><comment><AUTHOR> This is an overview of the mathematics of infinity, lovingly illustrated with examples like an infinite cow, an infinite chicken, bubblegum... It's a curious transmission from a more chaotic universe.

</comment><comment><USER10> Cute alternate version of Hilbert's grand hotel.</comment>


Ask HN: Anybody else annoyed by lever.co job ads? - <AUTHOR> Is anybody else annoyed by lever.co job ads?
https://imgur.com/a/r4gH9
they state that they are hiring "an" engineering manager as part of a "50/50 men and women team"
well, is this a male quota job or a female quota job?
I am all for diversity and all, but this is a pretty big signal of discrimination.
Paraphrasing Bill Clinton: "I am a male that works in Silicon Valley, and we all know what that means"
Just bums me out to see it in my face. <comment><USER2> As a dude who works for a SV company, I know how good I have it.

</comment><comment><USER3> Big signal of discrimination, trying to keep societies ratio in their offices? C'mon!</comment>


Must-See Tech Talks for Every Programmer (2014) - <AUTHOR> https://www.ybrikman.com/writing/2014/05/29/must-see-tech-talks-for-every-programmer/ <comment><USER2> Any suggestions for more recent must-see tech talks?

<comment><USER3> I enjoyed "The Hard Parts of Open Source" by Evan Czaplicki (the creator of the Elm programming language) a lot. [https://www.youtube.com/watch?v=o_4EX4dPppA](https://www.youtube.com/watch?v=o_4EX4dPppA)

It's not a talk about technology, but it's a talk on people _in_ technology. As an open source enthusiast, I found the discussion very important, especially in context where we easily tend to be distracted by technical details.

</comment></comment><comment><USER4> I would love to just read a summary of the talks - has anyone done something like that?</comment>


Ask HN: Which subreddits do you follow? - <AUTHOR> Let's compile a list of subreddits that are likely to appeal to the HN crowd. <comment><USER2> Hmm...

With the amount of time I am on reddit, I find myself in /r/all a lot of the time as I am addicted to information - so I am not a good example. Though I do use RES to filter out /r/ and words I am not interested in or I find offensive.

I also mod on an /r/ or two - but they have nothing to do with HN.

</comment><comment><USER3> Not technology related, but /r/listentothis is a great way to find new music with a fairly eclectic mix. For gaming related news and discussion, /r/games is a good alternative to the image macro flooded /r/gaming.

</comment><comment><USER4> Mostly a mix of art/music subreddits, and /r/programming, /r/php, /r/AskScience, and /r/DepthHub on my iPhone. AlienBlue is a really nice app.

</comment><comment><USER5> /r/programming

/r/malefashionadvice

/r/design

/r/designthought (little discussion but good links)

/r/truereddit

/r/science

/r/scifi

</comment><comment><USER6> /r/python, r/linux, r/programming, r/askreddit, r/askscience

</comment><comment><USER7> /r/technology /r/Science /r/todayIlearned /r/pics

</comment><comment><USER8> /r/sysadmin /r/minecraft

</comment><comment><USER9> /r/programming /r/python

</comment><comment><USER10> /r/javascript

</comment><comment><USER11> In order of frequency of new posts (popularity\number of active subredditors):

/r/wallpaper

/r/wallpapers

/r/linux

/r/raspberrypi

/r/commandline

/r/perl

/r/bash

/r/debian

/r/solaris

/r/openbox

<comment><USER12> It's /r/raspberry_pi, BTW.

</comment></comment><comment><USER13> /r/machinelearning

/r/metal

/r/semanticweb

/r/programming

/r/csbooks

/r/compsci

/r/seduction

/r/doctorwho

/r/guns

/r/libertarian

/r/economics

/r/mathbooks

and a few others that I check in on from time to time.

</comment><comment><USER14> /r/programming

/r/netsec

/r/gaming

/r/askreddit

/r/starcraft

</comment><comment><USER15> /r/programming

/r/technology

/r/science

/r/GetMotivated

/r/funny

/r/AskReddit

<comment><USER16> /r/askscience /r/business</comment></comment>


BackgroundCount - display char count in textarea using Google Chart API - <AUTHOR> http://github.com/Bjoern/BackgroundCount/tree/master

<comment><AUTHOR> A direct demo can be seen in the form at the bottom of my last blog post: [http://blog.blinker.net/2009/06/05/creating-twitter-this- lin...](http://blog.blinker.net/2009/06/05/creating-twitter-this- links/#twitterThisFor)</comment>


Why You Shouldn't Force Yourself to Be a Morning Person - <AUTHOR> http://www.fastcompany.com/3048806/most-creative-people/why-you-shouldnt-force-yourself-to-be-a-morning-person <comment><USER2> I'm traditionally a night owl myself, but I'm trying to change. Mostly because I'm paid by the hour now, so I can go to the office and wakup /there/ at 7:30 :-)

Problem is, I'm often still up at 1am, so waking at 6:30 is a bit of a strain, I have to 'recover' by waking at 11am on the week-end :-) I tought my sleeping pattern would adapt gradually, but really, it doesn't -- I can still do a 3am- er -- but I'll be shattered the following day, as in my 'old days' I'd have gotten up at 11am...

But, the further point they talk about of having a few quiet hours in the morning is something I'm starting to appreciate. My office is generally very noisy (bleeping open spaces) and the hours between 7:30 and 9:30 is a bliss!</comment>


Sorry, Shoppers, but Why Can't Amazon Collect More Tax? - <AUTHOR> http://www.nytimes.com/2009/12/27/business/27digi.html

<comment><USER2> Sigh, why should amazon do anything wrt taxes except minimize costs to their customers, maximize profits, and be legal? What they are doing is legal. Their competition is doing the same thing.

Why do reporters continue to blast big companies for "not paying taxes" instead of blasting the government for not requiring that the companies do?

<comment><USER3> Sadly, this isn't even your average reporter. The author, Randall Stross, is a Professor of Business at San Jose State.

What I don't get is why he's angry at Amazon. Sales tax is levied against consumption on a _buyer_. It's just that states can force sellers in their own jurisdiction to collect it at the point of sale. For purchases made out-of- state, states already have a mechanism for collection: use tax. I find it a bit disingenuous that he doesn't even mention this. Why force the burden on companies when it's a tax against people that they're not paying.

Shouldn't he be angry at all the shoppers who aren't helping "avert layoffs of schoolteachers and firefighters and, yes, professors at state universities" by not filing their use taxes?

<comment><USER4> _Shouldn't he be angry at all the shoppers..._

He might as well be angry at rainclouds.

Tax policy is often designed to allocate tax burdens where they are easy to measure and enforce, rather than where they 'theoretically' should be triggered. Requiring millions of shoppers to record and pay their 'Use Taxes' would be an onerous requirement; requiring merchants to collect 'Sales Taxes' is relatively easy and indeed already traditionally done, even by Amazon.

So it makes perfect sense to focus on bringing cross-state retailing into the sales tax regime, rather than scolding shoppers about use taxes.

<comment><USER3> Of course it is. If governments didn't force employers to withhold income, I doubt income tax revenue would be nearly the same. And paying use tax is pretty much a joke.

My point is that he's using vitriolic language to accuse Amazon unfairly (who are abiding by the current commerce laws) when the same could be said about the shoppers (who are not). Attacking either won't lead to an acceptable solution.

I don't think we should interfere in interstate commerce at a federal level. Rather the states that care will need to form a solution for all out-of-state commerce taxes, something that's happening anyways.

</comment></comment></comment></comment><comment><USER5> I'm a small government, anti-tax guy, but discrimination against bricks & mortar businesses seems quite unfair. Why should the tax I pay on a new computer vary based on how it is delivered to my home? Also, a sales tax is probably the fairest known model of taxation and is least susceptible to manipulation. To further the "Amazon should tax" argument, one could also make the case that the sales tax becomes quite regressive when upper-income people shop online but poor people (because they don't have credit cards, etc.) primarily buy from a local store.

Certainly, Amazon must resist collecting sales taxes until all online/catalog retailers are required to collect them -- anything less would lead to a shareholder revolt.

<comment><USER3> _Also, a sales tax is probably the fairest known model of taxation_

My understanding is that it is one of the most _unfair_. Poorer people will lose a greater percentage of their income to sales tax than richer people because certain consumptions aren't elastic to increasing income. Now some states won't collect sales tax on items deemed "necessities" but the classifications can get tricky and imo just leads to inefficiency.

Like you said, sales tax can be considered a form of regressive tax: <http://en.wikipedia.org/wiki/Regressive_tax>. How is that then fair?

<comment><USER5> You are right that it tends to be slightly regressive w.r.t annual income. However, every dollar earned that is eventually converted into something tangible must be taxed. So, it's eventually flat if earnings are ever enjoyed.

Is flat fair? There's nothing inherently "fair" about a zero second derivative. I'm actually ok with some sort of government rebate for the first N dollars of taxation to reduce the burden on America's (relatively) poor people.

<comment><USER3> Except that the rich or even moderately well-off never convert even close to all their money into something tangible while the poor almost always must immediately. The rich don't live paycheck to paycheck. They save, invest, go on vacation, etc. They defer the second taxation (sales/use) to a later date or place -- they have choices where the poor do not. So while it might seem flat theoretically, it becomes regressive quickly.

But we probably agree on more than we disagree. I actually agree that flat isn't fair and that the current situation isn't fair to b&m stores either. I just don't think the solution is to interfere with interstate commerce. States need to enforce use taxes, or if that turns out to be unenforceable, which I suspect it might, rethink their taxation strategy.

By the way, not sure why you were downvoted. I upvoted to correct that. Thanks for the discussion -- it got me thinking about this situation quite a bit.

</comment></comment></comment></comment><comment><USER6> Small point, but

 _If the complexities that its retail competitors have mastered really are an insuperable difficulty for Amazon, it could contract with a commercial vendor that specializes in these calculations, like Vertex, as Netflix does._

What the hell is Stross's point here? If Amazon has deliberately masterminded an enormous sales tax loophole they undoubtedly are not confused or unwilling to deal with the complexities of tax law. By ignoring the obvious subtext with which the Amazon spokesperson suggested "simple" and "fair" taxing schemes for all business models Stross is only making a fool of himself while undermining the entire shoddy article.

</comment><comment><USER7> As others point out, what Amazon does is probably legal. It's also probably required; as a publicly held company they're required to pursue the best return possible to investors. Stepping up to pay a tax that's not legally required would violate that duty.

I think the states can make a good case for requiring mail order consumer businesses to pay sales tax. Bezos says that his employees and business don't receive services from states, but they do. Without functional streets it would be impossible for Amazon to have their products delivered, at the prices they currently charge. Less directly, police and fire services ensure that their customers and contractors can operate safely and with minimal disruption. More abstractly, a functioning economy and legal system promotes the economic well being of its citizens, without which Amazon could not function. At all.

<comment><USER8> Streets aren't paid for by sales tax. They're paid for with taxes on fuel and vehicles paid by the companies making deliveries in the state.

<comment><USER9> Only partially, use taxes cover about 50-60% of the costs for roads IIRC, the rest comes out of the general fund.

</comment></comment></comment><comment><USER4> Stross only has <1000 words here, so he leaves out other parts of the case for Amazon paying sales taxes. These include:

\- Amazon has commissioned retail sales staff -- via their Associates program -- in every state

\- if distant sellers have a cost advantage from arbitrary tax loopholes, then real non-replenishable resources (like fossil fuels, clean air) will be consumed chasing those advantages. If prices indicate the real inputs to a sale, resources are better allocated.

\- a broader base for the sales tax would mean less pressure for the rate to rise to make up shortfalls (partially due to commerce moving online). Yes, governments are voracious and irresponsible but dynamically in the long run, more entities paying means a lower rate, and a larger constituency to lobby against rate hikes. Currently, Amazon could secretly be cheering every rise in California sales taxes. (That is, we should prefer to have Amazon on the "pro low taxes for everyone" team, rather than the "pro low taxes just for those with intricate interstate legal arrangements" team.)

</comment><comment><USER8> Sorry tax happy states, probably because it's an unconstitutional violation of the commerce clause. Perhaps it's time to cut worthless social programs.

<comment><USER9> _Perhaps it's time to cut worthless social programs._

Which worthless social programs should be cut?

<comment><USER10> <http://www.ebudget.ca.gov/Enacted/agencies.html>

We'll, I'm not sure we should be spending $12B on higher education. Let's convert that to freely available online courses. If people want the full in- person college experience, then maybe they should pay for it themselves?

We aren't getting our money's worth out of the $4.6B for the Legislative, Judicial, and Executive line item.

$32B for Health and Human Services is full of charges to cover illegal aliens that the Fed can't (or won't) keep out of the country, but California has to (or chooses to?) cover the bill. We can't afford it. Tort reform would help too, if there is anything California can do on its own about that, I'm not sure.

And finally, I'm certain every other line item not mentioned has the usual government overhead, most of which could be privatized to save more money or simply cut to a certain extent.

<comment><USER9> _We'll, I'm not sure we should be spending $12B on higher education. Let's convert that to freely available online courses. If people want the full in- person college experience, then maybe they should pay for it themselves?_

Isn't that a bit simplistic? Sure, one might make the argument that a Literature or History major might be okay with only online courses but there are any number of fields (engineering among them) where a hands-on approach is essential to understanding the material. "Pay for it themselves" just means that only the rich will be able to afford college. It's in the state and national interest for us to be able to train engineers, so certainly the state should be supporting higher ed. As for the amount, $12b divided by 132k positions = $92k/position (which also includes energy costs, rent, etc). You think it's too much?

 _We aren't getting our money's worth out of the $4.6B for the Legislative, Judicial, and Executive line item._

How much should a body that governs the worlds eighth largest economy cost?

 _$32B for Health and Human Services is full of charges to cover illegal aliens that the Fed can't (or won't) keep out of the country, but California has to (or chooses to?) cover the bill._

Specifics?

* Tort reform would help too*

Specifics? And what would this involve cutting?

<comment><USER10> _$12b divided by 132k positions = $92k/position (which also includes energy costs, rent, etc). You think it's too much?_

Those 132k positions also include support staff as well as junior colleges. Yes, $92k/position _average_ is too much. I also highly doubt it includes any form of rent, since the gov't probably owns all of the land it uses for schools and would have made a killing on it.

 _How much should a body that governs the worlds eighth largest economy cost?_

I suppose that would depend on what that body _does_. We're currently spending 3.8% of the budget on this governing body, which seems awful high to me. Drill into the line item, it'll blow your mind:

Judicial Branch: 2,001 people, $2.2 Billion budget. That's over a million dollars per person, per year, average!!!

 _Specifics?_

My mistake for touching this political hotbed, but if you haven't heard of illegal aliens obtaining free health care in emergency rooms, there is plenty of info on the net about it.

 _Tort reform. Specifics? And what would this involve cutting?_

<http://en.wikipedia.org/wiki/Tort_reform>

Basically, malpractice insurance is a huge cost, some doctors pay more for that than they take home in pay. Not to mention unnecessary tests that are performed simply for protection against lawsuits. Tort reform ultimately cuts payments to lawyers. But, congress (both state and federal) is full of lawyers.

I'm not hopeful for tort reform. Congress doesn't have a history of passing laws that negatively impact themselves personally. They've even exempted themselves from the "universal healthcare" legislation: <http://online.wsj.com/article/SB124536864955329439.html></comment></comment></comment></comment></comment>


Show HN: PJON – Communications bus system for Arduino - <AUTHOR> https://github.com/gioblu/PJON/blob/master/PJON.cpp

<comment><AUTHOR> Hi there I wrote in years of trial and error PJON library for my home home automation project. It is a multi-master, single wire, addressed and checked communication protocol and is designed to be an alternative to i2c, 1Wire, Serial and the other Arduino compatible protocols with the addition of all the functionalities you need to fastly bring working a multipurpose embedded devices network. It was a really enourmous physical and mental effort of years to bring together all the knowledge and code skills to let all this work, so I hope could be useful for all Arduino users. Please feel free to suggest and crytic if necessary and if you can TEST IT would be an enormous pleasure!!!

Have a nice summer! :)

<comment><USER2> Thank you, this may be exactly what I need for a project!

<comment><AUTHOR> Its a pleasure!!! Please try it and write me an email if you have some problem email@example.com

<comment><USER2> If I understand correctly, PJON is not directly a replacement for the 1-wire bus as it does not specify pull-up/-down hardware that would be necessary for using VCC as the physical communication medium, right?

(Which means that I would need to define/implement this part myself.)

<comment><AUTHOR> Hi raphman_2 yes there is not the functionality of 1wire you are speaking about! I never had time to dig further and work on this functionality. In any case would be amazing to add it in PJON. But should be taken into account the duration of 0s and probably a capacitor to rectify input voltage. I generally use a single pulldown resistor on the bus to reduce interference.

</comment></comment></comment></comment></comment><comment><USER3> RC4? Please don't. Use e.g. NORX for an embedded-friendly cipher that isn't dangerously insecure.

<comment><AUTHOR> Hi creshal, I started from the RC4 implementation but remains not much of it and also i further fuzz information using a initialization vector after RC4 like procedure.

You think is so holed? Considering what u can do with an ATmega 328. (Most you can do with this computation power can be in any case holed fastly with a laptop)

</comment></comment><comment><USER4> > _One of the first tests I suggest to try with PJON is to let two arduinos > communicate through your body touching with the left hand the port of the > first and with the right the port of the other arduino. It 's stunning to > see more then 90% of accuracy for this digital communication doing all that > path inside a biological body. This opens the mind to possible creative > solutions; generally the average reaction is like: "lets use the car frame > to let all the digital embedded systems to communicate together" and so > on..._

Hmmm... I guess I'm not the first to think that my home plumbing would be the perfect transmission medium to gather data from temperature sensors.

<comment><AUTHOR> It's absurd to see the level of advance in technology we can use and work with and the level of advance of our houses and transportation systems.

</comment></comment><comment><AUTHOR> Thank you for your suggestion. Take a look if you can to the crypt() function, I use on top of a modified version of RC4 the use of 1 byte initialization vector to further fuzz information (the iv is trasmitted with the string).

I am not so much into cryptoanalysis so, I really should have some suggestion in this case.

</comment><comment><USER5> This is really awesome. I tried to make something like this once since I needed multi-master with like 50-60 attiny chips with poor time consistency etc, but never really got anywhere... This looks like exactly what I would have liked

<comment><AUTHOR> Thank you earlz. Try it if you can and contribute if you want to expand the features contained in PJON. I am really happy to have this type of feedback from the hacker community :) thank u guys/girls really!

</comment></comment><comment><USER6> I know its not very important for automation, but what are the defining factor to arrive at that bandwidth?

(If I were you, I wouldn't even maintain the two modes - the bandwidth difference is not that big)

<comment><AUTHOR> Hi! I have a test sketch, it runs for 10 seconds and a transmitter send a string made by ID + LENGTH + 10byte string + CRC + ACKNOWLEDGE. The transmitter counts every correct and mistaken reception by the receiver:

What I mean with practical bandwidth is the byte sum of all the correct packets received that are useful (so the ID, LENGTH and ACKNOWLEDGE are not counted) / 10 (seconds of test) and so you get how many correct and useful bytes/s you can send in the fastest setup (for or while). The absolute banwidth is the total byte count wihtout no exception.

You are right the difference is not enormous. fast_mode is quite near to the limits of delayMicroseconds(), micros(), function execution time. I left a standard_mode with a really solid behaviour to let people use PJON also with boards without an external oscillator (like using internal PPL clock to 16mhz on ATtiny) or equipped with ceramic resonator that is less precise in timing.</comment></comment>


Date/Time Inputs Enabled on Firefox Nightly - <AUTHOR> https://blog.nightly.mozilla.org/2017/06/12/datetime-inputs-enabled-on-nightly/ <comment><USER2> I'm curious about Japanese support which I think goes beyond locale.

Japanese often uses 24 hour times like 18:00 vs 6:00pm and while I see you can specify valid times in that format I didn't see how to get it to display 18:00 instead of 6:00pm.

In the forms on this page

[https://developer.mozilla.org/en- US/docs/Web/HTML/Element/in...](https://developer.mozilla.org/en- US/docs/Web/HTML/Element/input/time)

When I typed 20:00 it assumed that first 2 meant 2am and then jumped to the minutes section as soon as I typed 2. Note: My system settings are set to use 24 hour time.

Worse, Japanese times are often in terms of the night before. So for example if you look at movie times a movie playing at 1:00am Saturday morning is listed as 25:00 Friday night.

I wonder if input type=time is probably going to cause more trouble than it's worth

<comment><USER3> One problem with internationalisation attempts is that most of the committees that have control over these things are from the Americas or Europe and so speak a Romance language natively and almost certainly speak English well (if not natively). There is nowhere near enough input from languages and cultures that might not fit European norms. There's a great article about a similar problem in Unicode:

[https://modelviewculture.com/pieces/i-can-text-you-a-pile- of...](https://modelviewculture.com/pieces/i-can-text-you-a-pile-of-poo-but-i- cant-write-my-name)

<comment><USER4> 24h clock is very common in France, and other European countries as well

<comment><USER5> French Canada as well, and probably other members of the francophonie.

</comment></comment></comment></comment><comment><USER6> It looks like the date is displayed in the US format mm/dd/yyyy which is, of course, most unnatural to all other countries. Is this customizeable, or is it automatically adjusted depending on the language preferences in the browser? If it's the latter, it's not cool - my preferred language for the browser is English, but I hate the US date display format with passion.

EDIT: oh I see, automatically adjusted, but not configurable. Bad choice it is, then.

EDIT2: I mean, there are so many more better and easy solutions to that problem. You could display a date with a month name in the selected language - "Oct 1, 2017" \- or start with a year "2017-10-01" which would be instantly recognizable by anyone regardless of the country.

<comment><USER7> That's an awful shame. I can't really see myself using this when authoring websites as long as it has that behaviour. If I am authoring a Norwegian web site, the date format must be Norwegian, regardless of the user's preferred locale.

<comment><USER8> I build interfaces for Norwegian web applications pretty often. Why must the date format be Norwegian? Obviously this is just the form field, you shouldn't actually store the data as displayed. I typically store UTC/ISO strings for all dates, but in this case I would store it in whatever format I needed (such as the Norwegian format), regardless of what the format was on the form. Never trust client-side, right?

<comment><USER9> I build Danish self service web applications, and from my perspective I would always want to control that date formats fits the displayed language.

Why must it then be in Danish? Because we would rather optimize for Danish users who for some reason have gotten the wrong browser version / localization settings and don't know how to change it.

An English speaking user would be much better served with a dedicated English version than just the date format being correct - if they can overcome the language barrier, surely they can overcome the date format.

</comment></comment></comment></comment><comment><USER10> What is the reasoning behind the decision to not make localization configurable?

Can we agree that some webpages and webapps have already make the decision to control the locale through the app and not choose the environment default?

My OS and browser locale is pt-BR, but if for whatever reason I am not happy with a pt-BR UX, which is often, I want to be able to change it on a case by case basis.

For example, any documentation I look up, like say on MDN or AWS, I want to see it in english and not a poor/incomplete translation. If I play a Star Wars game on my browser or phone I do not want any translations, I want the original terms like scoundrel instead of the translator's choice of terms.

It is already bad enough as it is for the reasons I pointed out, now we are gonna have that same nightmare in forms as well?

Sure webapps that actually care will find a non standard way, as they already do, but then we are not actually improving when in 2017 you have to load 3rd party libs just to be able to choose the locale of a date input.

<input type=date> (environment default)

<input type=date locale="pt-BR"> (actual chosen locale)

Is that too much to ask?

<comment><USER11> I wouldn't want websites to overwrite my locale setting like that.

<comment><USER12> I want the content, number formats, date formats, map labels, etc. on my website to all use the same locale. Date input widgets are no exception.

I can't afford to give full support to all locales (translation costs are ridiculous), so detecting and supporting the user's locale seems to be pointless unless they happen to be using one of the limited set I can give full support to (en-CA and fr-CA in my case). It seems like a far better idea to allow the user of my website to choose one of the supported locales, and see everything in the same consistent format than to have a few input widgets on each page decide to configure themselves based on the locale the browser was compiled with.

Edit: also, consider testing. Am I supposed to download a bunch of variants of Firefox to test my locale support?

<comment><USER11> > I can't afford to give full support to all locales (translation costs are > ridiculous)

Even if your page isn't translated I would still want the dates to be localized. I understand English, but not the US time and date formatting.

<comment><USER12> That's a problem we already deal with by having labels for the date inputs which explain the expected format. This is especially necessary in Canada, where until recently there was no recommended format, and the government recommendation isn't even well known yet much less universally used. So, depending on what part of the country you live in, you'll expect a different date format, even though you're technically using the same locale.

So, to do what you want, I'd have to make different versions of all the supporting documentation for each possible date format, and then get each version translated.

Also, displaying the dates the user just entered in a different format is a usability problem. (Users will complain. A lot.) So, if I did what you want, I'd likely be asked to display all dates, everywhere on the site, in the format the browser happened to be compiled with. This is possible for dates in the database, but not so much for dates in static content like news releases.

Just to be clear: I have no objection to making it easy for a website to have date input widgets which use the user's locale. I just want it to be equally easy for a website to have date input widgets in a specific locale. For example, how am I to make a website comparing date input widgets for different locales?

<comment><USER11> > So, to do what you want, I'd have to make different versions of all the > supporting documentation for each possible date format, and then get each > version translated.

??? I'd never said that I wanted a label explaining the date format for me.

> For example, how am I to make a website comparing date input widgets for > different locales?

The input widgets return ISO 8601 regardless of the locale. Or what do you mean?

</comment></comment></comment></comment></comment></comment><comment><USER13> I think the idea behind a native datepicker for <input> fields is good. But the fact I can't customize the design and UX of the datepicker interface, it always ends up being replaced by some javascript library where I can.

Same goes for the <select> input. The native one is usually always replaced by a custom designed one.

<comment><USER14> Agreed. You should really be able to fully style those inputs with bare CSS. Would make life so much easier!

<comment><USER15> Okay, please write a proposal for how to select parts of this widget with CSS. Remember, it must be compatible with all major browsers and across all formfactors (mobile, desktop, 10-inch, automotive, etc.). I'll schedule an appointment for a review in 2020, since I don't expect you to be finished earlier than that.

<comment><USER16> There are already ways to style native UI widgets, you can even style scrollbars...

<comment><USER11> Styling scrollbars isn't really supported in Firefox IIRC. I hope it stays that way.

</comment></comment></comment></comment></comment><comment><USER17> Statements like this show how ambiguity creeps in:

 _All dates and times will be converted to ISO 8601 format, as specified in the spec, before being submitted to the web server._

Are you going to be appending a Z? Adding the browser's timezone? Adding T00:00:00Z to the dates? What? No clarity at all. You can't just hand wave and say 8601! 8601!

Also, we've had date and time pickers for over a decade now and this clearly doesn't meet the need.

It's such a shame that this is the standard they come out with.

<comment><USER18> First things first: The scope of this control is to let you pick a time, the hour and the minute of a day. Possibly from a native widget (i.e. on mobile it pops up a clock where you have to select an hour and a minute). It is then submitted _without_ a timezone, not +0, just without.

The timezone is simply out of scope for this, and with good reason: Presumably the time a user enters will be interpreted in one of two ways:

* A javascript application running in the users browser, which already knows what the users _current_ timezone is.

* An application running on a server somewhere, which will have the information of "a user submitted a time without a timezone", which is valuable information and very often that is exactly the correct way to interpret a time.

In the case very it's absolutely necessary to know the exact timezone a user wants to specify, it's very easy to add a widget to let a user specify the timezone. But I feel that's something that is much, much less common than letting a user set a simple time, so it makes sense to optimize for that.

<comment><USER17> First things first: I'm talking about the date picker

The time picker has it's own problems, like the Oh, So Useful! seconds part. And that most people use drop-downs for this, but they say entering a time by hand is better (when it's not).

A lot of my client work at the moment is within the entertainment industry where obviously we need to pick times all the time. Both startups I work with use hour dropdown, [00, 15, 30, 45] minute drop down. One uses 24 h, one uses an AM/PM dropdown. You don't want people typing 12:07:03.

That time picker is not fit for purpose and I wouldn't be able to use it.

(Also, you don't seem to acknowledge this is a _form_ control and you shouldn't need to use javascript to muck around with it before submitting it).

<comment><USER18> > First things first: I'm talking about the date picker

But then why are you complaining about the timezone ? A datepicker doesn't need a timezone.

Or are you under the impression that ISO 8601 requires a Time component?

In case you are, you are mistaken: ISO 8601 requires no Time. "2017-10-23" is perfectly valid according to ISO 8601 and it's also precisely what is submitted by the browser.

I don't really understand your comment about the specific allowed time format. It's obvious that every application will have different validation- requirements, that doesn't negate the usefulness of having a dedicated time input. Especially on mobile, getting a simple native time input widget seems like an advantage for many cases. If it doesn't work for your use-case then just don't use it. It exists to support, and if you already have a solution that is better, that's good, no?

EDIT-start _I wrote this next part not realizing that the UI for the timepicker is not enabled in this version of Firefox, please ignore._

      But just for completeness sake, you can let users enter increments of [00,  15, 30, 45] like this:

        <input type="time" name="time" step="900" />

      The value 900 comes from 15 times 60 seconds.

EDIT-end

As for your comment about my mention of javascript, I think you overread that I wasn't advocating "mucking around" I was merely pointing out the context of a serverless javascript application.

<comment><USER17> It doesn't require it, that's the ambiguity. Damn, I find you frustrating. Are they just sending yyyy-MM-dd or are they adding 00:00:00. Or worse 00:00:00Z. Or even worse 00:00:00+0700? They don't say! It's the most important functionality of the date picker and the author, who was probably the developer, seems unaware of how critical spelling out the _exact_ response type is.

We're talking about a FORM control, a fundamental HTML technology that doesn't need JavaScript enabled. We're talking about specific implementation of a spec that they didn't spell out, skip over as if it didn't matter, and could alternately make the control brilliant or utterly useless.

And no, it's not good that they add an inflexible, broken, time control that you have to type and almost no-one will be able to use. Because now they won't try and make a decent one.

<comment><USER19> _> Are they just sending yyyy-MM-dd_

Yes! If they say that a _date_ is to be in the ISO 8601 format, a reasonable person would assume that this means the ISO 8601 _date_ format.

 _> or are they adding 00:00:00. Or worse 00:00:00Z. Or even worse 00:00:00+0700?_

No! That would be the ISO 8601 _datetime_ format! Why would you assume that they would use the _datetime_ format for a _date_?

 _> They don't say!_

If they said that dates are converted to RFC 2822 format, would you be griping about whether they were sending email@example.com? No, because it would be obvious from context that it means RFC 2822 date format, not RFC 2822 address format.

Maybe there is a little bit of potential for confusion, because they say "All dates and times will be converted ...", rather than making separate statements for dates and times. But when they say "as specified in the [spec](hyperlink- to-the-spec)" 4 words later, a reasonable person might head over to that spec to clear up any confusion or questions about the behavior.

 _> We're talking about specific implementation of a spec that they didn't spell out, skip over as if it didn't matter_

The did spell out the spec! They included a direct hyperlink to the spec; that link was even _in the part that you quoted_. And since when is a _blog post_ expected to spell out every little thing that is included in the spec that it's talking about? Especially when every third paragraph says "as specified in the spec" with a link to the relevant page in the spec?

</comment></comment></comment></comment></comment></comment><comment><USER20> I know everyone's ticked off about the "US defaults" but it's released in a development / testing browser, not the typical Firefox release. They'll likely do adjustments based on feedback. I hope it becomes configurable. Definitely easier than importing some external libraries though.

Given how this was setup in a nightly release they're very likely to start out "a little broken."

Really glad this is finally being added, I'm sure there's other features some of us wouldn't mind in HTML out of the box.

Update: Realized it's released on nightly not "Developer's" edition.

<comment><USER21> I'm not sure it's true that they'll adjust to feedback. Chrome has already shipped a similar feature, and it has identical problems, IIRC. I think it's quite likely Mozilla will just ship whatever is closest to Chrome's behaviour, regardless of user feedback.

<comment><USER22> Well, Firefox is not Chrome. Firefox usually supports things more completely than Chrome, partially because that's just what they do, they safeguard webstandards, so delivering a standards-compliant browser is a main-goal, but in large parts also because the community will make Mozilla go the extra mile with code contributions, if they don't do it themselves.

And a Mozilla dev, Manishearth, has commented above that he is in fact currently looking into making it configurable.

</comment></comment></comment><comment><USER23> > Note that there is no picker for <input type=time>. We decided not to > support it since we think it's easier and faster to enter a time using the > keyboard than selecting it from a picker.

I wasted about 2 minutes trying to figure out how to input seconds in the embedded example. Turns out it was am/pm. Maybe the picker can be a simple drop-down list.

<comment><USER24> I'm on Fx 56.0.1, but I already enabled the date/time functionality in about:config (key: dom.forms.datetime).

I think you can enable the time picker by toggling dom.forms.datetime.timepicker on. It's on for me, but it isn't the default.

</comment></comment><comment><USER25> This feature has already ridden the release train (currently in 57 beta) [1] and should be released with Firefox 57 next month.

[1] [https://www.mozilla.org/en- US/firefox/57.0beta/releasenotes/](https://www.mozilla.org/en- US/firefox/57.0beta/releasenotes/)

</comment><comment><USER26> I know "finally" is a tech cliche but it feels like this has been a REALLY long time coming.

Very thankful we're starting to see this work roll out!

<comment><USER27> First released in Opera 10 in 2009, it seems odd that this feature would take 8 years to develop, considering the proliferate JS+DOM implementations in the wild. I wonder what kept it.

<comment><USER26> Priorities I guess...

<comment><USER28> I'd say localization.

<comment><USER29> Judging by the lack of format customization and Gregorian-only support, I doubt i18n was the delay. ;)

<comment><USER26> To be fair - that covers all areas the ISO date format covers.

</comment></comment></comment></comment></comment></comment><comment><USER30> Nice, but why <input type="date"> expects U.S. format 'mm/dd/yyyy' instead of native format used in my system?

If it falls back to default format, at least the default could little bit more universal/stanard, e.g. 'yyyy-mm-dd'.

Edit: Even after switching my preferred language from English to Finnish in browser settings, the format stays 'mm/dd/yyyy'. I'm using Finnish region in my OS settings as well.

<comment><USER31> Many english speakers use en_US by default since it's the thing that breaks the least, so using the native format of the system is not useful. It should use ISO-8601 (yyyy-mm-dd) unless someone explicitly sets it in about:preferences.

<comment><USER30> > Many english speakers use en_US by default since it's the thing that breaks > the least, so using the native format of the system is not useful.

Sorry, I'm not following you. Every application should use the format defined in OS settings, that's the point of the system setting, why should browser be an exception?

<comment><USER32> Most people intentionally set their locale wrong, to en_US, because a lot of apps simply do not have actual locale support, but try to do something when presented with a non-en_US locale.

<comment><USER33> I cannot remember an app that did not support dd/mm/yyyy format. It is the _first_ thing a non-US English speaker will complain about.

<comment><USER34> dd/mm/yyyy is indeed what I'll complain about: that's as unclear as possible. Did the author mean dd.mm.yyyy or mm/dd/yyyy?

<comment><USER35> DD/MM/YYYY is more widely used than the US-only MM/DD/YYYY. Ultimately, ISO 8061 (YYYY-MM-DD) is the only really usable one.

<comment><USER34> Nope, you're thinking of DD.MM.YYYY - using the USian separators with the European date ordering is a recipe for trouble. Agree on the ISO form.

<comment><USER35> We use DD/MM/YYYY in Australia. I can definitely agree that it adds to the confusion. ;)

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER14> OMG this feels like it should have been here AGES ago! Would have saved a lot of pain and jquery-plugin problems...

Great to see it here! I hope it spreads to other browsers quickly.

<comment><USER36> > I hope it spreads to other browsers quickly.

It is in other browsers for years

<comment><USER37> Except Safari iirc :(

<comment><USER38> Or IE11: [http://caniuse.com/#feat=input- datetime](http://caniuse.com/#feat=input-datetime)

</comment></comment></comment></comment><comment><USER39> This is very nice, but the system LC_TIME locale (and whatever the equivalent is on Windows) exists for a reason. I hope Mozilla will listen to the feedback in all these comments and consider basing the picker type on the system time locale – not on the language locale, and certainly not on the locale of the downloaded binary.

I use most if not all software in English, but I prefer seeing dates in the ISO format, weeks starting from Mondays and times in a 24 hour format.

<comment><USER40> Does having your weeks start on Monday get confusing at all? I guess I'd just find it weird to have Thursday be the middle of the week instead of Wednesday. I also just find dates weird in general since it seems to use 1-based indexing whereas time uses 0-based indexing. First month and day of new year? 01-01. First hour, minute, and second of new day? 00:00:00.

<comment><USER39> > Does having your weeks start on Monday get confusing at all? I guess I'd > just find it weird to have Thursday be the middle of the week instead of > Wednesday.

Quite on the contrary! Wednesday is still in the middle of the working week, leaving the two day weekend kind of as a special separate thing. :)

</comment></comment></comment><comment><USER41> TIL you can render HTML from your address bar:

data:text/html, [Your HTML here]

<comment><USER27> You can also render any format, including binaries, by base64 encoding the file contents.

data:text/html;base64,[Your base64 encoded HTML here]

data:image/png;base64,[Your image data here]

The latter is extremely common for embedding static resources directly into HTML pages. To the point there JS APIs the form obj.toDataURL()[0]

[0] [https://developer.mozilla.org/en- US/docs/Web/API/HTMLCanvasE...](https://developer.mozilla.org/en- US/docs/Web/API/HTMLCanvasElement/toDataURL)

<comment><USER42> > The latter is extremely common for embedding static resources directly into > HTML pages.

What's the benefit of this? I get that it reduces the number of HTTP requests, but it also fails to cache the resources, so you're betting on the client never requesting that image again (and the client may be a proxy server, right?). It also makes a right mess of your markup, if that's something you care about.

<comment><USER43> They can be embedded within a resource that is cached (e.g., an HTML page or CSS stylesheet).

<comment><USER15> For an example, see the SVG icons embedded in this CSS: [https://fsfw- dresden.de/theme/css/fsfw.css](https://fsfw-dresden.de/theme/css/fsfw.css) (search for ".logo-twitter", for example)

</comment></comment></comment></comment></comment><comment><USER44> Hopefully it will stop people implementing their own date/time pickers which only allow changing that date/time by clicking up/down arrows. In particular the Munich transport website (mvg.de) is guilty of this and I absolutely hate it with a passion.

<comment><USER15> Of course it won't. Public service providers in particular need to provide compatibility down to the likes of IE 7.

<comment><USER18> To be fair, there would be a relatively easy way to test for support to implement a fallback.

      var el = document.createElement("input");
      el.type = "time";
      var supported = (el.type == "time");

If only there wasn't a bug on firefox mobile that would return "text" even if the input field type is supported.

... mhmmm webdevelopment...

</comment></comment></comment><comment><USER45> I wonder if this had anything to do with Microsoft, Google, Mozilla, etc. recently deciding to consolidate web documentation at MDN. [https://blog.mozilla.org/blog/2017/10/18/mozilla-brings- micr...](https://blog.mozilla.org/blog/2017/10/18/mozilla-brings-microsoft- google-w3c-samsung-together-create-cross-browser-documentation-mdn/)

Since I recently tried to implement a date input and was shocked to discover that Firefox didn't support it, despite being in 'their' docs. [https://developer.mozilla.org/en- US/docs/Web/HTML/Element/in...](https://developer.mozilla.org/en- US/docs/Web/HTML/Element/input/date)

<comment><USER46> Every article (where applicable) should have a browser compatibility section near the end of it. (It's not such a new thing though)

In your case:

[https://developer.mozilla.org/en- US/docs/Web/HTML/Element/in...](https://developer.mozilla.org/en- US/docs/Web/HTML/Element/input/date#Browser_compatibility)

</comment></comment><comment><USER47> One of the date examples shows a box with "06/09/2016" in it, with an error popup which says "Please select a valid value. The two nearest valid values are 2016-06-06 and 2016-06-11".

Seems incoherent to use US date format for the box and ISO8601 format for the error message.

Also I wish software in general would stop trying to guess what the locale settings should be and just ask. I have my language set as en_US but I prefer to use 24h time and ISO8601 dates. With this update Firefox guesses wrongly 12h time and mm/dd/yyyy date format with no way to override it that I could find.

</comment><comment><USER22> > Note that there is no picker for <input type=time>. We decided not to > support it since we think it's easier and faster to enter a time using the > keyboard than selecting it from a picker.

I've thought this so many times, even on my phone where typing is less accessible, I still prefer it over those analogue clock face inputs.

With such a clock input, I'll often hit the wrong time, either an hour/minute too late/early, due to my apparently fat fingers, or 12 hours wrong, because I live in a 24-hour-format region where normally on an analogue clock you read things in 12-hour-format and so my brain thinks "8 pm" and enters "8" when it should have chosen "20". That doesn't happen with typing, because digital clocks almost always display 24-hour-format.

And even worse, in an attempt to speed things up, someone came up with the ingenious idea of directly advancing from hour input to minute input as soon as some input has been made. So, my first few wrong inputs then mean that I have to find the way to get back to the hour selection multiple times.

</comment><comment><USER48> We've been using this in a corporate webapp for over two years in a Chrome environment. I can't believe Firefox is only just getting this. You'd think basic form inputs would have a UI this late in the game without needing to pull in something like jQuery UI or similar.

Especially given how hard it is to implement dates and calendars correctly.

</comment><comment><USER49> Nice, but their design doesn't match my website's design.

<comment><USER50> This right here is one of software's biggest problem.

Businesses have the hubris of designing their own custom UIs for everything, deeply tainted with their branding, and they all end up reinventing the wheel because standard solutions aren't compatible with their designs.

It's time to dissociate software from branding, so we can free 90% of developers and have them do something useful for once.

<comment><USER49> > It's time to dissociate software from branding, so we can free 90% of > developers and have them do something useful for once.

And how should we do that? Isn't that what CSS tried to do (but failed)?

Perhaps we should invent a different title for programmers that do relatively simple work, like writing CSS and perhaps some easy javascript. That way, the real programmers can more easily say "that's not in my job description".

<comment><USER50> I don't want software to be branded at all.

I want all apps to look and behave the same, to the point where they're all just one app.

Nobody asked for their shopping experience to be different when shopping on Amazon vs eBay vs Craigslist. I see no compelling reason to have different UI for services that are essentially identical.

<comment><USER51> So, who gets to decide what it all look like? The broswer vendor? W3C?

What if one browser does something others won't, and you can't do it custom, how do you get around it? Wouldn't that put us back to IE6 web?

What if your site really needs something browsers don't have? Will we have sites telling us to install a plugin and put us back to Flash era?

<comment><USER50> Every browser will be opinionated and render things differently.

Custom things will be done through a canvas, but that should only be used in last resort.

<comment><USER49> Ok, but you can already do that.

Or do you want to enforce it somehow?

<comment><USER50> We first need data to be distributed in a way that preserves semantics (i.e., not HTML).

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER52> Side note: I was trying to think up a viable case for applying @step attribute to date input but quickly gave up.

<comment><USER53> If something runs weekly (e.g., every Saturday), it could be useful to verify the user has picked a Saturday. Not sure if the dropdown would grey out other days too, as that could be useful to be able to remove unavailable days.

<comment><USER17> You generally want the converse, the ability to block off Saturdays and Sundays.

<comment><USER53> Depends on the application obviously. A lot of social groups would likely be meeting once a week. It's just a simple example though of how the step function could be useful.

For your example, you would just need a step with some kind of range. So you could say step=7, range=5 to allow them to pick from the first 5 days of every 7 (or to get trick step=7 range=-2 to eliminate the last 2 days). I'd hazard a guess they thought about this kind of stuff, but realised it would be complicated pretty quickly.

<comment><USER17> Most applications are enterprise apps, the vast majority of apps in the world today are enterprise apps. That work Mon-Fri, so want to restrict date pickers to Mon-Fri.

And it doesn't have range, does it? So the infinitely more useful range hasn't been specified, but the almost useless step has.

[https://html.spec.whatwg.org/multipage/forms.html#forms](https://html.spec.whatwg.org/multipage/forms.html#forms)

</comment></comment></comment></comment></comment><comment><USER54> Chrome has had this for what feels like years. Is there something new in there or did Firefox just catch up?

Good news in any case! The back office tool I work on is Chrome only and it's been great to just use type="date"!

<comment><USER55> I guess most of us saw it for the first time used in the url bar. It did surprise me too altho I knew how they were used to embed images and such.

</comment></comment><comment><USER56> Any ideas on how a website should use this? Can you detect if input.date exists easily (for the current browser) without resorting to checking the brand and version of the browser?

<comment><USER57> Modernizr detects supported input types: [https://github.com/Modernizr/Modernizr/blob/master/feature-d...](https://github.com/Modernizr/Modernizr/blob/master/feature- detects/inputtypes.js)

It's basically just making an <input>, setting its @type and seeing if that sticks, then setting a known-invalid value and seeing if that sticks.

</comment></comment><comment><USER58> But what format is the data sent to the server in?

<comment><USER59> ISO 8601 (yyyy-mm-dd)

<comment><USER60> No timezone part? Or UTC (w/ Z)?

<comment><USER61> No. It's up to the application to decide how it wishes to interpret timezones. Or if timezone should be a factor at all.

E.g. if I'm booking a hotel you don't want it to pick up the user's timezone and frob that into UTC to send it over; you want the local hotel timezone. But if you're setting a calendar event you do want the timezone to be configurable, and you can add a picker for that.

Assuming all time fields must have a timezone is why e.g. jekyll will re-date your prior posts (breaking all URL slugs) when you change your timezone.

<comment><USER60> > if you're setting a calendar event you do want the timezone to be > configurable, and you can add a picker for that

I suppose. In the product I'm current working, I guess technically we could add a TZ dropdown as you describe, but it'd go unused because the kind of events our users schedule, they want to use their current corporate local time always (there's no travelling across timezones involved for our users), and we need to know what time that is over here, so in lieu of one useful form field (UTC or datetime offset), we'd now have to send two (change the dropdown to a type=hidden), or another one with a "proper" datetime string. I guess not the end of the world[1], but it does introduce more opportunities for bugs.

From what I've seen, few products have that timezone dropdown, and usually it tends to be an override that still needs a sensible fallback, and no information as to what timezone the current user is in gives you absolutely nothing.

DateTime offset lets the application handle most cases, so that's what I prefer to use.

[1]: also needs a timezone

</comment></comment></comment></comment></comment><comment><USER62> Can somebody explain why this is big news? It looks like a standard input to me. I'm genuinely asking...

<comment><USER63> Adding date picker to platform _after_ it lived through the peak of world-wide application development is big news itself.

</comment></comment><comment><USER64> No week picker? Edge and Chrome implement it.

</comment><comment><USER65> finally not only in chrome (and apparently opera)

</comment><comment><USER66> Finally? God why it to them so long to implement the most basic thing :(

</comment><comment><USER67> This is not newsworthy.

But will the inputs be mixed-reality ready?

</comment><comment><USER68> This is a nice start but we basically need a full API of these to match all the widgets and view controllers you find in a full GUI environment like Mac OS/Windows/iOS.

<comment><USER63> People who don't give a fcuk about controllers and patterns outnumber traditional folks heavily, so there is no place to look for understanding of it today. Just wait and someday you'll hear about Element Group Management or whatever classic weathered MVC would be called then. Don't miss that year though, check regularily.</comment></comment>


Word Processing Using Unix (1982) - <AUTHOR> https://www.scribd.com/document/395768306/Word-Processing-Using-UNIX?qw <comment><AUTHOR> My grandparents and I were talking about technology, and how back in the 80's she'd written manuals for the staff at the University of California's Lick Observatory on how to write and print documents using vi. Reading through this was an interesting look back in time.

</comment><comment><USER2> By the mid-'80s, when I was at UC Santa Cruz, there was a photocopied manual available at the Bay Tree Bookstore called "Unix for Luddites" that elaborated on what is in this manual. The aim was to get all students and faculty, not just those in computer science, or the sciences in general, to use Unix for writing and printing research papers, essays and more. It used the same two programs -- vi for writing, nroff for formatting.

I don't know if "Unix for Luddites" ever made it to the web, but if not, I did find my copy, and I will scan it.</comment>


How Fast Do Friendfeed Results Appear in Google Web Search? - <AUTHOR> http://blogoscoped.com/archive/2010-01-25-n52.html <comment><USER2> I was googling for an algorithm 2 days ago and the first result matched word for word my exact question. Turns out someone in IRC pasted a solution for my question in lisppaste, and google archived it already before I had a chance to read the IRC reply. Freaky.</comment>


Sweet n' Salty Capacitor - <AUTHOR> http://www.emilydaniels.com/2011/10/sweet-n-salty-capacitor/

<comment><USER3> They can't be pure capacitors, otherwise the charge would be leaking away. No capacitor in the world is going to be reading .6v three days after being charged to 9v.

Also, the paragraph about the piezoelectric effect in salt is incoherent nonsense. There could be a plausible electrochemical effect causing a change in the output voltage when the cell is heated; but the .1v change resulting from vibration has to be pure measurement error. _That_ is quite plausible, since she's using a three digit hardware-store multimeter, and .1v is the smallest possible change it can measure in the 200 volt (?!?! 200 volt mode when measuring the voltage of an electrochemical battery?) range mode.

</comment><comment><USER4> Cute and looks sort of yummy. The science is a bit lacking though (the vibrations have nothing to do with anything, except maybe plate separation on the capacitors).

You can make a capacitor (or battery) out of virtually anything. For a capacitor two conductors separated by an insulator - any conductor - <USER2> insulator - any shape. (Obviously some will work better, but all will work.)

For a battery two dissimilar metals joined by a fluid with ions in it (salt water, acid water, etc.)

Make you wonder why it took so long to invent these things, considering they have been made accidentally for millennia.

</comment><comment><USER5> I'm not familiar with the chemistry she is using, but since the surface area of her electrodes is very small I think it is more likely that this works as a rechargeable battery (an electrochemical cell) than a capacitor (storing energy in an electric field between electrodes).

<comment><USER6> In addition to small surface area, the distance between the electrodes is very large, which would make it even worse capacitor.

</comment></comment><comment><USER7> A ncie combination of food and electronics. Her "candied LEDs" (sugar- encrusted LEDs, see <http://www.emilydaniels.com/2011/08/candied-leds/>) reminds me of the glowing crystals in WoW's Marshal's Refuge Cave, as seen in <http://www.flickr.com/photos/r4n/2258496701/> and <http://www.flickr.com/photos/kapowaz/37478022/>. Fascinating!

</comment><comment><USER8> If this actually works as a cap, somebody should build a guitar amp out of it.

<comment><USER6> How do you build a (guitar) amp with a capacitor? Filter I can understand, but an amplifier?</comment></comment>


Paid Online Project Management App offers to use it 100 years for FREE - <AUTHOR> For each friend you refer we'll give you both two months for free. So if you refer 600 friends you will get 100 years for free! :)<p>https://apascrum.com/?ref=hacker_news <comment><USER2> Disingenuous heading, anyone reading this post better use [https://taiga.io/](https://taiga.io/) open source and free if you host your own. If you use their own hosted version free for 1 project and very minimal charges for next tiers.

<comment><AUTHOR> Taiga is _not_ free if you want to use it NOT for public projects. It charges you depending on the number of projects you have. For example if you have 50 projects - it will cost you $99/month.

In Apa you can have as many projects as you want. And it's not a disingenuous heading - we do offer you 100 years free of charge, but you need to refer 600 friends :) You can refer any number of people, e.g. refer six friends and you'll get one year of usage free of charge.

<comment><USER2> Please send url to your open source version which can be hosted free like Taiga. Taiga operates in open with open source product including first rate documentation.

<comment><AUTHOR> I get it. Taiga is great for you. Use it. Any other project management software that is paid - sucks. I get it too. Amen.</comment></comment></comment></comment>


Appresenter: Showcase your apps professionally on high quality 3D models - <AUTHOR> http://appresenter.com/

<comment><USER2> Easier than trying to photograph phones, with all their reflective surfaces...

</comment><comment><USER3> Resenting apps since 2014.

</comment><comment><USER4> Is it just me or do these look a bit uncanny?</comment>


Nintendo Launches Vulnerability Rewards Program for Nintendo 3DS - <AUTHOR> https://hackerone.com/blog/Nintendo-3ds-Launches-bug-bounty-program-on-HackerOne <comment><USER2> This is interesting for several reasons:

\- The 3DS is nearing the end of its lifespan. This seems like a way to test the waters. Nintendo's a traditional Japanese company so slow and steady is the name of the game. There's really no financial reason to beef up the 3DS' security as they just had what is, to my knowledge, its last major launch (Pokémon S&M).

\- They're providing an incentive for modders to report their exploits instead of sharing them with the wider community. If they keep their promise, it could really cut back on homebrew and piracy. AFAIK this is unprecedented in gaming. Would definitely help with Nintendo consoles' rampant exploits.

\- Nintendo's software is terrible. Case in point: their web browsers use crappy old versions of WebKit, and when they inevitably get exploited, they patch that particular exploit out and leave the rest of that Swiss cheese open for grabs. I don't think they really have a concept of security. Could it mean a sea change is coming in Switch?

<comment> m-p-3 It would be nice if they partnered with a web browser developer (Google or Mozilla) to handle this part and ensure they provide an up-to-date engine on their next consoles.

</comment></comment><comment><USER3> It seems a bit late for the Nintendo 3DS. I wonder if it has anything to do with shared code between this and the upcoming Nintendo Switch. Nintendo has a had an amazing year and I'm really glad they're doing this nonetheless.

<comment><USER4> To me it seems especially late since the platform has been broken wide open.

The "jailbreaks" now have access to both processors used to boot the system and games, so they can run code before the system loads and intercept writes to their memory locations.

They can block exploits in new firmware versions (and have), but the system has sold so many units there doesn't seem to be a realistic chance of "breakable" systems running out for those interested.

<comment><USER5> Especially considering the hacks allow you to have more than one 3DS firmware installed at a time, allowing you to do things that require a clean slate while still being hacked.

As long as you don't install some theoretical update that blocked all the exploits directly onto your real NAND, or as long as you don't buy a fresh 3DS with this update baked in already... you're honestly all set.

<comment><USER6> Also, $200 for a new 3DS is still less than what a couple of games would have cost if you bought them retail.

</comment></comment></comment></comment><comment><USER7> I found one, eShop titles have one key each, meaning once the key goes public, anyone can get the game with it, right from Nintendo's servers, namaste!

Don't flood me with your monies just yet, Nintendo, rather pay for better devs! ;)

<comment><USER8> Are you sure? I've never heard this. Do you mean the kind of key you can buy in a shop and redeem on the eShop?

<comment><USER9> They're talking about the 'titlekey' system that the eShop uses. The overview of the process is:

1) You attempt to purchase a game on the eShop 1a) Nintenedo servers verify you have funds 1b) Nintendo charges your account credit equal to the amount of the game 2) Once payment is received, the eShop application installs the selected game's 'titlekey' to your 3DS system. These titlekeys are unique per game, not per console -- herein lies the biggest part of the problem. These titlekeys are used as decryption keys for the game contents hosted on Nintendo's CDN (which doesn't need authentication!). 3) If the eShop app senses you have the game's titlekey installed, it will let you download it to your system.

So, once people figured out how to dump the titlekey databases from their systems, and how to import titlekeys into their other systems, they were able to essentially get free games directly off the eShop, using Nintendo's servers!

And then a few weeks after that, a homebrew app called freeShop came by that automated the process -- it has a GUI that lets you browse the games in the eShop, pull and install the titlekey from an online database, and grab/decrypt/install the game straight from Nintendo's servers.

Because Nintendo doesn't tie purchases to your Nintendo Network ID, but rather to the hardware itself, they left themselves wide open to this.

(It should be noted that the Wii U eShop uses a very similar system that has been similarly exploited recently.)

<comment><USER10> Okay, wow, that's a huge hole in their system. Is there any indication that Nintendo is aware of this and is trying to patch it? Or has it been patched already?

<comment><USER7> Well, it's locking millions of customers out from the eShop until they do a software update vs. letting a few thousand pirates slip.

</comment></comment></comment></comment></comment><comment><USER8> Interesting post, weird that an article doesn't work if you don't have cookies on (just completely blank)

</comment><comment><USER11> The only incentive I've ever had to jailbreak a 3DS was in order to play region-locked games that were only released in Japan. Why is region-locking still a thing? Why force the most loyal of your customers to buy two consoles - one NA and one JP?

<comment><USER12> Because Nintendo.

Why release a console called the WiiU? Because Nintendo.

Why destroy relationships with 3rd party publishers? Because Nintendo.

Why constantly launch new products without adequately stocking stores? Because Nintendo.

Why shitty online? Because Nintendo.

Why were downloaded games locked to hardware instead of account? Because Nintendo.

They do their own thing and pretty much do not care.

</comment></comment><comment><USER13> Does anyone want to talk about the background image behind the title? There are some interesting bugs there.. Can someone grab that .jpg?

</comment><comment><USER14> Ugh, bug bounties being used for developing stronger DRM. Well, I guess we have to take the bad with the good.</comment>


Ask HN: I am at crossroads in my life. Pursuing my own idea or a full-time job? - <AUTHOR> 11 years ago, I started working as Jr. Web Developer in a startup. Founders were close to my family and they gave me chance to work there. I can say that we started company together because when I got hired the company was 1 year old and there were only founders, no one else. Two months ago I've left the company(There were some specific reasons for that). I was the director of development for 2 years and I've been always close to the management. After I left, now I understood that that company became my identity because for 11 years I slept and woke up with that company. I sacrificed my nights and weekends for it. Now I am stuck, not sure what's the next? Actually I am close to one path but I am looking for advice.
I've been always interested in startups. I began my tech career in a startup and I know what exactly a startup is. I read articles, books and watch videos, movies related to startup. I've always wanted to start my own company one day. Besides that, I am a full stack developer and I can build a product from idea to product.
Options for me:
1. I can apply to a software company and I can get hired with a good salary. In my free time, I can start building a side project. When I reach the ramen profit, I can quit my full-time job and focus on my project full time.
2. I have my savings. With minimum expenses, I can live with these savings for two years. So I can now start building a project and I bootstrap it with my savings. If I fail, I can apply for a full-time job.
I want to go with this second option but I have a problem. I have many ideas but I have an analysis/paralysis problem. I am not sure what to build. I am not a big risk taker and I don't have a business partner. So I want one man bootstrapped business. All the ideas I have are already existed in the market (as expected). I can choose a specific niche and build a product for that market but I am stuck at choosing the niche too. Please give me some advice. <comment><USER2> Go for #2, but first spend a month or two seriously investigating potential startup ideas. Make it your job, 60 hours a week, to brainstorm ideas, research competition, create simple MVPs, etc. You likely haven't put as much effort into potential startup ideas as you have into your regular job, so don't feel inadequate or hopeless if you haven't stumbled upon the right idea yet.

In my experience, #1 never really works, especially if you are unsure of what the project will be in the first place. You have two years, which is more than enough time to build and test at least a half-dozen serious projects. If none of them work, go get a job with an awesome new portfolio.

<comment><USER3> This is a good thought too :-). Decisions...decisions...

</comment></comment><comment><USER3> I'd look for a partner. It's very hard to be a solo founder and it sounds like you're not sure of an idea/market, etc. I'd also start keeping a list of problems you face/solutions i.e. ideas for a possible product to build. It's very, very hard to build a business. If you're not sure, don't have a partner or idea, I wouldn't recommend you get into it just yet. I'd recommend you look for a company you're really interested in and get to know a market, how their business runs, etc. You may meet other potential partners there (co-workers) and you'll get to know a business niche, etc. So I'd recommend 1. for now. Also, differentiate when you start between a business and a project: a business really has revenues/a model to grow quickly while a project is something you build more for fun that may or not generate revenues or go somewhere. Projects can become the biggest businesses (google, facebook were started as projects), but you don't necessarily want to bet your savings on that initially. Just some random thoughts...hope they're helpful, good luck and congrats on the previous 11 years of dedicated, rewarding work it sounds like, nice!!!!!

</comment><comment><USER4> I'm not going to point to one route over another. Frankly, you read as though you could use some time off. But here are a couple of things to take into consideration:

What I see (here and elsewhere. And I've experienced this myself a few years back) is that people tend to focus on the building part. Doubly so when it comes to software, because building something in this context requires hard earned skill that in the grander scheme of things few people have.

Only the building part is not nearly as important as the product-market fit and the marketing parts. And unlike the building part, which involves being independently creative the product-market fit part means spending a lot of time talking to people and iterating based on what they say. Then there's the matter of finding an audience, and marketing is a hard skill in its own right. I have come to the understanding that just as SWEs can figure out a way from input to output, good marketers do the same thing, but in the context of audience acquisition and messaging.

So with either of your options, it's worth thinking about how you plan on doing these parts as well. Whichever setting is more conductive to that kind of work also matters.

</comment><comment><USER5> My advise is rather simple: start consulting startup candidates based on your extensive experience.

You are basically helping them avoid the hurdles you came across through your 11+ years of professional experience and you are pretty much giving them a number of steps ahead of other startups that have to go through trial and error until they make it, if they are lucky that is.

Try to write down the standard, cliched if you will, steps a startup needs to go through until they become functional and autonomous from a technological point of view.

I'm sure through this consulting experience you will be narrowing down countless of unique niche projects that could be offered as SaaS or even PaaS by you that could boost a startup's momentum AND help you make good money while doing two things you seem to love the most.

Now, as far as concern analysis paralysis, you can solve this by doing simple, standard writing; school-like if you will.

Dedicate a notebook, the good ol' pen and paper thing (lol), and write down each idea of yours by separating its pros and cons.

Concentrate on each project separately without letting your thoughts or worries intervene and narrow down each project's unique features until you feel pleased by what you have written up until the very end of it.

If you can, apply the logic of Normalization Form until you exhaust all potential commonalities each step has with its previous ancestor.

Doing so can reveal so many things to you, even help you extract common factors from each project separately and combine them to produce yet another project or idea that could lead to something interesting, let alone profitable if it gets the right attention and response from users.

I cannot think of anything else right now, but if you want to keep in touch to philosophize it a bit further, feel free to contact me via my email which is included in my profile.

Take your time to rest your busy mind and let me tell you something you need to hear: you got this mate, don't worry about it.

The less you worry, the less you pay attention to your mental noise, the clearer everything will become around you.

Keep it up mate!

Cheers.

</comment><comment><USER6> An advantage of a regular job is the social and logistical support. Do you have a social network that can support you in #2? Or, an enormous amount of self-discipline?

</comment><comment><USER7> You better do both.</comment>


Revisiting how we put together Linux systems (2014) - <AUTHOR> http://0pointer.net/blog/revisiting-how-we-put-together-linux-systems.html <comment><USER2> > _When a developer wants to develop against a specific runtime he installs > the right framework, and then temporarily transitions into a name space > where /usris mounted from the framework sub-volume, and /home/$USER from his > own home directory. In this name space he then runs his build commands. He > can build in multiple name spaces at the same time, if he intends to builds > software for multiple runtimes or architectures at the same time._

it reminds me of the Clearcase version control system. You would run `cleartool setview <viewname>` to enter the namespace of that "view". Like Las Vegas, everything you did within that view would stay in that view.

This was before containers and VM's became widespread. It felt a like magic, because you could run one command and see a totally different build and tooling environment. Under the hood it meant that running `make` would pull in objects from other teams who used exactly the same view as you (so like ccache but across the network scaled to N-engineers).

Most companies have thrown clearcase out when svn/git came along because poor administration practices could push license / storage costs through the roof (and it was never cheap to begin with).

We have git/mercurial,... today which I'm quite happy for. But considering how old all these ideas are, it's a shame FOSS is still stuck in the stone age in this regard.

[1] [https://www.ibm.com/support/knowledgecenter/SSSH27_8.0.1/com...](https://www.ibm.com/support/knowledgecenter/SSSH27_8.0.1/com.ibm.rational.clearcase.cc_ref.doc/topics/ct_setview.htm)

<comment><USER3> And yet ClearCase was notorious for being the bad old world that everyone wanted to get away from. I'm sure someone will be along with war stories to tell us why the reality wasn't so great.

<comment><USER2> :) I was one of those who fought hard for many years so that we could replace it with svn/git, and we eventually did. It was still ahead of it's time back then. But I agree it was a nightmare to administrate and if you used clearcase UCM it was one huge horror show for users. UCM meant your whole process is locked into Rational/IBM's way of doing things (and it had to die because Agile came along so clearcase felt very outdated).

</comment></comment></comment><comment><USER4> A thread from 2017: [https://news.ycombinator.com/item?id=13782786](https://news.ycombinator.com/item?id=13782786)

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

Discussed at the time: [https://news.ycombinator.com/item?id=8251288](https://news.ycombinator.com/item?id=8251288)

<comment><USER5> This is super interesting, reading the comments you can easily see the sentiment steadily getting less hostile to Poetterings ideas.

I guess the only thing you need is total control of all major distros to change sentiment.

</comment></comment><comment><USER6> (2014)

</comment><comment><USER7> Were these ideas ever picked up?

<comment><USER8> The proposal talks a lot about using btrfs features, but there doesn't appear to be anything based on that.

However if you look at the design goals, most of them have been implemented, although there is not yet wide usage.

The best way to try this out in a runable desktop OS is probably Silverblue.

[https://silverblue.fedoraproject.org/](https://silverblue.fedoraproject.org/)

> We want a unified scheme, how we can install and update OS images, user > apps, runtimes and frameworks.

The storage backend for this is OSTree, using HTTP as the transport; it's analogous to Git for binary files and does not require special filesystem features, only hardlinks.

[https://ostree.readthedocs.io/en/latest/](https://ostree.readthedocs.io/en/latest/)

> We want a unified scheme how you can relatively freely mix OS images, apps, > runtimes and frameworks on the same system.

Flatpak provides the abstraction layer for this; the base OS can be anything and the applications use only libraries from a Flatpak runtime; by default, Flatpak uses OSTree to store applications.

Snap is similar, although it requires AppArmor, so can't run on many popular distros, and I think there's only one runtime that you're required to use, so no "mix and match".

Docker is similar, although it can't handle desktop applications in a sensible manner (no sandbox).

> We want a fully trusted system, where cryptographic verification of all > executed code can be done, all the way to the firmware, as standard feature > of the system.

There are several points here:

* firmware/pre-boot: [Edit: TPM can be used to verify this, but it's not set up that way by default; Windows 10 Bitlocker can rely on TPM for this]

* bootloader: UEFI Secure Boot handles this

* kernel/initramfs: I'm afraid this isn't typically verified currently, see [https://mjg59.dreamwidth.org/54203.html](https://mjg59.dreamwidth.org/54203.html)

* base OS and Flatpak: OSTree can require GPG signatures for installation; to check the files at runtime, you'd need an additional layer such as dm-verity.

> We want to allow app vendors to write their programs against very specific > frameworks, under the knowledge that they will end up being executed with > the exact same set of libraries chosen.

FlatPak SDKs provide this.

Snap has an SDK as well, although note the singular, Snap is exclusively controlled by one company.

> We want to allow parallel installation of multiple OSes and versions of > them, multiple runtimes in multiple versions, as well as multiple frameworks > in multiple versions. And of course, multiple apps in multiple versions.

Flatpak can do multiple framework versions by default, and multiple application versions with command line flags.

Multiple different OSes hasn't happened yet, probably you'd want at least one non-experimental OS first...

> We want everything double buffered (or actually n-fold buffered), to ensure > we can reliably update/rollback versions, in particular to safely do > automatic updates.

OSTree does this.

> We want a system where updating a runtime, OS, framework, or OS container is > as simple as adding in a new snapshot and restarting the > runtime/OS/framework/OS container.

OSTree/Flatpak again.

> We want a system where we can easily instantiate a number of OS instances > from a single vendor tree, with zero difference for doing this on order to > be able to boot it on bare metal/VM or as a container.

No idea if this exists anywhere yet.

> We want to enable Linux to have an open scheme that people can use to build > app markets and similar schemes, not restricted to a specific vendor.

Flatpak/FlatHub solve this; Snap does not because it's exclusively controlled by one vendor.

<comment><USER9> > Flatpak provides the abstraction layer for this; the base OS can be anything > and the applications use only libraries from a Flatpak runtime; by default, > Flatpak uses OSTree to store applications.

Snaps use squashfs, so instead of a hardlink farm, you have self contained fs images.

> Snap is similar, although it requires AppArmor, so can't run on many popular > distros,

I'm not sure why you continue to repeat this factually incorrect information. AppArmor is not required. In fact, guessing you being a Fedora user, you can verify that by installing snapd from your distro repositories.

However AppArmor is used for providing confinement of snaps (aside from sandboxing which requires the same interfaces in the kernel as flatpak or docker do).

> and I think there's only one runtime that you're required to use, so no "mix > and match".

Currently there are runtimes based on Ubuntu 16.04, 18.04 and upcoming 20.04. There's some work to support freedesktop runtimes, but it got stuck on defining metadata for describing security profiles of apps using given runtime.

> FlatPak SDKs provide this.

> Snap has an SDK as well, although note the singular, Snap is exclusively > controlled by one company.

Wouldn't call it an SDK, but there's a tool called snapcraft to build snaps in a convenient manner. You could just as well use 'snap pack' or mksquashfs directly.

<comment><USER8> >> Snap is similar, although it requires AppArmor, so can't run on many popular distros,

> I'm not sure why you continue to repeat this factually incorrect > information. AppArmor is not required. In fact, guessing you being a Fedora > user, you can verify that by installing snapd from your distro repositories.

I'm sorry, what I meant to write is, it doesn't run _equally well_ on many distros; you get a first-class or second-class experience depending on which LSM your distro has chosen to use. This is not the case with Flatpak, because it doesn't use any LSM for sandboxing.

Although I've heard there were attempts to enable LSM stacking in the kernel, which would provide a way to solve the problem; do you know the current status of that?

<comment><USER9> AFAIK the effort is still ongoing. I believe LWN had some nice coverage on that, with the last majir pain point being attaching a security context to sockets in a way that suits all interested LSMs.

Anyways, I would not expect to have LSM stacking enabled in Fedora or RHEL anytime soon after it lands in mainline, mostly due to political reasons, thought I'd very much like to be surprised when the day comes.</comment></comment></comment></comment></comment>