250 varieties of apple on one tree (2013) - <AUTHOR> http://www.dailymail.co.uk/news/article-2437247/250-varieties-apple-tree--thanks-bit-hard-grafting-years.html <comment><USER2> My parents were getting way too many apricots on their apricot tree and many were going to waste, their arborist suggested, and then implemented, cutting back the tree and grafting on some other fruits (as I recall it was plums and peaches) which had different fruiting times. It was a big win for them.

<comment><USER3> People were always dubious of my claims that a neighbor's tree produced both oranges and lemons; I did not realize that this kind of intentional grafting was the likely cause (or that it was so relatively common). Strange the things I just took for granted in the days before there was an Internet that could be used to easily investigate.

<comment><USER4> Grafting apricots/apples/etc is relatively easy.

Citrus trees are much more finicky about taking grafts.

</comment></comment></comment><comment><USER5> I grafted two varieties onto the tree in my backyard this past year (Fiesta and Honey crisp). Fun to see them both "take", although it looks now like some insect or perhaps woodpecker has bored some holes into the branches, so we'll see if they survive.

I got the scions via a local home orchard group, and it was pretty amazing to see all of the varieties they had available. I also got a new tree grafted onto rootstock from them - Spitzenburg. They have a tasting in the fall and I liked that one the best.</comment>


Fairphone 2 Is the World's First Modular Smartphone - <AUTHOR> http://www.ktlaz.com/2015/10/26/fairphone-2-is-the-worlds-first-modular-smartphone/ <comment><USER2> I was wondering about Android updates :

"The Fairphone 2 will come pre-installed with Android™ 5.1 Lollipop. We provide a two-year warranty period for software maintenance. We plan to offer regular software updates, however, there are too many factors at play to give you a concrete schedule at this point."

2 years is short for a phone that you're supposed to keep a long time.

I'm seduced by the modular hardware but as long as they don't tell me they'll port the latest Android until the hardware can't run it, I'm not interested.</comment>


Facebook creates preview photos that are just 200 Bytes for fast mobile loading - <AUTHOR> https://code.facebook.com/posts/991252547593574/the-technology-behind-preview-photos/

<comment><USER3> duplicate of [https://news.ycombinator.com/item?id=10020840](https://news.ycombinator.com/item?id=10020840)

<comment><AUTHOR> Weird. the URLs seems to be exactly the same. Wonder why the dup detector didn't complain

</comment></comment><comment><USER4> GraphQL doesn't transfer raw bytes, so they would save the 33% overhead if they weren't using Base64 binary-to-text encoding.

<comment><USER5> Gzip content encoding recovers most of the overhead.

<comment><USER6> Except they shouldn't really use Gzip if they are also using HTTPS.... See [http://stackoverflow.com/a/4063496/171237](http://stackoverflow.com/a/4063496/171237) or look up BREACH and CRIME.

<comment><USER7> BREACH/CRIME aren't a huge concern here. Unlike in a web browser, an attacker can't cause a user's browser to fire off crafted requests (because they're only occurring in the Facebook app, which doesn't let third-party scripts run), and they can't easily observe the size of requests and responses (because they're all happening over a cellular network, which is difficult to sniff).

<comment><USER6> Running inside the app is probably the strongest argument here, though I think that's also kinda assuming that people cannot subvert the app in unexpected ways. The size of requests can still be observed e.g. being on Wifi - <USER2> don't just use their Smartphone from the cellular network.

My thinking is that while in this case it's "probably safe" to use Gzip + HTTPS, but that's not a good practice to build secure systems. If e.g. here these requests are exempted and run to Gzip, the reasons and circumstances for doing it here will be forgotten, and can end up with other stuff exempted later which shouldn't. Just from experience how things work in large orgs.

</comment></comment></comment></comment></comment><comment><USER8> Do they do this on the web too or just the native app?

<comment><USER9> I suppose it _could_ be done on the web by sending the fixed JPEG header in a JS file that would be cached, then crafting _data:_ URLs on the fly.</comment></comment>


Why Obama Should Pardon Edward Snowden - <AUTHOR> http://arstechnica.com/tech-policy/2016/09/op-ed-why-obama-should-pardon-edward-snowden/ <comment><USER2> For those wondering if a president can pardon someone who hasn't been convicted of anything, according to the Supreme Court, yes.

From Ex parte Garland, 1866:

> The power thus conferred is unlimited, with the exception stated. It extends > to every offence known to the law, and may be exercised at any time after > its commission, either before legal proceedings are taken, or during their > pendency, or after conviction and judgment. This power of the President is > not subject to legislative control. Congress can neither limit the effect of > his pardon, nor exclude from its exercise any class of offenders. The benign > prerogative of mercy reposed in him cannot be fettered by any legislative > restrictions.

[http://caselaw.findlaw.com/us-supreme- court/71/333.html](http://caselaw.findlaw.com/us-supreme-court/71/333.html)</comment>


What's worked in Computer Science (2015) - <AUTHOR> https://danluu.com/butler-lampson-1999/ <comment><USER2> I'd love to see an updated version of this. After reading the stories from the Rust/Servo/Stylo developers, it feels like Rust might just be pushing both "fancy type systems" and "parallelism" to the left.

Also, if you count GPU programming under "parallelism" then it's gotta be a huge YES.

<comment><USER3> He agrees that both of these points are reasonable in 2017 [https://twitter.com/danluu/status/935878538623901696](https://twitter.com/danluu/status/935878538623901696)

(though I guess _you_ know that, since you're the one who asked him...)

<comment><USER2> :-) Yes, I thought of twitter after posting here.

</comment></comment></comment><comment><USER4> I don't understand what is meant by "capabilities". My understanding of what capabilities are is so abstract, that asking if they worked is not something that could possibly be asked. I might have missed something, or this guy is an architecture astronaut (both?).

<comment><USER5> [https://linux.die.net/man/7/capabilities](https://linux.die.net/man/7/capabilities)

In some ways the Android/iOS permissions system is a form of "capabilities". Granularity is a problem: too granular and they're tedious, not granular enough and you end up leaking your contacts to your torch app.

<comment><USER6> Linux capabilities aren't capabilities in the sense of capability-based security! They don't follow that security model.

It's just an unfortunate pun. Capability-based security wasn't mainstream at the time they were invented. It arguably isn't now either. You can argue that Android/iOS are capability-based, but the model is pretty watered down.

Capability-based security for end users (rather than sys admins) is an unsolved problem as far as I can tell.

See this page:

[https://en.wikipedia.org/wiki/Capability- based_security](https://en.wikipedia.org/wiki/Capability-based_security)

 _A capability (known in some systems as a key) is a communicable, unforgeable token of authority._

Linux capabilities don't meet this definition. They're just permissions.

The sibling comment is also correct:

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

</comment></comment></comment><comment><USER7> Functional programming and GC are slowly moving up. Looking forward to the (pure) Lisp resurgence of the 2020s.

<comment><USER8> Lisp languages aren't really growing. The most hyped lisp style language is Clojure and even it isn't growing. Here's a Google trends comparison of Clojure, Clojurescript, List, Racket, and Scheme:

[https://trends.google.com/trends/explore?date=2007-01-01%202...](https://trends.google.com/trends/explore?date=2007-01-01%202017-11-29&q=clojure,clojurescript,%2Fm%2F04kyw,%2Fm%2F0974fb,%2Fm%2F06zrb)

Things aren't looking so hot for ML style languages like F#, Ocaml, and Haskell either:

[https://trends.google.com/trends/explore?date=all&q=%2Fm%2F0...](https://trends.google.com/trends/explore?date=all&q=%2Fm%2F03j_q,f%23,%2Fm%2F09wmx)

The only functional programming language that is showing any real growth is Scala, but that is also modest compared to the ones that are already much bigger or growing much faster:

[https://stackoverflow.blog/2017/09/06/incredible-growth- pyth...](https://stackoverflow.blog/2017/09/06/incredible-growth-python/)

Where functional programming is growing is in existing large OO languages. All of them now have lambdas. Most have mature immutable and composable data structure libraries. And other functional style syntaxes like pattern matching are being introduced in many of them.

<comment><USER9> "other functional style syntaxes like pattern matching are being introduced in many of them"

The Interpreter and its dual the Visitor GOF pattern have made what amounts to pattern matching possible in OO languages for a few decades now [1].

The whole point of these patterns is to write recursive functions following recursive data types, which is one of the main use cases for pattern matching (ok, more generally these are used to break data structures apart).

In particular, if you look at an example of the Visitor pattern, you will see that it has exactly the same structure as a recursive function that separates cases in a FP language [2]

Here is a detailed explanation of how to do it [3]; it is the "little language" technique (which I suspect is the reason why it is called the Interpreter).

[1] [https://eli.thegreenplace.net/2016/the-expression-problem- an...](https://eli.thegreenplace.net/2016/the-expression-problem-and-its- solutions/)

[2] [http://blog.higher-order.com/blog/2009/08/21/structural- patt...](http://blog.higher-order.com/blog/2009/08/21/structural-pattern- matching-in-java/)

[3] [https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-005-elements-of-software-construction-fall-2008/lecture- notes/MIT6_005f08_lec15.pdf)

</comment></comment></comment><comment><USER10> RISC: "If this was a Maybe in 1999 it's certainly a No now."

My cell phone begs to differ.

<comment><USER11> The Acorn Risc Machine is pretty CISCy nowadays.

<comment><USER12> I tend to agree. Group loads and stores isn't very RISCy to me. But then again, you could make the case that any x86 machine is RISC under the covers.

</comment></comment></comment><comment><USER13> I learned to program sometime around 1988 or 89 when I was 12 and have been doing it for 28 years. I saw several of these rise and fall, and conventions have changed greatly even though most of us are still using C-style languages.

The highest leverage I've found comes from spreadsheets and relational databases because they require little or no code to accomplish so much. So I think that declarative or 4th generation programming languages deserve an honorable mention in the "yes" category.

The lowest leverage has been on the object-oriented side, especially with C++. Java is the least abstract language I've used in recent memory, due to its obsession with staying as far from functional programming as it can (closures were accomplished with anonymous objects until version 8!). There is simply no way to infer where a value was set without tracing the entire code, which slows development time by a factor of 10 to 100 over more functional techniques that use methods to derive state instead of values. So I think the "No" category needs a mention of highly imperative code and its tendency to become spaghetti.

The single most damaging practice I encounter daily is the breaking of convention and the loss of programming context that we've built up in our minds over the years. So while most functional programming languages are conceptually brilliant, they stray so far from mainstream languages like Javascript that I think they complicate syntax unnecessarily. Heavy-handed patterns also urge us to segregate code into parts when the logic doesn't require it, which I often find unintuitive. Mobile development especially, with its obsession with delegation, event broadcasting, observers and nondeterministic behavior of partially uninitialized views (especially recycler view and UITableView) feels like always having to remember 10 or 20 digits when we can only comfortably manage 7. Types for the sake of types will likely expand code size and complexity by an order of magnitude when a simple compiler would have accomplished nearly as much. I have low confidence that any of these will survive the next tech bubble.

I view parallelism and AI as a great uncharted sector of computer science that was stifled by Microsoft, Apple, Intel and NVIDIA. Had FPGAs or open source graphics cards taken off after the 90s, we would have a very different view of things like the Actor model (Erlang, Go, etc). So shared threads are a huge "no", but the private address spaces/streams/message passing and copy-on-write model of UNIX is a huge "yes" and we'll likely see these techniques adopted at the language level in the next decade. It would also be nice to have the numerical computing techniques from MATLAB so we can operate on matrices instead of primitives and saturate the hardware with less effort. Under these tools and conventions, AI loses much of its mystery because you realize you can always brute force a solution and evolve more elegant ones later to find a better local optimum.

<comment><USER9> "closures were accomplished with anonymous objects until version 8!"

Java has had closures through inner classes since the beginning, albeit admittedly in a verbose way. This is a quote from page 540 of "Concepts, Techniques and Models of Computer Programming": _Full lexical scoping. Full lexical scoping means that the language supports procedure values with external references. This allows a class to be defined inside the scope of a procedure or another class. Both Smalltalk-80 and Java support procedure values (with some restrictions). In Java they are instances of inner classes (i.e., nested classes). They are quite verbose due to the class syntax (see the epigraph at the beginning of this section)._

But I think this is already enough to do high order programming, given that it effectively allows having functions as values (and hence high order functions), and support all 4 basic techniques high order programming builds upon: procedural abstraction (which relies on closures), genericity, instantiation and embedding [1].

I have to admit that I am not sure if I understand what you mean by "There is simply no way to infer where a value was set without tracing the entire code, which slows development time by a factor of 10 to 100 over more functional techniques that use methods to derive state instead of values". My (possibly wrong) interpretation is that you are referring to lazy execution, given that this technique associates a variable with a function that creates its value but whose execution is delayed until triggered when the value is actually needed.

Is this correct? If it is, then explicit lazy execution can certainly be accomplished in Java, given that, as I have said before, it allows embedding procedure values in a data structure. Of course, this is not as convenient as implicit lazy execution as in Haskell with its non strict evaluation, but it achieves the main purpose of laziness all the same, which is to optimize resources by allowing consumers rather than producers to drive value creation and hence generate data structures incrementally (as they are needed) rather than eagerly (as in simpler data driven techniques): stream programming; another advantage of laziness is of course purely functional persistent data structures in some cases with good performance ([3] and [4]).

"It would also be nice to have the numerical computing techniques from MATLAB"

I couldn't agree more with this. For instance, if possible, for a ML project I think it's better to do as much research/experiments/development as possible in Matlab/Octave, and then translate it to Python or whatever the production language is (would love to hear opinions on this). It would be so nice if such translation could be avoided (maybe a preprocessor could automate it, but still ...).

I believe that the reason is that Matlab is just a much more natural language for mathematical programming. I did the wonderful mooc [2] in Matlab, and much prefered it compared to the Python solutions I saw.

[1] [https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-005-elements-of-software-construction-fall-2008/lecture- notes/MIT6_005f08_lec15.pdf)

[2] [https://www.edx.org/course/learning-data-introductory- machin...](https://www.edx.org/course/learning-data-introductory-machine- caltechx-cs1156x-0)

[3] [http://lambda-the-ultimate.org/node/2665](http://lambda-the- ultimate.org/node/2665)

[4] [https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf](https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf)

<comment><USER9> OK, apologies for making such a long post. Here is my point (which has turned out to be pretty long too):

1) I have realized that systematically learning programming concepts, models and algorithms first, and how to apply them through programming techniques is much more important than just keeping on learning new languages and frameworks. For this, I am finding "Concepts, Techniques and Models of Computer Programming" invaluable; it covers an amazing amount of ground, and has an excellent bibliography to know where to learn more of a particular aspect. It is is a successor of SICP, which is very good too, and, I suspect as a tribute, is the first reference in CTM.

2) Learn how to do lightweight design upfront based only on the problem/requirement independently from language; the book above helps enormously, but I also really like the approach in the 2008 version of the MIT course 6.005 (later versions are watered down IMHO) [1]. It reinforces this design approach, and has, AFAIK, the best approach to using Design Patterns properly and systematically: to bridge the gap between design and code, which this way just flows almost automatically from the design. It may not be immediately obvious, but this course has a lot in common with SICP. For this reason I am highly sceptical of TDD, although I love to write the tests first and incrementally.

3) Once you know 1), many aspects of learning a new language and using it well are a piece of cake, because what you learned in 1) transcends any particular language and is timeless; I am now starting to enjoy mapping what I learned in 1) to different languages.

4) if you have to or want to use a language that is lacking direct support for anything in 1), if the language's computing model allows it (and many do, it is amazing how adding just one little concept to a language opens a whole range of possibilities but also problems, i.e. destructive assignment, threads, exceptions, triggers, ports, dataflow variables, etc), you can just build an abstraction or find a mature library that implements it. It is equally amazing how much you can still accomplish even if you remove one of the those concepts from a language, like destructive assignment, if you know the right techniques. It may not be as efficient and convenient as a built in abstraction, but will very likely still be much better than the alternative of implementing a design that is not the right one for the problem/requirement.

5) there is no need at all to be intimidated by a language or system with an enormous amount of features/libraries. Most of the time you only need to select a subset of the language to accomplish your goal efficiently. From 1) you will learn exactly how to do this and exactly why it is crazy to try to use the full power of a language; you should actually do the exact opposite, use as few concepts of a language as you can get away with while still writing a program that has a good balance of all required good properties.

[1] [https://ocw.mit.edu/courses/electrical-engineering-and- compu...](https://ocw.mit.edu/courses/electrical-engineering-and-computer- science/6-005-elements-of-software-construction-fall-2008/)

</comment></comment></comment><comment><USER14> The author states:

>" DEC started a project to do dynamic translation from x86 to Alpha; at the time the project started, the projected performance of x86 basically running in emulation on Alpha was substantially better than native x86 on Intel chips."

I'm really curious how an Alpha emulating x86 could be faster than the native x86? Can someone shed some light on how this would be possible

<comment><USER15> And a bit further in the article: "By the time DEC finished their dynamic translation efforts, x86 in translation was barely faster than native x86 in floating point code, and substantially slower in integer code."

So perhaps they were overly optimistic.

</comment></comment><comment><USER16> It appears that the author uses adoption as his main metric of what works.

It's also quite hilarious that the author lists fancy type systems as a definite No, but formal methods as a maybe.

</comment><comment><USER17> I'm confused as to why he doesn't put functional programming as a yes. He writes "Functional languages are still quite niche, but functional programming ideas are now mainstream, at least for the HN/reddit/twitter crowd."

While purely Functional languages are definitely not mainstream, as he puts functional programming ideas are pretty mainstream. At the same time major OO languages like java have incorporated functional programming ideas, so arguably even Java is not purely Object Oriented anymore. It seems to me by his criteria that would also put OO as a no too.

If he comes from OO languages I think this is a bias because it is easy to take OO for granted and put strict requirements on foreign Functional Programming before accepting it as successful. However it seems to me the only criteria that should be needed to call either paradigm successful is if their ideas are are mainstream, which is true for both languages.

Basically if Function Programming ideas have gained currency then it should be regarded as successful.

<comment><USER18> I think it's important to make the distinction between a successful idea and a good one. For example OO as a paradigm in mainstream languages (C++, Java) has been very successful, despite it being more often than not a bad idea (e.g. horrible inheritance hierarchies are still implemented in this day and age, with dire consequences on code quality).

In OP's article, OO is filed under "what works", which I strongly disagree with. If anything, software development works DESPITE OO, which in my experience constantly hinders progress because of rigid architectures.

<comment><USER17> As much as FP has made my life easier, have to disagree with you on OO. Any language/paradigm is capable of producing bad code. In my first job a high up manager brought in Clojure to a department filled with Java and OO acolytes. While the language was amazing, the Clojure code base was filled with gigantic let statements simulating imperative code, functional spaghetti, and given the lack of a good IDE difficult to debug (had to throw exceptions just to see variable values... _shudders_ ). The point is not that FP is bad, just that any tool in unskilled hands can produce bad code.

Not sure what it is like for the industry at large, but from what I've seen a dominant paradigm in Java is to separate out model classes that are basically just structs with Service or Workflow classes that manipulate the data. It's questionable how much of that is still OO (at least when I started learning it the narrative was to put your code where your data is. POJOs are the opposite of that). Given say having a high level service that calls low level services and external system while returning a result produces code thats very easy to trace and provides solid abstraction to the calling code. Also if you've read Uncle Bob's data structure vs. Object dichotomy you'll see how Objects are objectively better in some scenarios, and OO languages give you powerful tools for objects.

That said 100% agree with you on horrible inheritance hierarchies. What I think would be best is some course on how to combine OO and FP paradigms to get the best of both worlds (though tbh it'd probably be 90% FP with some OO).

<comment><USER9> "What I think would be best is some course on how to combine OO and FP paradigms to get the best of both worlds"

If you want to find out, read "Concepts, Techniques, and Models of Computer Programming". It's mindblowing. It answers that question exactly.

This is a dense but exceptionally written 1000 page book, but maybe you can just read section 4.8.5 to get an idea [1]. However, I think you will take more than just reading this bit, to understand the different models (many more than the 2 everybody talks about).

Section 4.8.7 is actually "Using different models together", with the key "impedance matching" concept.

The author sort of summarizes it here [2]

There is also a mooc in edx, but it just scratches the surface of what's in the book [3]

[1] [https://books.google.com.vn/books?id=_bmyEnUnfTsC&pg=PA322&l...](https://books.google.com.vn/books?id=_bmyEnUnfTsC&pg=PA322&lpg=PA322&dq=picking+the+right+model+concepts+techniques&source=bl&ots=nCktxEdEEl&sig=G00yeodibw3ZSxOGoRdjF8x1cUQ&hl=en&sa=X&ved=0ahUKEwiLiOKOr- TXAhULabwKHVdIB7wQ6AEIJzAE#v=onepage&q=picking%20the%20right%20model%20concepts%20techniques&f=false)

[2] [http://lambda-the-ultimate.org/node/4698](http://lambda-the- ultimate.org/node/4698)

[3] [http://lambda-the-ultimate.org/node/4842](http://lambda-the- ultimate.org/node/4842)

<comment><USER17> Cool, thanks! Checking it out.

</comment></comment></comment></comment></comment><comment><USER19> What are the new Nos in 2017?</comment>


Linux kernel bug delivers corrupt TCP/IP data to Docker containers - <AUTHOR> https://medium.com/vijay-pandurangan/linux-kernel-bug-delivers-corrupt-tcp-ip-data-to-mesos-kubernetes-docker-containers-4986f88f7a19 <comment><USER2> 10% of traffic to a rack was corrupt? Is that common? That seems really bad if 10% of all TCP traffic is dropped due to corruption.

<comment><USER3> It turns out that hardware can fail in weird ways. Its not common, but it appears that it is not uncommon that the memory in a network device can go bad. When this happens, lots of packets are corrupted. I have a description of how I think this happens: [http://www.evanjones.ca/tcp-and-ethernet-checksums- fail.html](http://www.evanjones.ca/tcp-and-ethernet-checksums-fail.html)</comment></comment>


I was Mark Zuckerberg's mentor. Today I would tell him: your users are in peril - <AUTHOR> https://www.theguardian.com/technology/2018/jan/13/mark-zuckerberg-tech-addiction-investors-speak-up <comment><USER2> > I was once Mark Zuckerberg's mentor, but I have not been able to speak to > him about this.

You have had time to write an oped, but not call the guy on an issue you claim to find hugely important?

This seems more like public posturing, and we're seen a lot of this lately in public letters to companies, published articles, and speeches.

<comment><AUTHOR> _" You have had time to write an oped, but not call the guy on an issue you claim to find hugely important?"_

What makes you think he didn't try?</comment></comment>


IMVU's Timothy Fitz on how to do continuous deployment (podcast) - <AUTHOR> http://itc.conversationsnetwork.org/shows/detail4053.html#

<comment><USER2> Umm, I submitted this hours ago <http://news.ycombinator.com/item?id=551455>

I don't care that this submission got voted up and mine didn't, but I don't like that HN doesn't filter out the hash(#) mark that was added to this url to get around the uniqueness filter.

<comment><USER3> The fact that this was upvoted now also shows us the fickle nature of HN/similar sites.

<comment><USER4> Also be sure to note the submitting author on this post. May have to do with the upmodding.

</comment></comment></comment><comment><USER5> The interviewers talks too much. I'm listening to it right now and it's really frustrating. In the first 8 minutes Timothy talks for maybe 2 minutes total.</comment>


For better future, design things that are difficult to use - <AUTHOR> https://medium.com/@rdas121/for-better-future-design-things-that-are-difficult-to-use-fcec32ec4729#.bzd3aifs0 <comment><USER2> I believe, as designers, we can do better. In our education, there has been much focus around the what and the how, that the why has been left out. The why did not seem like a hard skill, but in my personal opinion it is the most important skill. Rather than just creating more efficient things, we need to start to deepen our understanding of what it means to be human. We need to re- imagine how design and technology can help people with being what they are best at.

<comment><USER3> Reminds me of Gordon tullock's hypothesis. He came up with a fabulous piece of design logic: if you want to reduce accidents, install a sharp spike pointing outwards from the steering wheel of every car, aimed at the driver's heart.

User friendly? No. But it would certainly make everybody drive very, very carefully.</comment></comment>


50+ Rubyists to Follow on Twitter - <AUTHOR> http://rubylearning.com/blog/2008/10/29/50-rubyists-to-follow-on-twitter/

<comment><USER2> I follow a few of those people on Twitter (and stopped following even more), and most of what I see is an approximation of line noise. Certainly of little real Ruby value.

If you want to keep tabs on what's up in the dozens of different Ruby communities, please consider getting a life, or, short of that, read blogs. The content is usually less random.

But if you want to learn Ruby, here's a clue: Forget Twitter, stop reading Hacker News, and code fucking Ruby. I wish more things in life were that simple.

Cult of Personality == Community Death

</comment><comment><USER3> Not sure what to think of this... I guess this point out one of the missing features of twitter: groups.

I don't feel comfortable adding 50+ people that I don't know just so once in a while I can get a neat ruby trick.

<comment><USER4> You might subscribe to the one person who reads all 50 of those Twitter feeds to pick out the one neat Ruby trick.

</comment></comment><comment><USER5> This is a great idea - thanks for the list!</comment>


Navy's touch-screen navigation system (ProPublica) - <AUTHOR> https://mobile.twitter.com/propublica/status/1210959303877771265 <comment><USER2> For those of you who want a readable version:

[https://threadreaderapp.com/thread/1210959303877771265.html](https://threadreaderapp.com/thread/1210959303877771265.html)

</comment><comment><USER3> [https://features.propublica.org/navy-uss-mccain- crash/navy-i...](https://features.propublica.org/navy-uss-mccain-crash/navy- installed-touch-screen-steering-ten-sailors-paid-with-their-lives/)</comment>


Ask HN: What productivity tips have worked for you? - <AUTHOR> Can you share one or more productivity tricks that worked for you? <comment><USER2> Making lists of the things you need to get done. I have found Apple Notes to be indispensable because it syncs between my Mac and my iPhone. And, making lists of your significant accomplishments. It's motivating to see all you've completed over time, and it makes writing status updates much easier.

</comment><comment><USER3> Defining a set of rules and processes I can follow: [https://wiki.nikitavoloboev.xyz/focusing](https://wiki.nikitavoloboev.xyz/focusing)

<comment><AUTHOR> Holy cow, you use githook as a blog. Nice man!

</comment></comment><comment><USER4> 1\. Exercise 2\. Taking breaks</comment>


First secure email service that uses Signal Protocol - <AUTHOR> https://criptext.com/ <comment><USER2> Is this project affiliated with Signal outside of using their protocol? I have been a faithful TextSecure user for years, but the service has been falling down of late, particularly Signal calls and group texts with non-Signal users, so I am leery of getting involved with another Signal team project...

<comment><AUTHOR> No, it's not affiliated in any way with Signal. It uses the Signal Protocol open source library for encrypting each email.

</comment></comment><comment><USER3> Doesn't seem to be working for me. I downloaded/installed the client for mac and I got errors generating keys. :/

<comment><AUTHOR> Thanks for this feedback, we're gonna look into what could be the problem.</comment></comment>


Microsoft laying off another 2,850 people in the next 12 months - <AUTHOR> http://www.businessinsider.com/microsoft-layoffs-2850-windows-phone-disaster-2016-7 <comment><USER2> It looks like the sales reorg will be part of this, which has been somewhat desperately needed, based on comments in terms of trying to get correct licensing for a number of their product lines. It will be interesting in the overal effects of this long term.

As with any bureaucracy (big business, or government), there is often a lot of room to restructure without significant impact to the larger organization or to outside people and orgs.</comment>


Bitcoin: Tax Evasion Currency - <AUTHOR> http://www.forbes.com/sites/robertwood/2013/08/07/bitcoin-tax-evasion-currency/ <comment><USER2> Many, many years ago, when words printed on dead trees were not only for hipsters, I used to work for a computer magazine (the printed kind).

Our editor-in-chief was this old-school guy in his fifties, with quite a few years of journalistic experience and with a ferocious attention to details and exigence. When he was brought in, the first thing he did was mail us a list of things that were unacceptable and would promptly result in ending collaboration if they were repeated.

I kept it for future reference, and this article meets about one third of the points there, including:

1\. Not talking about anything that happened, but instead talking about a lot of things that _could_ happen. Go write for a SF magazine if you want that.

2\. Mention every possible debate on the subject, without attempting to either offer a conclusion or a new set of arguments for any of them. People who do that after they're twenty were too busy being teacher's pets in college to get drunk, smoke weed and rant. Go get high or something.

3\. Bringing a lot of arguments for something that you do not explicitly mention. If your material is argumentative in nature, state what you are arguing for in the first few phrases, in a coherent form. Don't let people guess what you're arguing for and _especially_ don't imply it in the title. That's for wimps who want to make noise, but are too afraid to clearly express their opinions.

4\. Excessive use of terms that are reserved for probability or possibility. It's tempting to write these off as a stylistic device, but they are rarely actually needed; excessive use betrays lack of serious research, of which the author is unconsciously aware, but he is too haughty to admit it. Go check your sources, make a list of things you're sure of and things you aren't sure of, and see #1 for what to do with those that you aren't sure of.

(This is a true gem, there's a whole paragraph of things that may or may not be true, but who knows: "With no banking or government involvement, Bitcoin may be anonymous. It may even be ideal for someone who intentionally tries not to pay tax. That may be a small piece of the Bitcoin payment universe. But for most people who file tax returns and report their income whether or not it shows up on a Form W-2 or 1099, it probably isn't the tax haven some are suggesting it is.")

5\. Lack of a conclusion that either proves or disproves your original argument. If your conclusion is not about your point, you're sticking it in the wrong article and you just screwed up _two_ of them.

This is tabloid material.

</comment><comment><USER3> In other shocking news: USD: Tax Evasion Currency

<comment><USER4> Yep. And in the mean time, the biggest tax evader is google and does it absolutely legit.

<comment><USER5> If it's legal, it isn't evasion.

<comment> gaz-s Exactly; tax avoidance is legal, evasion is illegal.

</comment></comment></comment></comment><comment><USER6> Wow, talk about a hit job story. Not much substance here but a lot of work associating bitcoin with scary words.

<comment><USER7> Seriously. This article reads like a forced book report.

</comment></comment><comment><USER8> Right... I can predict the next headline: "Bitcoin: Terrorist Currency"

</comment><comment><USER9> I said this before, but here goes again: never read a forbes article on bitcoin. They made it loud and clear they're afraid of bitcoin.

What would you expect from a media "company" run by people afraid of bitcoin ?

<comment><USER10> There is also Jon Matonis at Forbes who is now president of Bitcoin Foundation, who writes tons of positive articles about Bitcoin every month.

</comment></comment><comment><USER10> Bitcoin allows wonderful tax-complience.

Imagine if government requires merchants to register their addresses with IRS. Now all the amounts can be traced and taxes calculated perfectly. Employers will also have to register addresses of the employees where the wages are paid. Now you'll have "white coins" that can be sent from one registered address to another without questions asked and "black coins" that exist outside the eyes of IRS. Obviously, it'll be hard+expensive to transfer black coins to white addresses and vice versa. Sounds very creepy, but there could be a nice outcome: government couldn't print money out of thin air and fund wars, DEA, NSA etc via "budget deficit", "bonds" and other names for never-to- be-paid debts.

</comment><comment><USER11> Yes, except bitcoins's crazy volatility makes it a deficient store of value.

So, until the volatility of bitcoin's exchange rate against the world's major currencies calms down and stays calm for a significant period of time, this really isn't something to worry about.

I agree with the sentiments of weland, even though I have not read this specific article because 7 of 8 articles I have read on Forbes.com, I regret having done so.</comment>


A fall spring-cleaning - Google products getting shut down - <AUTHOR> http://googleblog.blogspot.com/2011/09/fall-spring-clean.html

<comment><USER2> This "more wood behind fewer arrows" approach sounds great to me as long as they keep trying new things.

The only thing that concerns me about the approach is along the lines of what Doug Bowman said when he quit[0]: relying on data too much can blind you to what cannot be represented in data. Or, maybe, as Steve Jobs said: "A lot of times, people don't know what they want until you show it to them."[1]

I'm optimistic that Larry Page is finding a way that comes from conviction in combination with data.

[0]: <http://stopdesign.com/archive/2009/03/20/goodbye-google.html>

[1]: [http://www.businessweek.com/bwdaily/dnflash/may1998/nf80512d...](http://www.businessweek.com/bwdaily/dnflash/may1998/nf80512d.htm)

<comment><AUTHOR> The new design getting previewed in most Google products seems like a departure from relying on data. It is a radically different design from Google's typical fare and while they must have done focus group and internal testing it hasn't had years of AB testing evolution like the previous standard design.

<comment><USER3> I like the new design. How do you know they didn't AB test it?

<comment><AUTHOR> I never said it wasn't tested. I said it hasn't had the years of AB test the previous standard design had.

<comment><USER4> To have 'years of testing', first you have to start somewhere (days, then weeks, then months), no?

</comment></comment></comment></comment></comment><comment><USER5> I'm surprised Google Desktop is shutting down. A lot of my coworkers use this and rely on this quite heavily. I used it a lot myself.

There certainly is a need to index and search the vast amount of data that's now in our ever growing HDs. Is the search feature in the latest Windows versions capable of tackling this?

<comment><USER6> Yes. Having used Windows 7 at work and Leopard at home, Windows 7's start menu search functionality is just as good as Spotlight. It has, like Spotlight, let me treat my hard drive like a shapeless pile and still find everything I need quickly. It's also fast enough to use as an application launcher.

<comment><USER7> It's actually been that good for years. Google Desktop's value is mostly rooted in Windows XP.

</comment></comment></comment><comment><USER8> Wow, $50M for Aardvark & shut down in a year. Sometimes I really don't get things like this.

<comment><USER9> Acquisitions are about talent and not products more often than not with Google.

<comment><USER10> I can't speak for the aardvark team but I would feel devastated having in so many years of hard work only to see my baby being terminated, not because it's a bad product but simply because it doesn't fit the broader vision of the company that acquired you. Not sure I could stay at a place like that.

<comment><USER11> Agreed. Why the hell buy it in the first place? Maybe they wanted some of the IP to use somewhere else or something? It doesn't smell good to me. Are we still saying 'Do no evil?'

<comment><USER12> Dude ... read the other comments. It was a talent acquisition / google changed it's strategy since. If the founders did not want to have it shutdown they should have negotiated a clause in the contract.

<comment><USER11> But don't you find it odd? It's too much to pay for just a talent acquisition. IP + talent, perhaps, if it's really important IP.

</comment></comment></comment></comment></comment></comment><comment><USER13> I use Desktop frequently. It's often the only way I can find things on my computer.

"Desktop: In the last few years, there's been a huge shift from local to cloud-based storage and computing"

OK, but I'm pretty sure most files are still stored locally on most computers. I've barely ever used Windows own search feature. I hope it's up to scratch.

<comment><USER7> Window's search feature, at least if you're on 7 and you let it index what you want to search, is perfectly fine.

<comment><USER14> YMMV - I loathe the search in Windows 7 - which (apart from the "improvements" to Explorer) is a rather decent operating system.

<comment><USER15> It works for me, I don't like the 3-5 seconds of warm-up time before each search though. I mainly use it for quick-launching applications though and Launchy does a much better job of it.

</comment></comment></comment></comment><comment><USER16> I like how they didn't mention that their translation dictionary is now deader than a doornail. My wife used it virtually every day. I'm tempted to just make one, the hosting costs and complexity for such a thing (a web server with a lookup table) must be ridiculously tiny.

<comment><USER17> Is that a task the google translate page isn't up to?

<comment><USER16> No, it's not just a translation, but a translation + simultaneous lookup in a dictionary of both languages. So you'd get all of the various meanings for the word in both languages instead of just several possible words.

An absolutely wonderful vocabulary building tool I haven't really seen anyplace else.

<comment><USER12> You also get several meanings as well now in Google Translate.

<comment><USER16> You don't get meanings, you get possible translations of the word. But If I don't know what any of those words mean, that's not useful. So now I have to find a language appropriate dictionary and look each and every word up one at a time.

</comment></comment></comment></comment></comment><comment><USER18> I think that Ninite[1] is more than up to the task of replacing Google Pack. It even lets you select what software you want.

[1]: <http://ninite.com/>

<comment> X-Istence Each time I re-install a Windows machine I search for this product for a good 20 - 30 minutes before I give up and start installing stuff by hand.

The thing that kills them is their name. There is just no good way to easily remember it.

</comment></comment><comment><USER19> Anyone use any of these products being shut down?

Is there an opportunity to replace any of these for a startup?

<comment><USER20> I use Google Desktop dozens of times daily. I suspect lots of enterprise users are in the same XP boat without a fast search paddle.

<comment><USER21> You might be interested in:

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

<http://www.launchy.net/>

Not affiliated, just a fan of both tools.

</comment></comment></comment><comment><USER22> They also recently shut down their free and quite wonderful dictionary.

<comment><USER16> I for one cannot fathom the twisted thought process that went into that decision. It's a lookup table with a web front end!

Hosting that had to have been a barely perceptible blip in a rounding error audit.

Considering Google's desire to move people to web apps (part of the justification for shutting down desktop), killing off reference material was just _bizarre_.

<comment><USER12> Maybe it's because they want people to use google translate, which has the same functionality?

</comment></comment></comment><comment><USER23> It'd be nice if they were less cutesy about the entire thing. ("Spring- Cleaning"?)

</comment><comment><USER24> Shutting down unsuccessful [enough] products is a great way to demote non- performing managers and move developers to more successful teams.

<comment><USER25> That's how the public service works, but only because they can't just demote non-performing managers and replace someone possibly more competent.

Workers shouldn't be afraid that their project will get nixed, just because the project is run by a guy upper management wants to demote.

<comment><USER24> By the time when poor performance of manager is apparent it's hard to salvage anything on the project.

Workers should be afraid of working for bad manager and delivering useless product.

If workers avoid bad projects and bad managers that helps to protect resources from bad projects.

</comment></comment></comment><comment><USER26> It will be interesting to see where Google lands on the spectrum of "don't discontinue anything" and "all eggs in a few baskets". IBM did well in the former, Apple the latter.

Google almost seems to be taking the role of VC. Make many bets. Some pay off. For those that don't, Google can at least keep some of the engineers.

</comment><comment><USER27> "Due to the rapidly decreasing demand for downloadable software in favor of web apps [...]" I just hope they get rid of the memory leaks in their web apps...

</comment><comment><USER28> Thank goodness photovine isn't in that list

</comment><comment><USER29> They should make the code open source!

<comment><USER30> I wonder how hard it is to open source a Google product. I imagine that Google's products are heavily tied in to its proprietary solutions like BigTable.

</comment></comment><comment><USER31> It's interesting how they're shutting down the Flash API for Google Maps. Really shows you what the trend is with Flash.

<comment><USER27> Which is kind of sad in a way. I really prefer Actionscript over Javascript :(</comment></comment>


Pinephone – "Community Edition: PostmarketOS" Linux smartphone - <AUTHOR> https://store.pine64.org/product-category/pinephone/ <comment><USER2> Sad not to be mentioned, despite the update talking about a lot of my independent work last month or so. (discovering the HW issues, suggesting/verifying the fix, writing the USB-C/HDMI driver enabling the whole convergence thing) But I'm very glad about the progress PinePhone is making. The momentum is incredible.

If anyone is interested in original info from the author of the USB-C/HDMI work, I also put useful information/observations from my work on the kernel and PinePhone here:

[https://xnux.eu/devices/pine64-pinephone.html](https://xnux.eu/devices/pine64-pinephone.html)

The current thing on my radar is writing a power manager for the modem. :) That will improve the standby from 24h with the modem active to ~90h.

EDIT: All is well, btw. There's just a lot of pressure on pine64's small team, and it's hard to keep up with everything.

<comment><USER3> Booting to Arch Linux and being accessible on WiFi in ~5 seconds

Booting to my custom init process, initializing the system and running my UI app in ~1 second

Try that with any other smartphone...

<comment><USER2> Yeah, I've improved it a bit with UI in the bootloader (still fits in 32KiB sram, even with GUI) + flickerless/seamless display pipeline passover to the kernel in the meantime too. :)

I've also experimented with booting to electron and having the whole phone UI written in it...

[https://www.youtube.com/watch?v=Ce9vZj1r_-E](https://www.youtube.com/watch?v=Ce9vZj1r_-E)

<comment><USER4> shouldn't electron UI then eat up much of the battery gains made from the modem code?

<comment><USER2> Probably not. Electron just sits there doing not much other than 2-3% CPU load from updating the information in the header each second.

[https://megous.com/dl/tmp/a1017dd38ca6ce10.png](https://megous.com/dl/tmp/a1017dd38ca6ce10.png)

Batter gains in standby are something else. Main CPU is off, and no processes are thus running, so it doesn't matter what SW you have, for those gains.

</comment></comment></comment></comment></comment><comment><USER5> I have the ubports version of the pine64 and it is still pretty rough around the edges but the phone itself is very solid. It was recently announced that there was an issue with the usb-c port preventing it from being able to correctly negotiate with devices, but they have already worked out a fix [1] which I have carried out on my device and can confirm that usb is now working. Furthermore they are working with makerspaces to help people find someone who can do the soldering if they are not able.

Coincidentally, they also announced a soldering iron called the 'Pinecil'[2] which is based on the venerable TS100 but with a risc-v microprocessor running freertos for $25.

[1] [https://wiki.pine64.org/index.php?title=PinePhone_v1.1_-_Bra...](https://wiki.pine64.org/index.php?title=PinePhone_v1.1_-_Braveheart#USB- C_CC_pins_are_pulled_to_the_GND_by_AW3512_.28VCONN_switches.29_when_VCONN_is_off)

[2] [https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre- ord...](https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre-orders-and- new-pinephone-version/)

<comment><USER6> The UBports version of the Pinephone isn't just rough around the edges – that suggests that it will be a smoother experience one day, but it still needs work. Rather, my impression is that UBports is a dead end technologically. It is based inextricably on some 2014-era Ubuntu-specific software that even Ubuntu moved away from. The experience of SSHing into it, tweaking system configuration, etc. doesn't feel like the "ordinary desktop Linux on your phone" that everyone was hoping for.

As a former Nokia N900 owner, I was solidly disappointed by UBports. I suspect that, for example, the PureOS port to the Pinephone may eventually give users like myself what they are looking for. Luckily, even if your Pinephone is branded for a specific operating system, you can replace that OS with whatever other OS of your choosing.

<comment><USER7> The beauty of the PinePhone is that there's literally nothing tying it to UBPorts, I've flashed Mobian[1] on mine an am supper happy with it. The Arch builds are also coming together nicely. [2]

1 - [https://mobian-project.org](https://mobian-project.org)

2 - [https://github.com/dreemurrs- embedded/Pine64-Arch/releases](https://github.com/dreemurrs- embedded/Pine64-Arch/releases)

</comment></comment></comment><comment><USER8> I wonder how Pine64 is going to handle the new HongKong situation, it dissolved its company in California[1] last year due to 'Legal Mafia' and re- established it in HongKong. The website claims to operate under China & Malaysia laws[2].

Irrespective of HongKong situation, it was already tough to receive pre-built smartphone shipped from China in India without paying extraordinary import taxes; Now due to China goods blockade there's no way I'll be able to receive this PinePhone and I'm very sad for it.

I hope Pine64 starts shipping from their Malaysia front(Which seems to be office of their Chinese manufacturer - Syabas Technology[3]). I really want these pure Linux phones to succeed, I'm tired of this duopoly in the smartphone ecosystem as a consumer, developer and as an entrepreneur.

[1][https://www.reddit.com/r/PINE64official/comments/g8dqx9/pine...](https://www.reddit.com/r/PINE64official/comments/g8dqx9/pine_microsystems_inc_in_california_is_dissolved/)

[2][https://store.pine64.org/terms-of-use/](https://store.pine64.org/terms-of- use/)

[3][https://www.reddit.com/r/PINE64official/comments/gbliyw/some...](https://www.reddit.com/r/PINE64official/comments/gbliyw/some_questions_about_pine64_hardware_in_general/)

<comment><USER9> Personally speaking, I received a Pinebook Pro a couple of days ago and I live in Sweden. I didn't pay a penny in customs/taxes and the delivery of the computer was 100% on time. Obviously shipping locations and times are delayed at times, as mentioned in their big update yesterday - [https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre- ord...](https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre-orders-and- new-pinephone-version/) \- mentions improvements on shipping to the EU, and also impossibilities in shipping to certain countries.

<comment><USER8> I feel good for you albeit bit jealous; Scandinavian region seems to be the best place to live as far as current world affairs/Geopolitical tensions/Pandemic is concerned.

<comment><USER10> Except maybe Sweden re pandemic.

<comment><USER11> Deaths have flatlined.

<comment><USER12> Meanwhile, in the reality: [https://covid.observer/se/#per- capita](https://covid.observer/se/#per-capita)

Still growing by 2.9‰ (current 10 day average).

<comment><USER11> Thanks, looks like there was something wrong with the data I had.

</comment></comment></comment></comment></comment></comment></comment><comment><USER13> PostmarketOS is an incredible project worth supporting: [http://postmarketos.org/](http://postmarketos.org/)

They're trying to do for smartphones what PC-compatibles did for home computers: deliver a standardized general-purpose operating system across different hardware.

</comment><comment><USER14> Aral Balkan recently demonstrated running a web server from his new Pinephone using the site.js framework he developed and live-chatting with his viewers with it. Really cool.

He said the phone is definitely still not ready for everyday use, but great for devs obviously.

[https://ar.al/2020/07/12/live-stream-a-web-site-on-your- phon...](https://ar.al/2020/07/12/live-stream-a-web-site-on-your-phone-with- site.js/)

<comment><USER15> The possibilities with an open phone are awesome.

<comment><USER16> I don't think you need an open for this, you could just install nginx under Termux, or even not under it.

<comment><USER17> You do as Google is breaking termux in the next Android.

<comment><USER18> Your link doesn't work.

<comment><USER19> [https://github.com/termux/termux- app/issues/1072](https://github.com/termux/termux-app/issues/1072)

<comment><USER16> Ah, crap

</comment></comment></comment></comment></comment></comment></comment><comment><USER20> This is what I had hoped Android would be when I first heard about it before it was fully available. It looks like the OS still needs polish but not bad. And only $200 with a dock.

Here is a video walkthrough I found on youtube. I am not sure how up to date it is. [https://www.youtube.com/watch?v=mjaJJ6o-mbM](https://www.youtube.com/watch?v=mjaJJ6o-mbM)

<comment><USER21> Me too. I just assumed I would be able to treat it like the computer it is. For some reason everything has to be different just because I can make phone calls with it?

<comment><USER22> Modems and ARM did complicate things.

<comment><USER21> I guess, but I can treat my raspberry pi like a normal computer. And I still don't what having a modem has to do with anything since my computer in the 90's had a modem.

<comment><USER22> You can't treat a pi like a normal pc? You can't put a usb drive in a new pi and boot into an OS installer. You have to use their _custom_ system of flashing the sd card. That's after someone specifically crosscompiled a distro targeting pi hardware.

</comment></comment></comment></comment></comment><comment><USER23> This is an awesome piece of kit. I have one.

I used to have an N900. This is better.

Our community of doers who celebrate freedom by doing are amazing. This is almost, but not quite, the last piece of our autonomous puzzle.

Very soon now we'll have fully distributed jurisdictional priority, and we'll use this kind of tech to measure we're doing it right. We will demonstrate right of appeal to each other.

I love hacker news

<comment><USER24> > _I used to have an N900. This is better._

I've had a couple of them, they were way ahead of their time. The hardware had a few bugs but the form factor and keyboard were amazing, and the camera was very nice. I actually preferred the resistive touch screen on a slider like that, it made for fewer accidental touches, and it was very precise for stylus use.

There's a (stalled?) project[1] to swap out the main board with a modern, supported replacement, keeping the rest of the hardware the same. I'd love to see the interest in the Pinephone cause that project to wake up again. PostmarketOS would be a good fit for the Neo900.

[1] [https://neo900.org](https://neo900.org)

</comment></comment><comment><USER25> Ah, the HN hug. Poor site.

I have a lot of optimism for this phone. I don't know whether to buy one of these, or wait for the "GA" version to come out. I'm most interested in running Plasma Mobile but being able to "distro hop" on a cell phone is pretty awesome.

<comment><USER2> 1.2a feels to me like GA. There's not much HW wise that I'd consider an issue anymore.

There are things that could be better, like having a different WiFi chip, that would have a better [actual mainline] driver support with working power management. Not sure how likely that is. Probably not much.

</comment></comment><comment><USER26> As someone not in the free smartphone world (yet) - what is going on? What are those UBports and Braveheart versions people are talking about? How's the software stack. Is GTK/QT usable with touch? How's the battery life? Any progress on making open modem?

<comment><USER27> The Braveheart edition was pre-release (v1.1) hardware with no OS preinstalled. The Community Editions (CE) are based on release hardware with $10 of the purchase price going to the distro that gets preinstalled. The first one, that many here have in hand currently, was the UBports CE which was the v1.2 hardware with UBports preinstalled. The model you can currently order is the PostmarketOS CE which will be based on the v1.2a hardware (fixes an annoying USB hardware bug and I believe a low-brightness flickering bug as well in v1.2) So while they're different revs of the hardware, it's still the same phone with h/w bug fixes.

Define usable ;-) The distros are all very much a work in progress as even basic things like power management and device drivers still under very active development. The hardware of the Pinephone feels pretty solid and the software is just about at a 'hacker friendly' stage where you're not having to deal with fundamental annoyances at the system level. It's still a long way from being 'daily driver' ready though.

</comment></comment><comment><USER15> Maybe I'm showing my age, but this is the first release of a phone I have been eagerly awaiting.

<comment><USER28> Openmoko Freerunner ;)

Had one many years ago. Great idea but not a livable-with phone. Put me off dev phones possibly forever.

Didn't stop me getting an N900 at launch though. Great little piece of kit.

<comment><USER29> Ha, Openmoko Neo Freerunner was my first smartphone :) It managed to play the role of "livable-with phone" well enough for me though (but not without some effort of course). Then moved to Nokia N900 and only now I'm switching from it to Librem 5.

<comment><USER28> Wow you kept that N900 alive for a long time!

Mine effectively died after about three years, the USB charging port came loose and the only way I had to charge it was removing the battery and charging externally.

The freerunner was just a little too pre-market for me. I remember installing various different OS and frontend packages and trying lots of things out. It would have been fine but for one failing - whatever I installed, incoming calls would often just be silent. A phone that can't take calls is a step too far!

<comment><USER29> Well, I have cheated a bit, it's a third one if I count right and I still have some spares... :D

Freerunner sure needed some attention to make it work, but with workarounds and hw fixes for the infamous #1024 and call buzz issues it was a pretty great device. I would have used it longer if not for unbearable GPU performance that drove me towards N900 (damned glamo :))

</comment></comment></comment></comment></comment><comment><USER30> I ordered the UBports version a few months back and it recently arrived. At the moment I'm running Mobian, basically Debian for the PinePhone. There are a lot of rough edges still, but it just feels great to have the ability to tinker with your phone in the same way you tinker with your linux box.

<comment><USER31> Are you using it as a daily driver?

<comment><USER30> No, I'm stillnusing my OnePlus 3 as a daily driver. I'm in the process of finding similar programs to the ones I regularly use on the PinePhone so I can eventually try using it for a day.

<comment><USER32> If you do find suitable software it's good to know that you could then install Ubuntu Touch on the OnePlus3 for a higher powered experience: [https://forums.ubports.com/topic/3253/oneplus-3-3t/542](https://forums.ubports.com/topic/3253/oneplus-3-3t/542)

<comment><USER30> I honestly don't want to do that for two main reasons.

1\. Apps like Revolut and others I rely on don't work on Ubuntu Touch to my knowledge.

2\. Ubuntu Touch is not 100% customizable either. The rootfs for example is mounted as read only with no ability to change that. My ext4 sd card could not be mounted through any gui from what I tried. Mounting it through the terminal worked, but when I put it into fstab (and imo "fixed" the read only rootfs) the changes were reset on the next boot. That was the point where I decided to switch to mobian.

</comment></comment></comment></comment></comment><comment><AUTHOR> If you are wondering, what you can already do with this phone: [https://www.youtube.com/watch?v=bH3RbrwhNd8](https://www.youtube.com/watch?v=bH3RbrwhNd8) (but this is Ubuntu Touch)

</comment><comment><USER33> Has logo on back and comes with a usb-c hub:

[https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre- ord...](https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre-orders-and- new-pinephone-version/)

imgur backup of the essential banner: [https://i.imgur.com/XteJmBp.jpg](https://i.imgur.com/XteJmBp.jpg)

> Introducing PinePhone Convergence Package with postmarketOS CE featuring 3GB > RAM/ 32GB eMMC and a USB-C dock for $199; available alongside regular > PinePhone postmarketOS CE for $149

<comment><USER34> Here's also a demo of the dock in action I recorded a while back: [https://www.youtube.com/watch?v=yBeza4UNOm8](https://www.youtube.com/watch?v=yBeza4UNOm8)

</comment></comment><comment><USER35> Woah, USB C dock included with the Convergence version looks really cool. Definitely would close the convergence gap further than just using all the same cable for my devices to actually being able to use docks and similar distros/software!

<comment><USER16> Dang it, now I want that.

Anyone want to buy my Braveheart?

<comment> yjftsjthsd-h Sounds like you can patch the braveheart if you have a soldering iron and bravery:

> While we're discussing this topic, let me tackle the elephant in the room > and acknowledge that a design flaw in PCBA rev. 1.1 and 1.2 prevents this > functionality (please see relevant documentation related to CC pin) on > Braveheart and UBports CE phones. Thankfully the fix to the problem – the > removal of two small components from the PCBA – is relatively simple to > perform for someone with good soldering skills. At the same time I recognize > that many community members, myself included, are not capable of completing > this operation. To this end, we will set up a chain of local (in your > geographic area) workshops, makerspaces or individual technicians capable of > performing this fix, so you can send your 1.1 / 1.2 phone to them to > complete the repair.

([https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre- ord...](https://www.pine64.org/2020/07/15/july-updatepmos-ce-pre-orders-and- new-pinephone-version/))

</comment></comment></comment><comment><USER36> The preinstalled postmarketOS software build which ships with this edition of the PinePhone is an Alpha software build. This effectively mean that while core functionality of the PinePhone – such as telephone calls, SMS messages, LTE, GPS, GPU acceleration, etc. – is operational, it is also an ongoing effort, and thus the device cannot be considered as a consumer-ready product.

</comment><comment><USER37> _Still_ waiting for my UBports CE pinephone to arrive, which they sent a shipping update for _weeks_ after I tried canceling my order which they completely ignored without any acknowledgement.

Right now I am incredibly disappointed with pine64 in terms of their customer relations.

<comment><USER7> It's worth noting that it's a fairly small team doing an increadable amount of work. They've mentioned being overwhelmed with queries, even it this update. It's not Apple or Samsung. I'd be patient, maybe ping them once more just in case they missed it, try the forums instead of email as well.

</comment></comment><comment><USER38> This looks really sweet, hopefully they succeed, but

>Device Warranty: 30 Days

that's not legal in the EU right? minimum is 1 year for businesses and 2 years for consumers?

<comment><USER39> > EU consumer rules cover goods and services that have been bought in the EU. > However, if you buy from a non-EU online trader who has specifically > targeted EU consumers you should also be covered by EU rules, but you may > find it difficult to assert your rights with a trader who is based outside > the EU.

IANAL, but it seems to me like PINE is not "specifically targeting EU consumers".

Nonetheless, such a short warranty period is rather embarrassing for a niche product sought for mainly by folks disappointed with mainstream products' profit-oriented fragile design and poor support cycle. Heck, it even has "postmarket" in its name :P

Source: [https://europa.eu/youreurope/citizens/consumers/shopping/sho...](https://europa.eu/youreurope/citizens/consumers/shopping/shopping- consumer-rights/index_en.htm)

More information: [https://europa.eu/youreurope/citizens/consumers/shopping/gua...](https://europa.eu/youreurope/citizens/consumers/shopping/guarantees- returns/index_en.htm)

</comment></comment><comment><USER40> Is there a way to run Debian on the PinePhone?

I don't mean a debian based OS that is maintained by someone else, but something that is maintained by and can be downloaded from Debian?

If it boots and gives me a shell, I would be happy. I don't need a GUI or phone specific software. If I can have a real linux computer in my pocket, that would be great.

<comment><USER41> There Mobian which IMO is as close to a supported Debian OS on Pinephonr as you can get. [https://mobian-project.org/](https://mobian-project.org/)

<comment><USER40> Regarding to my question, that means "No", right?

As far as I can see, Mobian is maintained by Matrix.org whom I never heard of before.

The reason I would like to use Debian is that it is maintained by the Debian foundation who have an excellent history of trustworthiness and reliability.

Why can't one install Debian on the PinePhone?

<comment><USER42> Because nobody has done that yet. Go over to debian-devel, talk to the Debian ARM people and the Debian installer people, and you can help bring Debian to the PinePhone.

<comment><USER43> Actually, mobian does exactly this... That guy isn't THAT interested to spend 5 mins of his time to solve HIS problem.

[https://gitlab.com/mobian1/mobian- recipes/-/blob/master/root...](https://gitlab.com/mobian1/mobian- recipes/-/blob/master/rootfs.yaml#L13)

</comment></comment></comment></comment></comment><comment><USER44> Here is a hands on review of the recent ubports community edition of the pinephone: [https://boilingsteam.com/pinephone-community-edition-ce- revi...](https://boilingsteam.com/pinephone-community-edition-ce-review/)

</comment><comment><USER45> Would this be killed by security requirements? My company allows email on my Android only if I install MS Intune which made me choose a longer passcode and doesnt allow unlocked screen while charging. Banking apps prevent rooted phones. Will major apps boycott this platform?

<comment><USER2> My guess is that major apps will simply ignore Linux phones, until they get noticeable adoption.

The web is the only saving grace for any of the upstart mobile devices and new operating system projects, when it comes to compatibility with incumbent/major apps.

That's also why open protocols/APIs/formats, data portability, are important. So that people who care can write an independent clients. One of the banks I use has an open, docummented JSON API for end users (as a basic feature of the regular bank account, that everyone gets access to by default). I can easily write a bank app for that, to be able to do some basic account overview and wire transfer payments.

It's not a locked down platform, so if security means that everything has to be signed/verified/locked down and unmodifiable by the user, then it will not pass.

<comment><USER46> Which bank is this? I've been looking for one that exposes an API for years.

<comment><USER47> In theory there is EU regulation so all EU banks should expose this. I'm not sure where it went in practice though.

<comment><USER48> I think that (PSD2) only applies to having an API that allows users to grant access to their account to third party apps. Actually using that API yourself seems impossible, as banks want only vetted third parties to actually use the API.

It means you get the freedom to choose a different pre-approved proprietary app to access your bank account (which will probably make its money from selling a nicely detailed advertising profile based on your transactions), not the freedom to interface with your bank with an open API.

Also, because of the strong authentication requirement from PSD2 (amongst others), you won't get to do banking in an app except on an Android or IOS smartphone. Add to this the ongoing drive from banks and governments alike to push authentication even on a normal computer to smartphones (i.e., you use their proprietary app on an Android/IOS smartphone to authenticate when you access them via a web browser on a normal computer), and the picture becomes really bleak for any alternative smartphone OS.

The current trend, at least seen from the Netherlands, is: you submit to an Android or IOS smartphone, and you get to do things like banking or accessing your digital healthcare dossier online. If you don't, then you are classified as digitally illiterate, and are nudged towards having people near you assume those tasks in your name by delegation — basically the strategy for elderly or the mentally incapable. The third option, authentication using discrete hardware such as card readers (currently an option for many banks) or something like WebAuthn is something banks would really like to get rid of because of the cost of maintaining multiple authentication methods, and hey, everybody owns an Android/IOS smartphone anyway, so why not .. ?

<comment><USER2> Pretty much. I had some hope about PSD2, until I read about it.

Very useless, unless you just want to give your data to more third parties.

In addition EU also broke all my bank scraping scripts (except for the mentioned bank, that still has the same API it had for years already and doesn't require two factor auth, just an api key) by enforcing two-factor (well not really, just SMS auth, it's not like I can use any other 2nd factor, or make my own).

So in addition to helping third-party data slurpers, they also broke the first-party data access with the latest regulation.

</comment></comment></comment></comment></comment></comment><comment><USER49> I purchased mine a while ago, but the excitement with Covid resulted in me still waiting ( although it is on the way now ). I am excited. I am not sure it will be a daily driver, but we need something outside current practical duopoly.

</comment><comment><USER50> Very happy too work done on an a phone with open boot loader. That you can run Linux on Pinephone. A smart phone is just a smaller sized computer. Computers should be allowed to boot any operating system to be promoting computational freedom. Further consumer competition laws should Be changed to mandate open boot loaders and hardware specifications. With open source software hardware devices can be used longer and its thus better for the planet and environment. Closed source is not so environmentally friendly in that it will more often lead to hardware not getting software updates.

Great work Pinephone team!

</comment><comment><USER51> How hard do you think it would be to configure the phone using Guix or NixOS?

<comment><USER52> [https://mobile.nixos.org/devices/pine64-pinephone- braveheart...](https://mobile.nixos.org/devices/pine64-pinephone- braveheart.html)

No idea how usable out of the box that is of course...

<comment><USER51> Nice! I regularly dig through NixOS docs, follow them on twitter, chat on the IRC channel and this is the first time I've come across the mobile-nixos stuff!!

</comment></comment></comment><comment><USER53> Could PWA's be installed on a phone like this, through browsers like chrome or firefox? That would greatly lower the barrier to entry to "develop" for them!

</comment><comment><USER54> Many OSs have put effort into supporting these devices.

I don't like the "powered by Linux" and "postmarketOS" branding in the device.

What if I buy it to run netbsd on it?

<comment><USER55> You can buy an unbranded back cover separately [0], but for now they're doing production runs to support the different software projects.

[0]: [https://store.pine64.org/product/pinephone-back- cover/](https://store.pine64.org/product/pinephone-back-cover/)

</comment></comment><comment><USER56> I thought this is The One. The I saw the specs: 5.95 inches display.

Another brick.

Please, please, please: make phones smaller. The Nexus 4 was the largest that actually fit a pocket.

<comment><USER57> > The Nexus 4 was the largest that actually fit a pocket.

Depends what you mean by "a pocket"? I think the iPhone 8+ is very close to the same size as the PinePhone and noticeably bigger than Nexus 4.

It fits comfortably into the pockets on most pants, shorts, jackets and sweatshirts I own. Maybe I tend to wear things with big pockets? If so, it's not intentional.

<comment><USER30> I actually started to measure pockets with my phone and buy based on that. (5.5' OP3, but the PinePhone usually fits in the same pockets)

</comment></comment></comment><comment><USER58> So I'm done waiting, and just had to order one. Even went for the convergence edition.

Not expecting a daily driver, but probably the most fun tech gadget of 2020.

</comment><comment><USER59> Is there any kind of navigation app for this?

<comment><USER55> I haven't had a chance to try it too extensively, but I've heard good things about Pure Maps [0] (linking to UBPorts app store since it has screenshots).

[0]: [https://open-store.io/app/pure-maps.jonnius](https://open- store.io/app/pure-maps.jonnius)

</comment></comment><comment><USER60> I'm really looking forward to get one of these things when they come with decent warranty and without dead pixels. I'm as eager as anyone to get away from the walled garden duopoly, but since it's not suitable as a daily driver yet, maybe I'll be able to restrain myself and not buy it.

</comment><comment><USER61> Site is dead slow...

        PS C:\> Measure-Command {curl.exe -I https://store.pine64.org/product-category/pinephone}
        TotalSeconds      : 23.2096005

<comment><USER62> Yeah, their site has always been abysmal to use.

edit: to be fair as others pointed out, it's likely that I've mainly ended up on their store after/during the hug of death from hn/reddit.

<comment><USER63> I've only ever seen it slow directly following an HN/Reddit post.

It may never have been _instant_ loading, but it's always felt fairly responsive to me.

</comment></comment></comment><comment><USER64> What hold me and most of my friends back from switching to a phone like this is that Signal is unlikely to work on it for quite some time.

<comment><USER32> Ubports Ubuntu Touch has a Signal port up and running. It's called Axocotl: [https://github.com/nanu-c/axolotl/](https://github.com/nanu-c/axolotl/)

It's not fully functioning but you can see what's working fairly quickly;

<comment><USER64> Thanks!

</comment></comment></comment><comment><USER65> Does anyone know where they're manufactured?

</comment><comment><USER66> Is there a way to do GPS navigation on a PostmarketOS device like this?

</comment><comment><USER67> Hopefully this will lead to an improved PineTab as well!

<comment><USER68> I would love that. and a future eInk device.

</comment></comment><comment><USER69> > Device Warranty: 30 Days

rip

That's an instant turn off.

<comment><USER70> This is not a consumer product at this point. It's for hackers, by hackers.

</comment></comment><comment><USER71> No NFC? I guess Google / Apple pay could never run on such a device. :(

<comment><USER39> Moreover, neither will NFC U2F dongles! That thing alone already disqualifies the phone for me. Both PINE and Librem lack this and some other essential functionalities. If anyone ever manages to create a sufficiently modern free smartphone, I'm buying it right away. I think it might happen in China, as recent ban on Google Play may force Chinese companies to fight for customers disappointed with Apple's and Google's unethical policies. I wouldn't be surprised if I woke up one day and hear of China launching a fully operative postmarketOS variant of one of their flagship phones made exclusively for export to the West.

<comment><USER55> There's been work on adding wireless charging to the phone using the pogo pins on the back, maybe something similar could be done to make a back cover with NFC?

</comment></comment></comment><comment><USER72> Can someone give me a TLDR on the OS? (The website isn't great, it's more about hardware specs). Will it run Andorid apps? I bought an Ubuntu phone but it was a bit disappointing, mainly because of the lack of software available.

</comment><comment><USER73> I want to support open phone development and alternatives to the Google/Apple smartphone duopoly. Can I use this phone with US carriers like Verizon?

</comment><comment><USER74> Who will let you activate this phone on their network? I know that my provider won't even if the phone is compatible (Comcast/Xfinity). but I am trying to move away from this cancer company.

</comment><comment><USER75> As someone that has been waiting for their RMA process with a Pinebook Pro for more than a month now I am incredibly disappointed with their customer service.

Getting any kind of response from then can take two to three days and all you get is "thank you for your understanding and patience" while they "wait for the manufacturer to provide replacement parts".

<comment><USER76> While that's unfortunate, I think it would be best if you re-calibrated your expectations. The Pinebook Pro is not a consumer product; it is an enthusiast product being sold with minimal profit margins. The PBP is produced in China and shipped out from Hong Kong in batches rather infrequently (maybe about once per month). To the best of my knowledge, they don't really have a "customer service" team. Taken together, these things obviously do not lead to an optimal consumer experience, but this is to be expected for such inexpensive low-volume niche products.</comment></comment>


Ace inhibitors as a potential risk factor for fatal Covid-19 - <AUTHOR> https://www.bmj.com/content/368/bmj.m810/rr-2 <comment><USER2> This article is a great example of why self-experimentation can make things worse.

A few days ago there was much discussion on taking ACE inhibitors prophylactically to prevent infection.

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

<comment><USER3> This is how science works.

The user you linked to is making a more or less informed decision. It would be terrible to recommend their course of action to the entire world population.

But if they want to self-dose, at low, arguably proven-safe concentrations, then that's their business.

Biology is a messy, several-of-orders-of-magnitude more complex topic.

<comment><USER2> What the user was doing was NOT science. It's just random experimentation.

There is nothing you can learn from a one-off experiment like that.

That said, you are correct that they have every right to take whatever drug they want. However, i think it nicely highlights the risk of taking something and having it make things worse.

</comment></comment></comment><comment><USER4> "The Council on Hypertension of the European Society of Cardiology wish to highlight the lack of any evidence supporting harmful effect of ACE-I and ARB in the context of the pandemic COVID-19 outbreak."

[https://www.escardio.org/Councils/Council-on- Hypertension-(C...](https://www.escardio.org/Councils/Council-on- Hypertension-\(CHT\)/News/position-statement-of-the-esc-council-on- hypertension-on-ace-inhibitors-and-ang)

</comment><comment><AUTHOR> [https://www.thelancet.com/pdfs/journals/lanres/PIIS2213-2600...](https://www.thelancet.com/pdfs/journals/lanres/PIIS2213-2600\(20\)30116-8.pdf)

[https://www.nature.com/articles/s41569-020-0360-5](https://www.nature.com/articles/s41569-020-0360-5)</comment>


Phones with 'Flappy Bird' app fetching big bids on eBay - <AUTHOR> http://www.usatoday.com/story/tech/gaming/2014/02/10/flappy-bird-auction/5358289/

<comment><USER2> 99k ... sounds legit ... Flappy Birds is more fun than a new porsche 911

<comment><USER3> well if you have 5 porsches, 7 ferraries in your garage, then yes 99k for a game that you can't buy anymore is worth it!</comment></comment>