The Case for Ubuntu Phone - <AUTHOR> http://gould.cx/ted/blog/2017/01/14/The-Case-for-Ubuntu-Phone/ <comment><USER3> I would like to try Ubuntu Phone but I cannot find it anywhere.

Canonical's page says that all devices are out of stock, various online stores say exactly the same thing, and all the devices that are listed as compatibile (Nexus 5 for instance) are two generations old and also hard to come by.

The only option I haven't tried is buying used phone on eBay, because they usually come in pretty bad shape so I want brand new device.

Please Canonical, get your shit together and release SOMETHING, pretty much any device with 4.5 inch screen 2GB RAM and 32GB flash will do.

<comment><USER4> You can get the tablet bq M10 now. Or you can preorder the Fair phone 2, the version with Ubuntu preinstalled.

<comment><USER5> The Fairphone 2 doesn't come with Ubuntu preinstalled and the project to run the OS on the phone is community based and in progress.

[http://www.omgubuntu.co.uk/2016/07/ubuntu- fairphone-2-port-u...](http://www.omgubuntu.co.uk/2016/07/ubuntu- fairphone-2-port-update) [https://forum.fairphone.com/t/fairphone-2-ubuntu- touch/23475](https://forum.fairphone.com/t/fairphone-2-ubuntu-touch/23475)

</comment></comment></comment><comment><USER6> I applaud the OP's bravery, but after a long, long time in the telco business and having seen many attempts from multiple platforms towards gaining a foothold (Symbian, Maemo, LiMo - including Vodafone's own version - Bada, etc.), I have to point out that Ubuntu Phone, despite the vision and values behind it, is at a massively overwhelming disadvantage in terms of both telco appeal (what I and my former colleagues still in the device procurement part of the telco business have seen so far has no compelling advantage over Android) and ecosystem.

Even if selling off-telco worked, the one problem I see is the lack of that ecosystem, or a way to bootstrap it, because if it ran Android apps (and therefore fracture the user experience) that would not ensure developer adoption... And most people only want a "good enough" phone that lets them run apps and a few games, which further compounds the problem -- the value of Ubuntu Phone Just isn't apparent to them, which is sad.

<comment><USER7> I think the biggest thing that could probably help the Ubuntu Phone is an approachable development environment. If the road to developing apps for a phone is short enough, that people on their weekend make apps for it, it will expand rapidly with apps. This requires great tooling, and documentation. Potentially even adoption of a programming language that either comes with a powerful SDK or is tailored from the ground up for this purpose, or forked. We've seen this type of boom with Go. Go has a LOT of out of the box functionality, and Python does too, it is what makes people stick to them once they like them in my opinion. However, tooling and documentation are key. I know Ubuntu has Ubuntu Make, but it still has a long way to go. If they can make a great development ecosystem, they can bring in a number of developers.

<comment><USER8> Curious why you say Go comes with a lot out of the box. Compared to Python or Java I find it pretty lacking. And even more so when you include 3rd party libraries and the fact that Go has no package manager ala. pip or Ivy.

Android Studio is a pretty mature well documented way to make apps so if anyone is truly determined and has some programming experience, making a simple Android app in a weekend is doable. I've heard (but don't know personally) that the iOS toolchain is even easier to use.

That all aside, nobody will WANT to spend their weekend making Ubuntu apps when nobody has a phone to run them.

<comment><USER9> > and the fact that Go has no package manager ala. pip or Ivy.

A featureful Go package manager a la Cargo or NPM is coming.

A not-so basic package manager is baked into the language and its official tooling. It just behaves like a Unix application, so instead of "pip uninstall package" you run "rm -rf $GOPATH/src/github.com/author/package" (or do it in your app's vendor directory, instead of using a virtualenv).

</comment></comment></comment></comment><comment><USER10> The most logical thing for Ubuntu Phone to do would be to start out with making some kind of ROM that people could sideload onto their existing Android. The people who first started out using Ubuntu were interested enough and wanted an alternative to Windows badly enough that they didn't mind installing it as a replacement. Why can't Ubuntu Phone start out as a replacement to Android? The only "problem" being that Android has not really messed up too badly yet, other than in making everything go through the Google Play Services and shutting out AOSP and leaving it stuck in 2009.

And yes there is a ROM out there but it's not available on enough devices to create enough of a stir. This is the mistake Canonical is making, and they might regret leaving the job of porting to popular devices up to the 'community' (read: volunteers) instead of paying a team of developers to just get the ROM working to a point where it is a half-decent alternative to even Cyanogenmod. Microsoft made that same mistake before the iPhone and never really recovered.

<comment><USER11> And they should write a porting guide, first thing. Start with setting up a dev environment and cross-compiler.

Then they should do a sample port to some very easy to obtain hardware, a Chinese $100 GSM phone, and document the whole process step-by-step.

If you want wide support, you need to leverage enthusiasm.

<comment><USER12> They have a porting guide here:

[https://developer.ubuntu.com/en/phone/devices/porting-new- de...](https://developer.ubuntu.com/en/phone/devices/porting-new-device/)

Cross-compilers have been available for a while now.

</comment></comment></comment><comment><USER7> I would love to have a Ubuntu Phone, but my carrier in the US probably doesn't support such phones yet as far as I'm aware. If they can sooner reach the multiple carriers in this side of the globe effectively (and hopefully not AT&T first, kind of sick of everyone going to them first) then that would help the ecosystem currently going on. I am not enjoying the options left.

I loved Android at first because it is based on Linux, but I don't feel like I'm using Linux, I just feel like I'm using the only other option left. I like the few freedoms Android gives me at least, but it takes more effort than if I had Ubuntu installed on a computer to do anything useful on it.

Amazon tried, but why would I want to stop being locked down by one tech giant just to be locked down to the next. A phone should have the essentials, nothing forcefully locked into the phone. I can't uninstall Facebook, Instagram, or Messenger from my phone without rooting. If one day they all shut down that becomes a completely useless set of applications. Years from now I should still be able to text and call though? I should be able to change the apps that do those things too either way! If the manufacturer stops supporting them for example.

I love the freedom of Linux, and Android never feels like it yet. I hope Ubuntu comes to America and becomes highly available everywhere. I also hope competitors are allowed, or Distros. Would be nice to see alternative phones. I don't want to be locked down as much as I love Google, they shouldn't have total control of my phone, neither should Apple, or Canonical.

At least Canonical respects that.

<comment><USER13> _> I would love to have a Ubuntu Phone, but my carrier in the US probably doesn't support such phones yet as far as I'm aware._

How does that work? Does the carrier have to support each new brand of phone?

I don't think we have a system like that here in the UK. I have an iPhone 6 paid for with a monthly contract, but I was using a ~2002 Nokia feature phone recently while it was away for repair.

<comment><USER14> Just went through this research again for the first time in five or six years. One of the most frustrating things about US carriers is that they force manufacturers to limit their offerings in this market.

For example, dual SIM card phones are not offered on any phones built for the US market, since carriers make a lot of their money from financing new phones. There are also phones with three and four SIM cards made for other markets. Need two (or three or four) numbers? In the US, you have to buy two (or three or four) phones.

AT&T and T-Mobile use the GSM protocol on their networks, which is the protocol used in the rest of the world. The 2G bands use different frequencies in this hemisphere than the frequencies used in Europe and Asia. The 3G and 4G and LTE bands are different yet, but the basic protocol is the same, so if the radio works, the phone works.

Sprint and Verizon use a different protocol called CDMA which is incompatible with GSM. Phones designed for foreign markets do not work at all on their networks.

So to summarize, barriers built using different protocols and marketing limit the ability for US consumers to treat their handset for what it is (a commodity) and help lock them in to one of two carriers. This is why Apple and Samsung can get away with charging $600+ for devices that cost a very small fraction of that to manufacture using impoverished laborers.

I just bought a 2G Philips dual SIM phone made in China for the Russian market that will work on T-mobile's US 2G network. (It will not work on AT&T since they turned off their 2G network on January 1.) I plan to use two SIM cards for the two numbers I have, and to limit mobile data to a tablet for those times when I absolutely need it. Everything else (paying bills, looking for work, shopping, playing games, getting directions, etc.) will be done on a laptop or desktop.

I would welcome reform of the US cell market, but I'm not holding my breath for that to happen. They simply have too much power, and most Americans are completely unaware that it could be any different or better.

<comment><USER15> > _For example, dual SIM card phones are not offered on any phones built for > the US market, since carriers make a lot of their money from financing new > phones._

Actually there are plenty of dual SIM models available in the US from US companies that are 100% compatible with US carriers, you just have to be willing to open a browser and shop for five minutes. I am currently using a Microsoft Lumia 650 dual SIM phone, purchased from Microsoft and shipped to me in Georgia (US) from California. It fully supports both AT&T's and T-Mobile's networks, and consequently all MVNOs of those networks. Until I gave her my Nexus 6, my wife was using a dual SIM Blu Android phone, sold by a Florida based company and shipped from the US. Again, the phone supported all US GSM bands.

<comment><USER14> I stand corrected. I was not shopping for smartphones this time around, so hadn't looked at those. There isn't nearly as much variety in basic phones and feature phones offered in the US.

<comment><USER15> You're right, and that's unfortunate. I wanted a basic phone for porting out my Google voice number to my carrier when I decided to stop using all Google services, but there wasn't anything worth having that was cheaper than a smartphone. So, since I was buying a new smartphone anyway, I went with a dual SIM model.

</comment></comment></comment></comment></comment></comment><comment><USER16> FOSS software running phones/tablets is currently at roughly the same place FOSS software on the PC was at the turn of the millenium, and now reports indicate that Linux on the PC/laptop is gaining more and more notice from vendors each year, something no one could've dreamnt of during the monopolistic haydays of MS. So whether or not it gains traction from telcos and the average consumer, a functioning alternative to closed ecosystems is justified by its very existence and the ever-present possibility that a combination of factors can at any moment cause it to rise to the forefront. But it can win only if it's still in the ring right?

</comment><comment><USER17> PCs have interchangeable components that are built around standards. So if it's easier to write for them in an abstracted way. Vendors control the hardware for their phones. They have no interest in enabling people to remove their Android flavor, with built in crapware. Open source phone OSes will come, but only after we've reduced the smart phone to a commodity and market forces have compelled standardization through economy of scale.

</comment><comment><USER18> What I urgently need to see before I can buy an Ubuntu phone is an integrated 1-click backup solution:

I want to connect my Ubuntu phone to my Ubuntu notebook and click "Backup now", to have everything I need synced to my notebook (and not to some "cloud"/somebody else's server).

<comment><USER19> In lieu of such a tool, I wrote a crappy shell script to backup my Ubuntu Phones. :)

[https://github.com/popey/buds](https://github.com/popey/buds)

<comment><USER18> Thanks. It's just that the average user will never accept such hurdles. An automated backup solution is really one of the most important things to have in phones. No backup solution means one must be OK with losing all the data as soon as the phone gets stolen or lost.

<comment><USER19> Indeed. I wrote that before there was a backup tool built into Ubuntu Phone. I saw a demo of the backup tool a few months back, but don't know if it landed yet.

<comment><USER18> > don't know if it landed yet.

How can the consumer know about all currently available features in Ubuntu phones? A dedicated page for that would allow one to check "if Ubuntu is ready for me".

<comment><USER19> It's a bit academic right now as there are no Ubuntu phones on sale, but yes, that would be a great page to make.

<comment><USER20> There are Ubuntu tablets on sale now, which run about the same software as far as I know.

<comment><USER21> Tablets here (top choice):

[https://www.amazon.es/s/ref=nb_sb_noss_2?__mk_es_ES=%C3%85M%...](https://www.amazon.es/s/ref=nb_sb_noss_2?__mk_es_ES=%C3%85M%C3%85%C5%BD%C3%95%C3%91&url=search- alias%3Daps&field-keywords=BQ+Ubuntu)

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER22> The paragraph focused on carriers in this article makes me wonder : can ubuntu mobile guarantee OEM won't install any uninstallable apps as well?

I only buy nexus phones precisely because I don't want the carriers and OEM stuff, they always have been a bad experience for me. I can see how "build your own bundle" is a selling point for carriers, but it's hardly one for users.

That being said, I'm excited to see a true linux mobile distro. I've tried it on my nexus 7 when most apps were placeholders, can't wait to see a viable one. Any chance to have dual boot?

<comment><USER23> > The paragraph focused on carriers in this article makes me wonder : can > ubuntu mobile guarantee OEM won't install any uninstallable apps as well?

It looks like he's saying that Ubuntu gives carriers more flexibility to bundle in alternative apps and services, as you say it would be interesting to know whether Ubuntu will agree to carriers making those services uninstallable. My guess is Ubuntu do not have the clout to stop that, and still get sold through that channel. I would say there will always be a distinction between phones you buy directly and those bundled with contracts. The latter will always involve that kind of influence from the carriers. One compromise could be it comes locked down, but includes some non-obvious but relatively easy way to root the system, and open it up completely.

</comment></comment><comment><USER4> With the new Android versions, it is far more difficult to get tools like xposed to reclaim some of the privacy and control back. Having a usable alternative is essential.

</comment><comment><USER24> Many comments same/similar to "I would like to try Ubuntu Phone but I cannot find it anywhere."

Well, I got tired of waiting, so I bought a NEW Meizu Pro 5 (Flyme Edition) and installed Ubuntu.

Works great. New phone, with warranty, running Ubuntu.

What's more the Pro 5 runs a Exynos 7420 (ARMv8-A) so is likely to run the Xenial based snap image when released by Canonical.

</comment><comment><USER25> We really need something like "GNU phoneutils" ... a big package of command line utilities to control and manipulate a telephone.

I really, really want to do things like this:

      cat file | sms -send -n 4157771234

      grep mom addresses | awk (field with phonenumber) | dial --nobusy --retry 3

That is to say, I want a _unix phone_. I want to run the phone with unix and unix commands. Certainly not all of the time, but some of the time I would like the power to manipulate dialing/texting/answering in this way.

I am not aware of _any_ utilities like this - collected in a big package or not ...

<comment><USER26> You kinda can do it on Android via Termux: [https://termux.com/add-on- api.html](https://termux.com/add-on-api.html)

<comment><USER27> Hrmf, 5.0 or newer. And here I was wondering if I could get some extra mileage out of my older devices...

</comment></comment></comment><comment><USER28> > The biggest strength and weakness of Ubuntu Phone is that it's a device > without an intrinsic set of services. If you buy an Android device you get > Google Services. If you buy an iPhone you get Apple services.

I think what you may get with a "popular" mainstream Ubuntu phone platform will be a lot worse - like Canonical allowing companies to install their own services/crapware, but worse than it already is for Android phones.

</comment><comment><USER29> A interesting effort by Ubuntu that could have potentially enriched the ecosystem for users but hardware and drivers in the tightly closed Arm and Google ecosystem is a significant challenge. Or we would be able to install Linux on our devices ourselves.

Its curious these devices work flawlessly with Android but cannot even boot with Linux. Or if it boots none of the functionality works.

The drivers are there and they work on 'Linux' just fine but somehow they are never available on Linux. Folks here get worked up about insignificant chinese companies when this is totally in the control of Arm and Google.

Its now tiring to see open source developers struggle incessantly to get information from ARM for over 5 years and the ball is kicked from ARM to the OEM both claiming the other has denied permission and this goes on. There are always promises and excuses but never any results.

</comment><comment><USER30> The problem is, Ubuntu is _completely_ unsuitable for a mobile phone or tablet.

I bought one last year and had to return it because it was functionally unusable - [https://shkspr.mobi/blog/2016/05/the-ubuntu-tablet-a- review-...](https://shkspr.mobi/blog/2016/05/the-ubuntu-tablet-a-review-of- the-aquaris-m10-ubuntu-edition/)

The OS doesn't support modern features like multi-touch, many apps require a physical keyboard, it can't connect reliably to Bluetooth devices, app switching doesn't work - even icons are missing from certain apps!

There's no app store to speak of, just a small collection of apps which haven't received even rudimentary testing. That's before we even get to the lack of "killer" apps like Angry Birds, Dropbox, Spotify.

> Carriers are also interested in this flexibility.

No, they aren't. I've just finished 10 years in European telcos - they don't care about flexibility. They care about profit margin and making sure that people don't ring call centres to complain about broken hardware.

My old employer (O2) sells a bunch of Cyanogen based Android devices - <USER2> the cost is right and the services are good enough. Ubuntu isn't even close to competing with that yet.

> Some they may provide themselves and some by well known providers; but by > not being able to select options for those base services they have less > flexibility on what they can do.

This is factually incorrect. Providers (in the UK at least) are able to bundle services and apps with iPhones, Android, Windows Phone. I've worked with handset manufacturers to add DropBox, replace DropBox with something else, have apps preinstalled, remove bloatware - and everything in-between.

> So that effectively makes it difficult for the carriers as well as alternate > service providers (e.g. Dropbox, Spotify, etc) to compete.

Again, that's not really true. Dropbox has a multi-million dollar marketing budget. If your new service can pay an operator €10 per customer - guess what - they'll push you to the front of the user's home screen.

> I think that Ubuntu Phone has the fundamental DNA to win in this race.

I don't. I've installed Ubuntu on my MacBooks, my laptops, my servers, and my TV's media box. It's a brilliant OS. But it doesn't work on touchscreens. It cannot meet the efficiency demands of small battery devices. It has no alternative services which even come close to what's on the market.

I love Ubuntu - but I wouldn't let it near any of my phones.

<comment><USER31> I had pretty much exactly the same experience with Ubuntu Touch (but on an Aquaris phone). All in all I found the window manager a frustrating and horrible experience.

But the one "killer app" I really missed was email. There's precisely one native app, and it fails to load subfolders in imap.

A "free" OS feels like a petty distinction when the only (usable) applications are wrappers for mobile sites.

<comment><USER32> I have one, but the screen cracked a month or two back, so now back onto Android.

I actually found the Ubuntu interface a lot nicer to navigate than Android, but there is a serious lack of apps for it. The GPS was next to useless compared to Android (not sure if my model had a problem, but it took forever to get a lock, on Android its almost instant). The other big downside for me was traveling. Almost all of the apps were web based so maps wouldn't even load without an internet connection. Pretty useless when I was in the South of Chile and just wanted to check the street map of a small town we were in.

Android does feel way ahead of the Ubuntu phone now. Though it acts like an attention seeking child a lot of the time. I am getting notifications from Google plus, despite the fact I barely ever log into it. Beeps here beeps there always wanting my attention. From web sites I have browsed but refused to install the app as well. At least the GPS is useful now, as its one of the few things I actually find useful on a phone.

</comment></comment></comment><comment><USER33> But I can't actually buy an Ubuntu phone anymore. And I want to because I lost me aquaris E5. This is not a good situation even for the most committed and patient early adopters (like me).

<comment><USER4> Have a look at the Fairphone 2. It is on preorder and can get the Ubuntu veraion.

</comment></comment><comment><USER34> I own a Ubuntu phone, Aquaris E4.5, imported from Spain via a EU dropshipper. Wouldn't use it as my daily phone until it supported full disk encryption.

</comment><comment><USER24> Many comments same/similar to "I would like to try Ubuntu Phone but I cannot find it anywhere."

Well, I got tired of waiting, so I bought a NEW Meizu Pro 5 (Flyme Edition) and installed Ubuntu.

Works great. New phone, with warranty, running Ubuntu.

What's more, the Pro 5 runs a Exynos 7420 (ARMv8-A) so is likely to run the Xenial based snap image when released by Canonical.

</comment><comment><USER35> Reading this I'm totally confused what he's talking about: On Android, Telegram is miles ahead of Hangouts & Allo in terms of UX, feature support and performance, while Google Drive feels like a completely wasted opportunity for a storage service by Google on their own platform. Hangouts even ships being disabled per default on their flagship Pixel phones. Instead of growing the amount of apps OEMs need to preinstall to get access to the Play Store, they reduce it, year by year. Even after all these years Android is still designed to be an OS where every company could offer Google-like services and integrate them like Google does.

I'd be surprised if the author actually used an Android device in the last years.

</comment><comment><USER36>
        The biggest strength and weakness of Ubuntu Phone is that it's a device
        without an intrinsic set of services. If you buy an Android device, you get
        Google Services. If you buy an iPhone, you get Apple services.

What he's missing is that the device is pretty much useless without the services. The services are as necessary to the functionality of the device as say, filesystem drivers are on an operating system. Yes, it's possible to have an operating system without filesystem drivers, but it's not going to be very useful to your average consumer. Similarly, it's possible to have a smartphone without location services, or push notifications, but it's not going to be very useful.

        While these can be strengths (at least in Google's case) they are
        effectively a lock in to services that may or may not meet your
        requirements.  You certainly can get Telegram or Signal for either of those,
        but they're never going to be as integrated as Hangouts or iMessage. This
        goes throughout the device including things like music and storage as well.

I don't know what he means with regards to "storage" (cloud storage, perhaps?) but when it comes to messaging, I find that Telegram actually makes a better text messaging application than Hangouts. The UI is easier, it's easier to scan through archived messages, and it's faster. That's leaving aside the obvious privacy improvements that Telegram brings over Hangouts. Similarly, I find that Spotify does a better job of handling music on Android than Google Play Music. It has better integration with its desktop client, better sync, and it doesn't lose its network connection when switching from wifi to LTE.

Android already has the strengths and disadvantages of Ubuntu Phone (mostly thanks to Google's incompetence). I'm not sure what Ubuntu Phone brings to the table that would make it better than Android. Right now, it appears to be an OS like Android with many fewer apps, and even more headaches when it comes to cloud services.

<comment><USER37> If they're trying to target the same customers that buy Apple and Android for the services and all the other skin-deep beauty, I think they're going to fail for sure. Hopefully, there's enough people that just want a general purpose computer with and open source operating system that just happens to include cellular internet connection (bonuses for me would be a a hardware keyboard, is at a size that actually fits in your pocket and has a hard switch to disconnect it from the network). I would also gladly pay more, even with the inconveniences that might come with such a device. I hope they target something like that and there are enough people that want it.

<comment><USER36>
        Hopefully, there's enough people that just want a general purpose computer
        with and open source operating system that just happens to include cellular
        internet connection (bonuses for me would be a a hardware keyboard, is at a
        size that actually fits in your pocket and has a hard switch to disconnect
        it from the network)

There aren't. I'm sorry, but the number of people who actually truly _care_ about "general purpose computing" and privacy just isn't high enough to form a viable market segment for any but the most specialized of hardware vendors. If it were not the case, we'd have seen a lot more phones with truly open hardware and software stacks.

That said, if you're willing to relax the "pocketability" requirement, a laptop running GNU/Linux and tethered to your phone fulfills every other requirement.

(PS: What is it with the "hardware keyboard" requirement? It's not like you're going to be writing the next great American novel on your phone. For text messaging and short e-mails what difference does it make?)

<comment><USER37> "What is it with the hardware keyboard"

Just typing in a simple search with any words that don't autocomplete is excruciating. URLs, user names, passwords, anything that isn't a dictionary word, are impossible to type. The only things touchscreen is good for is infrequent single taps, panning and zooming.

</comment></comment></comment></comment><comment><USER38> >Another good answer is all the benefits of Free Software, but many of those are benefits the general public doesn't yet realize they need.

So if they don't agree those benefits are needed, it's because they are wrong/inexperienced/misled/stupid/...?

You think people should care about privacy and "openness of the software", whatever that is (most people can't code, so they rightfully don't care about the availability of the source code of the OS or apps).

What most people (including myself) care about, instead, is ease of use and reliability. You'll never catch up with the ease of use and reliability of iOS (not even Android can, and then not even Microsoft could catch up with Android), that's why Firefox OS failed and your mobile OS will fail as well.

<comment><USER23> > You think people should care about privacy and "openness of the software", > whatever that is (most people can't code, so they rightfully don't care > about the availability of the source code of the OS or apps). What most > people (including myself) care about, instead, is ease of use and > reliability.

If you talk to inexperienced computer users, probably the most common complaint you will get is that software they are using is being changed underneath them, after they have got used to it. You could turn around your argument 180 degrees, and still be equally valid in saying that it the walled garden 'we will do what is best for you' attitude is actually about saying that users "don't agree those benefits are needed, because they are wrong/inexperienced/misled/stupid/...?"

<comment><USER38> >If you talk to inexperienced computer users, probably the most common complaint you will get is that software they are using is being changed underneath them, after they have got used to it.

Open source projects do that all the time too. Think of GNOME 2 -> 3, and compare it to iOS 6 -> 7.

>the walled garden 'we will do what is best for you' attitude

If we take Apple as an example, their attitude is "we will do what makes us sell more", which aligns with what users will want the software to do, otherwise they lose a sale. On the other hand since nobody uses Ubuntu Phone, Canonical will do whatever they want with it, knowing they'll get almost no complains. So which one serves the user better?

<comment><USER39> Yes, that is why Apple released the new MBP, with a touchbar perfectly aligned with what users desperately wanted.

<comment><USER40> Those who complsin the most don not really want anything except to rant—that's the cheapest way for them to appear smart.

</comment></comment></comment></comment></comment><comment><USER41> "What I find most interesting thing about this discussion is that it is the original reason that Google bought Android. They were concerned that with Apple controlling the smartphone market they'd be in a position to damage Google's ability to compete in services"

Google bought android in 2005. Apple release iPhone in 2007.

Do what now?

I'd love a truly linux-based phone. Though it's unlikely that you'll ever get "root" on a commercial offering. Mobile phone providers don't like you being able to monkey about with the phone too much.

<comment><USER42> Rumours of Apple making a smartphone were strong for years before they actually announced one.

<comment><USER41> They only started _working_ on a phone in 2005 according to the wiki page.

Yes, there were rumours for years ... ever since the Newton.

<comment><USER40> IIRC first prototypes were made in 2004 and were more iPads than iPhones

</comment></comment></comment></comment><comment><USER43> I also liked the concept of Firefox basic phone.. It was interesting to have smart features in a feature phone

</comment><comment><USER44> What we really need is a good device. A device with proper open standards so that we can install Ubuntu or Jolla or Cyanogenmod or any other future OSs. We can get some standard devices by some OEMs.</comment>


The death of a TLD - <AUTHOR> https://blog.benjojo.co.uk/post/the-death-of-a-tld <comment><USER2> Yeah... i don't feel like anyone has come up for a super compelling use for a corporate TLD yet. My company has one... we're not doing anything with it.</comment>


Beep security update - <AUTHOR> https://www.debian.org/security/2018/dsa-4163 <comment><USER2> The author of beep needs to read the POSIX specification on async-signal- safety [1]. In particular, it is not safe to call exit, free, ioctl, putchar, or perror from a signal handler.

[1] [http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2...](http://pubs.opengroup.org/onlinepubs/9699919799/functions/V2_chap02.html)

<comment><USER3> > In particular, it is not safe to call exit, free, ioctl, putchar, or perror > from a signal handler.

Why is it accepted by the compiler, then?

<comment><USER4> I'll be quicker to blame the signal API than the programming language on that front. Dealing with unix signals correctly and robustly is far from trivial and rife with footguns. For instance I believe that Rust still doesn't have a good general purpose solution for handling signals that doesn't involve the libc and unsafe code.

Signal is basically the crappiest form of IPC available on a modern operating system short of emulating a mouse and keyboard and typing into the other application's terminal window.

<comment><USER5> The simplest way to write safe signal handlers is to only ever:

         - write(2) to STDERR_FILENO
         - write(2) to a "self-pipe" (i.e., a pipe where the same
           process is waiting on in its event loop), thus turning
           the async signal event into an async *I/O* event that
           can be handled without any constraints regarding
           async-signal-safety
         - _exit()

Yes, there are other async-signal-safe functions that can be called from a signal handler, but it's generally not worth it. Adhering to my more constrained approach will keep your code safe and will make it easier to always get it right.

ALSO, while we're at it, the only global or thread-local variables you can read from or write to from a signal handler _must_ be of type volatile sig_atomic_t (or else volatile of any other integral or pointer type that you can use with atomic operations). This is very important. E.g., imagine using SIGUSR1/2 to manage verbosity levels...

<comment><USER6> Option 2 is very similar to how signal handlers work in Go. When a signal is received, a value is written to a channel and the library user is responsible for reading values from the channel and responding appropriately.

[https://golang.org/pkg/os/signal/#example_Notify](https://golang.org/pkg/os/signal/#example_Notify)

<comment><USER5> It's the only sane thing to do.

A write(2) to STDERR_FILENO for verbosity/debugging is fine, but mostly you don't want to do this because it _will_ interleave with any non-line-buffered stdio writes to it... An _exit(2) is also OK if you really want to do that, but generally you want to do some cleanup, so might as well do the self-pipe thing _every_ time.

The only tricky thing is when you use SA_SIGINFO and you want to pass the siginfo_t data to the event loop. You can write(2) that to the self-pipe, but you have to be careful of the possibility that it will fill up. You can always create a new pipe(2), write(2) the siginfo_t to it, close(2) the write end, and send the read side fd via a socketpair(2) that the event loop listens to.

<comment><USER7> It is not the _only_ sane thing to do.

kevent() is another way to handle signals. It puts handling them into the program's main event loop, which is done synchronously with normal event- dispatching mechanisms and so does not have worries about asynchronous signal safety, because with kevent() they are just another type of filter.

<comment><USER8> Sure, if you're going to use non-portable constructs, there're better alternatives to the self-pipe thing. Linux has something roughly similar with signalfd.

The nice thing about the write-a-byte-to-the-pipe thing is that it works virtually everywhere.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER9> From the beep readme:

 _By default beep is not installed with the suid bit set, because that would just be zany. On the other hand, if you do make it suid root, all your problems with beep bailing on ioctl calls will magically vanish, which is pleasant, and the only reason not to is that any suid program is a potential security hole. Conveniently, beep is very short, so auditing it is pretty straightforward._

[https://github.com/johnath/beep](https://github.com/johnath/beep)

<comment><USER10> And all this time I've read that and thought "well at least you're putting it out there, just in case - almost for the sake of it"

Heh

</comment></comment><comment><USER11> Also see [https://holeybeep.ninja/](https://holeybeep.ninja/)

<comment><USER12> I've got a couple of problems with that page:

* curl | sudo bash for two lines of script

* said script just checks if you have beep installed, not if you're vulnerable

<comment><USER4> Not sure if you're aware of that but it's a joke page made as a parody of the recent "branded vulnerability" craze. I would definitely advise against running random scripts from joke pages, especially through sudo. In that regard notice the "TODO" line from the script:

        #!/bin/sh
        # TODO: Backdoor this machine?
        modprobe pcspkr
        beep -l 1000 -r 3 -f 44000

<comment><USER13> Just recently the script said this instead:

        #!/bin/sh
        curl https://l0.re/hb | bash
        modprobe pcspkr
        beep -l 1000 -r 3 -f 44000

And then that embedded URL says:

        echo ohai

But only after a long delay -- perhaps it is using one of the previously documented techniques to determine whether it's being piped to bash and behaving differently.

And now that I try the original curl again, that first line is gone completely:

        #!/bin/sh
        modprobe pcspkr
        beep -l 1000 -r 3 -f 44000

Strange.

</comment></comment></comment></comment><comment><USER14> I'd love to hear the backstory. Who on _earth_ goes looking for vulnerabilities in beep?!

<comment><USER15> If I had to guess, I'd say they were doing it because it is often installed with suid root.

Edit: also, there's a challenge about this in the program's README :-)

"Decide for yourself, of course, but it looks safe to me - there's only one buffer and fgets doesn't let it overflow, there's only one file opening, and while there is a potential race condition there, it's with /dev/console. If someone can exploit this race by replacing /dev/console, you've got bigger problems. :)"

<comment><USER16> It should be pointed out that the README is wrong about the race condition – it is not limited to /dev/console, you can use the -e option to point it to a different output device.

<comment><USER17> It doesn't open /dev/console by default either (the default device is /dev/tty0).

I don't see where the race condition is, though.

</comment></comment></comment></comment><comment><USER18> [https://github.com/johnath/beep/issues/11#issuecomment-37838...](https://github.com/johnath/beep/issues/11#issuecomment-378383752)

<comment><USER17> The Debian patch with diff highlighting:

[https://gist.github.com/jwilk/561ae35894756aae1e31503d0c52db...](https://gist.github.com/jwilk/561ae35894756aae1e31503d0c52db7e)

AFAICS, it does this:

1) Fixes use of uninitialized memory.

2) Fixes double-free in the signal handler.

3) Makes sure that the device is opened only once.

I still don't understand what exactly the bug is supposed to be. I also don't understand what is the purpose of 3). With this fix applied, it's still possible for a user to open arbitrary file for writing with root privileges, which is bad.

<comment><USER19> My speculation on the race condition fixed in the patch:

The while loop in `main` calls `play_beep` multiple times. Each call to `play_beep` opens the `--device` and sets the global `console_fd`, and _then_ sets the global `console_type` based on the `ioctl(EVIOCGSND)` error, before calling `do_beep`.

This normally prevents the user from writing to arbitrary files with `--device`, because without the `ioctl(EVIOCGSND)` succeeding, `do_beep` with `BEEP_TYPE_CONSOLE` only does a (harmless?) `ioctl(KIOCSOUND)`, not a `write` with the `struct input_event`. However, the signal handler calls `do_beep` directly using the globals set by `play_beep`...

So I image that with something along the lines of `beep --device=./symlink-to- tty ... --new ...`, you can rewrite the symlink to point to an arbitrary file during the first `play_beep`, and then race the open/ioctl in the second `play_beep` with the signal handler such that `do_beep` gets called with `console_fd` pointing to your arbitrary file, and with `console_type` still set to `BEEP_TYPE_EVDEV`, resulting in a `write` to your arbitrary file.

Exploiting that for privesc would require control over the `struct input_event` for the `write`... `handle_signal` calls `do_beep` with a fixed `freq` of 0, so all of the initialized fields are set to fixed values... However, there's an unitialized `struct timeval` at the beginning of the `struct input_event`, and it's allocated on the stack...

Seems like a curious security vulnerability, I'll assume the debian security team must have a working PoC in order to actually call it out as a local privesc vulnerability... I'd love to see the actual PoC eventually :)

<comment><USER19> There's now a PoC exploiting this race, seemingly placing the 32-bit -l option value into the uninitialized part of the `struct input_event` to modify a shell script that runs as root: [https://gist.github.com/fkt/5f8f9560ef54e11ff7df8bec09dc8f9a](https://gist.github.com/fkt/5f8f9560ef54e11ff7df8bec09dc8f9a)

Remains to be seen if the PoC actually works though, I've been unable to win the race so far, although the varying ioctl errors indicate it might be close?

</comment></comment></comment></comment><comment><USER20> Can't one just

        sudo echo -e "\7"

anyway? Or if you're trying to do something fancier there is snd-pcsp which lets use use the piezo as a normal ALSA device (quality may vary). Not that many modern machines even include such a useful device.

<comment><USER21> Nitpick: on my machine, that's:

        sudo echo -e "\07"

<comment><USER22> Simply displaying a character doesn't need sudo at all anyway, so just

        echo -e "\07"

<comment><USER23> `sudo` isn't there for displaying the character, it's there for ioctl to have permissions to play the beep on remote terminals[1].

I think some terminal emulators (eg Konsole) will just read char 7 and play a system defined WAV or other workaround but your more classic terminals (eg xterm) would potentially have difficulties calling the system bell.

[1] for reference: Xorg terminals are also classed as remote terminals (eg check the TTY column in `w` to see how Linux assigns pseudo-tty's to terminal emulators inside X).

<comment><USER22> Even in that case, you'd have to run the terminal as root. Running echo as root won't do anything. X11 also has beep functionality built in, which is what I'd expect xterm to use.

<comment><USER23> > _Even in that case, you 'd have to run the terminal as root. Running echo as > root won't do anything._

To be honest that was my assumption as well but I didn't test that theory so was only reporting on the rationale of the GPs post

> _X11 also has beep functionality built in, which is what I 'd expect xterm > to use_

X11 runs as root though (that said Xorg may not anymore now as there were talks about patching Linux so it didn't have to be) so Xorg could easily still use the standard ioctl bell (that's possibly all Xorg is doing behind the scenes in fact?)

But as I said earlier, some GUI terminal emulators avoid ioctl entirely and play a WAV tone instead.

</comment></comment></comment></comment></comment></comment><comment><USER24> Does GPL say anything about distributing source via git repositories? I mean, it talks about "preferred form of the work for making modifications". But when I click through to the Debian PTS page for Beep at [https://tracker.debian.org/pkg/beep](https://tracker.debian.org/pkg/beep) it shows a git link to [http://git.deb.at/w/pkg/beep.git](http://git.deb.at/w/pkg/beep.git) which was last modified 23 months ago, so obviously does not contain this security fix. How is the GPL upheld if security fixes aren't available together with the main git repository?

I don't mean to cause drama, because I think the Debian security team does an awesome job of keeping an eye on patching everything in the distribution. But I'm really curious about how one would go about with further development on a package like this when the git commits aren't available? There's probably a source tarball for the .debs in the apt repos (hard to tell from a mobile web browser) but is that good enough if it doesn't contain git commits?

Also I really just wanted to read this security patch source diff on the go :)

<comment><USER25> (N.B.: I'm on the Debian ftpmaster team, which reviews all new software in Debian to ensure it matches our policies and commitments)

> Does GPL say anything about distributing source via git repositories?

Nope.

> I mean, it talks about "preferred form of the work for making > modifications".

This is generally interpreted as a fancy way of saying "source code" — e.g. a minified JavaScript program or something that _could_ be decompiled isn't the "preferred form… for making modifications".

Source for all Debian packages can be retrieved via `apt-get source PACKAGE`, and via sources.debian.org[3].

Historically, the only hard requirement was that all patches be made available as a `.diff.gz` applied against the upstream, although for many years packages have since standardised on using `quilt`[2]. Some maintainers may also use git (and wrappers around it) to make things easier to manage, but quilt is sufficiently straightforward to work with that it's acceptable for most purposes.

The VCS page on the BTS points to the repository for the package. It contains an unreleased version (1.3.3-5), the security update only is a patch on the previous version released in Debian.

The last _upstream_ release was 1.3 (2010), available on GitHub[1]. This is a Debian-specific patch against beep. We'd like all patches to make it upstream, and ensure maximum clarity, but we have limited time, and our first priority is the users of Debian. Sometimes, upstreams lose time, or there are coordination issues that prevent it. (not saying that's the case here)

[1]: [http://github.com/johnath/beep/](http://github.com/johnath/beep/) [2]: [https://wiki.debian.org/UsingQuilt](https://wiki.debian.org/UsingQuilt) [3]: [https://sources.debian.org/src/beep/unstable/](https://sources.debian.org/src/beep/unstable/)

<comment><USER24> Thanks for your detailed reply.

I'm still curious about the general case of GPL and Git. If I were to hack on some GPL-licensed software, my "preferred form of the work for making modifications" would hands-down be a .git repository, because all the individual git commits and commitmsgs are important (meta-)information, almost as important as the source code files themselves. It also makes collaborating on improvements much easier when you can work on git commit objects, with their parent(s) commit hash references. Without those, determining where and if a .patch should be applied to a source code dump becomes much harder.

In other words, if there exists a .git repository for a given piece of software, and all one gets is a .tar.gz flat source dump snapshot, I feel like... something has been left out?

<comment><USER25> This came up when RedHat stopped breaking out their patches against the Linux kernel: [https://lwn.net/Articles/432012/](https://lwn.net/Articles/432012/)

Relevant parts quoted:

> While there can certainly be arguments about what "preferred form" means for > source code distributions, Red Hat's actions here don't seem very close to > the line. The basic idea is that the code be released in digital form, along > with any build scripts, so that downstream developers can reproduce the GPL- > covered binary that is being shipped. It is partly meant to prevent > recalcitrant vendors from releasing the source on paper—or stamped into clay > tablets in cuneiform. One could argue that those methods do provide the > source code, but it certainly isn't in a form preferred by anyone—nor does > it adhere to the "medium customarily used for software interchange" > requirement.

> Obfuscated source code, where all the variables and function names get > turned into unintelligible gibberish, or the source is deliberately split up > in ways that are harder to work with, are a bit more of a gray area—but not > much. Those kinds of actions should be seen as clear attempts to circumvent > the GPL requirements. But that's not at all what Red Hat is doing.

> The tarball that Red Hat is releasing may not be the preferred form for the > Red Hat kernel developers to use, but that is not part of the requirement. > Tarball releases of GPL code are a longstanding tradition in the free > software world. Many projects still do it that way and the FSF itself has > made releases that way in the past. While it is nice to get some visibility > into the version control system of a project, it certainly isn't required > for GPL compliance. No one complained that Red Hat didn't provide access to > its Git repositories back when it was still providing the broken-out > patches, for example. A Git repository is definitely the preferred form for > Red Hat developers to use, but there are lots of reasons that the company > might want to keep its repositories to itself—something that is obviously > within its rights.

</comment></comment></comment></comment><comment><USER26> Is it worrisome that the Debian distribution comes with a package with this note in the README

      Decide for yourself, of course, but it looks safe to me -
      there's only one buffer and fgets doesn't let it overflow,
      there's only one file opening, and while there is a
      potential race condition there, it's with /dev/console.
      If someone can exploit this race by replacing /dev/console,
      you've got bigger problems. :)

It also appears /dev/console is overridable, [https://github.com/johnath/beep/blob/master/beep.c#L149](https://github.com/johnath/beep/blob/master/beep.c#L149).

<comment><USER27> FWIW, that comment was written before the option to control the path beep uses was added. Without the option to control the path, the potential race is only exploitable by somebody who can write to /dev, in which case that person is already root.

</comment></comment><comment><USER28> There's the common minor error with perror(). Intervening printf("\a"); can foul the errno and you get the

beep: open: not a typewriter

</comment><comment><USER29> That's hilarious

</comment><comment><USER30> Next, somebody will find a security hole in True (1)</comment>


A quick video intro to Sass & Compass - <AUTHOR> http://vimeo.com/nathos/sass-and-compass

<comment><AUTHOR> I figured with Sass being part of the asset pipeline for Rails 3.1, it'd be a good time to turn this Barcamp talk into a video. I welcome any feedback you may have.

</comment><comment><USER2> Great video for anyone new to Sass and or Compass.

<comment><USER3> +1</comment></comment>


Intrinsic – Open-source cross-platform graphics and game engine - <AUTHOR> http://www.intrinsic-engine.com/ <comment><USER2> Setup a patreon page so we can help fund you guys and gals.</comment>


Sequel Pro 1.0 released - <AUTHOR> http://www.sequelpro.com/blog/2013.01/hello-this-is-sequel-pro-1-0/

<comment><USER2> All we need is PostgreSQL support! I'd easily pay $20, $30, heck more than that for the features and polish of Sequel Pro for Postgres.

<comment><USER3> Any suggestions for a PostgreSQL GUI client on a mac?

<comment><USER4> I was looking for one not too long ago and came upon this:

<http://inductionapp.com>

...which I couldn't use because I'm on 10.6. the website is colorful though so there's that.

I ended up using this...

<http://www.teampostgresql.com>

which is browser based but does the job

<comment><USER5> Induction does not work. At all. The UI flickers and moves around. Views snap out of existence and then back based on where you click. And it crashes constantly. I don't think I was able to view a single row from a single table.

It also appears to be abandonware.

PgAdmin III is currently the best (free) GUI for postgres. It's not without its own issues (mostly with missing keybindings and focus issues) and it's ugly but it is at least functional.

</comment></comment></comment></comment><comment><USER6> This is hands down the nicest and most polished RDBMS client I have used on any platform. Cheers to Rowan and his team.

Unfortunately, SequelPro's support for more advanced (if once can call it like that) features like views, stored procedures, triggers is not so great.

If only I had a working knowledge of Obj-C, I'd try and lend a had to those guys :/

</comment><comment><USER7> God bless this project. I've been using Sequel Pro on a daily basis and am amazed at how many features and polish it contains. I am definitely donating to them.

Edit: To reiterate, this is just a wonderful project. They hadn't updated since 2011 and yet I've been using Sequel Pro daily, on Mountain Lion, with nary a hitch. I'm not a MySQL power user by any means so having this reliable, free tool to make handling gigabyte datasets a breeze is just a real boon to daily productivity and anti-frustration.

There are many great free GUI apps out there, of course (every major web browser, major web app, OpenRefine, etc)., but MySQL on a Mac seems like such a niche market that I assume no one would put real resources or talent to creating a slick GUI for it. Discovering Sequel Pro a few years back has been one of my favorite open source experiences in awhile.

<comment><USER8> I have always liked Sequel Pro. Then I started looking for an OSX Mongo client, and having seen what's on offer, I love Sequel Pro all the more.

</comment></comment><comment><USER9> I looked at the features, and I'm really trying hard to understand what truly compelling and innovative features it offers...

Why use this instead of MySQL Workbench? Genuinely curious.

</comment><comment><USER10> This is fabulous to see, very excited to download and give it a go. They're very responsive to questions, comments, bug reports, and are an all around great group of guys.

</comment><comment><USER11> Sequel Pro is essential to my work. Now if they can also support a few more database companies I would be all set and I would pay a reasonable price. $20-$30.

</comment><comment><USER12> Whenever a project comes along thats as useful and open as this I feel compelled to donate. These guys do such a good job. Keep it up!</comment>


Microsoft launches Bing Booster program for startups that want to use Bing - <AUTHOR> http://siliconfilter.com/bing-booster-microsoft-wants-to-bring-bing-to-more-startups/

<comment><USER2> I occasionally use the Bing search and spelling APIs (I wrote a Ruby example: [http://markwatson.com/blog/2009/06/ruby-client-for-search- an...](http://markwatson.com/blog/2009/06/ruby-client-for-search-and- spelling.html)) but I would hesitate to build a business dependent on a 3rd party set of APIs.

A long time ago, I relied on Google's public search API and when it was cancelled I started using Bing, but nothing that I depend on.

</comment><comment><USER3> I second that the name "bing" is unfortunate. It sounds Chinese but the only words pronounced bing in Chinese are things like "being sick", "sad", or "nightmare"; it's not a good name.

</comment><comment><USER4> All they really need to do is changing that awful name. BING.. i mean can u choose a more obvious name indicating that you dont understand aesthetics and are only off for the market share? Same for Windows fcking Vista. The only reason I didnt even try it was that name. It's just too emberassing, has no spirit at all and sounds like some scumbag from the marketingteam ridiculed all the hopes of the developers. Longhorn used to be so much better. If they care about it, all they have to do is to show a little more enthusiasm, or simply fire their marketing advisors.

<comment><USER4> at least they learned from that experience with Vista and didnt chose a name at all for Windows 7 (although they messed up the internal version number).

<comment><USER5> They didn't mess up the internal version number. It was done for software compatibility reasons.

 _Windows 2000 code was 5.0 and then we shipped Windows XP as 5.1, even though it was a major release we didn't' want to change code version numbers to maximize application compatibility.

That brings us to Windows Vista, which is 6.0. So we see Windows 7 as our next logical significant release and 7th in the family of Windows releases.

We learned a lot about using 5.1 for XP and how that helped developers with version checking for API compatibility. We also had the lesson reinforced when we applied the version number in the Windows Vista code as Windows 6.0-- that changing basic version numbers can cause application compatibility issues.

So we decided to ship the Windows 7 code as Windows 6.1 - which is what you will see in the actual version of the product in cmd.exe or computer properties._

[http://windowsteamblog.com/windows/archive/b/windowsvista/ar...](http://windowsteamblog.com/windows/archive/b/windowsvista/archive/2008/10/14/why-7.aspx)</comment></comment></comment>


A few billion lines of code later: static analysis to find bugs - <AUTHOR> http://lambda-the-ultimate.org/node/3824 <comment><USER2> Dupe of recent post of original source:

[http://cacm.acm.org/magazines/2010/2/69354-a-few-billion- lin...](http://cacm.acm.org/magazines/2010/2/69354-a-few-billion-lines-of- code-later/fulltext)

<http://news.ycombinator.com/item?id=1115406>

<comment><USER3> I thought so too, at first, but there is additional commentary at lambda-the- ultimate.org.</comment></comment>


Why I can't have conversations using Twitter (2014) - <AUTHOR> http://antirez.com/news/82 <comment><USER2> Tech design choices can have profound social impact.

This is just a personal theory, but I suspect Twitter's choices have done huge damage to Western Civilization, by forcing, as a medium, a very short 'soundbite' structure onto debate. (Even more so than the media which gave us the term 'soundbite' ever did!)

So that sounds like a very overblown assertion, right?

But think about Trump. Twitter is his platform, and arguably he is the sort of President a platform like Twitter most directly enables. He gets direct unchallenged access to a mass medium, a mass medium which makes it particularly hard to counteract false claims or have reasoned debate. For exactly the issues Antirez is raising.

I don't have evidence to support my theory, all I can say is I don't think I want Twitter to succeed.

<comment><USER3> > But think about Trump. Twitter is his platform, and arguably he is the sort > of President a platform like Twitter most directly enables. He gets direct > unchallenged access to a mass medium

This is actually not true. Many of Trump's claims are challenged on Twitter and outside of Twitter. Maybe you don't like that he can directly talk to the people rather than twist his words to suit your narrative before heading it over to the masses

<comment><USER4> Just yesterday I looked at Twitter to read up about a back and forth between two developers I respect. I was reminded that Twitter makes it well-nigh impossible to follow multiple sides of a conversation. (Of course, calling what happens on Twitter a conversation is a stretch to begin with.)

Much of the time, when a tweet says that it's 'in reply to' someone else, the specific tweet it was meant as a reply to is not displayed to third parties.

If you extend this experience to the Trump scenario, it's a total fantasy to think his followers on Twitter are being exposed to rebuttals of his statements.

You see counter-opinions if you follow the person who expresses them. It's the inverse of discourse, and I agree it's cancerous to civil society.

<comment><USER5> I never got started with twitter, because it just didn't make sense, without a bit of practice using it at least. Thanks for confirming it is a general mess.

</comment></comment></comment></comment><comment><USER6> Twitter is annoying. I signed up a couple years ago to follow some local stuff's news, mostly events. Thus I followed 8-9 accounts that initially were of my interest, and started refreshing and reading my feed. All I got was the same 3-4 posts repeated annoyingly often, so that I had to fish for new things that sink below stuff reposted almost hourly since months. I though, well, maybe it's these accounts that I follow that don't know what to do, and started looking around. What I found is that there are 3 prominent Twitter stereotypes: (i) the reposter, which repeatedly posts the same thing and retweets anybody who mention them, (ii) the dumper, like news sites etc., which just vomit tweets at you one every other minute, and (iii) the spartan which speaks in semi-cryptic punchlines. Given the platform has no spam filtering or any way to indicate whether a post is seen or not, it's byzantine task to extract information from what you get served in your feed.

<comment><USER7> Maybe I've spent too much time on Twitter, but once you find a decent small group of people/comedians to follow, it becomes easier to find others like them since they tend to all follow each other.

I now follow over 900 people, and my Twitter feed is news I care about, opinions I care about, and great "cryptic punchlines" as you call them.

</comment></comment><comment><USER8> Well the fundamental chosen limitations of the service seem to make it a bad choice for detailed technical arguments. But ultimately social networks are just about who is there. We talk about technical topics on twitter not because it's the right forum, but because the people we want to talk to are there.

<comment><USER9> I think you hit the nail on the head there.

This is also what makes "social networks" so frustrating to technical people: it's not about your idea or even its execution. Rather, it's about how many other apes you've groomed in the past, to the point they'll back you up ("retweet") no matter how stupid your argument or insipid your tweet. The politics of it, tribalism.

A 140 character limit doesn't help of course :-) but the need for soundbites, a shared communication channel for quickly correcting/reinforcing our perception of reality, goes much deeper than that. Twitter is just a medium.

Where it gets interesting is when you consider _why_ human group-think and "shared" perception of reality has been so successful, in evolutionary terms. Why are apes not simply rational animals, instead of spending so much energy forever climbing social ladders and adoring celebrities? Why these complex super-human social hierarchies (religions included), what makes them so efficient?

<comment><USER8> Well...yes to what you're saying. But there aren't neat lines between our professional technical lives and our personal ones, in particular because we spend a lot of time hanging out with people who share our interests.

Social media is designed for friends, not technical discussion, it's just that human relationships of all kinds are messy and there are no clear lines. So one bleeds over into the other, this can be expected. I don't think that's social media's fault or the people, just a predictable consequence of "how the people be"

</comment></comment></comment><comment><USER10> What Antirez describes is magnified on Twitter but no means isolated to it. Cherry-picking and un-charitably attacking someones statements is a human flaw that everyone should seek to suppress. And it happens for a couple reasons

* Weak egos on part of the listener. They want to _take down_ or show their superiority by besting a famous or popular person.

* Over Criticality. Instead of waiting for the entire argument to jell, and trying to charitably [1] understand the persons argument, you find the first perceived hole and attack. Often arguing about things that aren't germane to the discussion.

* False Drama / Celebrity Association. This is the bullshitter who wants to be "involved in the argument" but doesn't really care about the argument or the outcome.

People forget that debate, as practiced in meat space is about winning, not using logic to present cogent arguments. So when Antriez gets beaten on Twitter, he losing the debate due other's rhetorical skill. Your mom.

[1] [http://philosophy.lander.edu/oriental/charity.html](http://philosophy.lander.edu/oriental/charity.html)

<comment><USER11> > _Cherry-picking and un-charitably attacking someones statements is a human > flaw_

I don't think that's _exactly_ the situation Antirez describes. The way I see it, he's saying that Twitter makes it too easy for people to _inadvertently_ pick isolated tweets out of context, _mistakenly_ thinking they are seeing the whole context (because tracking down the full discussion on Twitter is very cumbersome and time-consuming), and then reply to something different than what was actually argued in the broader context.

That's different than cherry-picking on purpose in order to "win" an argument, which is indeed a human flaw and not a technological one.

<comment><USER12> > That's different than cherry-picking on purpose in order to "win" an > argument, which is indeed a human flaw and not a technological one.

As much as I want to believe that, it has not been my experience. I've found that if there's a possible way to misinterpret a statement, somebody on the internet will misinterpret it. They don't do it on purpose to win an argument most of the time, either. It happens everywhere on the internet (HN, Reddit, twitter, even blog comment sections) because communication is difficult and internet increases the exposed surface area of a statement. The more people to read a thing, the more likely it is somebody will interpret something that wasn't intended.

<comment><USER11> Maybe. But wouldn't you say this flaw is more likely with a tech platform that breaks down a debate into 140 character long pieces and makes it difficult to see the whole context?

Look at the three tweets Antirez mentions. The second one starts

"the 99% percentile is bad [...]"

Antirez mentions someone took this to literally mean that percentiles are a bad metric. To me, this doesn't particularly require bad faith or malicious cherry-picking; it just requires a bit of carelessness, enabled by the lack of context and no indication this was part #2 of a 3-long series of tweets. And apparently, once the "rebuttals" start piling up, they generate a snowball effect. Not _entirely_ Twitter's fault, but definitely made worse by it, which is what (I think) Antirez is arguing:

> _" Once upon a time, people used to argue for days on usenet, but at least > there was, most of the times, an argument against a new argument and so > forth, with enough text and context to have a normal condition. This instead > is just amplification of hate and engineering rules 101 together."_

</comment></comment></comment></comment><comment><USER13> If you're the kind of person who's comfortable writing texts of two paragraphs or more, you should completely avoid writing on Twitter, period. This will only lead to frustration and interaction with people who don't value the same level of quality writing as you do.

<comment><USER14> Absolutely. I've drawn my conclusions several years ago and stopped being active on Twitter, and stopped trying to look for meaningful material on it.

The painful truth is that many people realize this but they agonize over the fact that the people they want to talk with can only be found on Twitter. Network effect + tribalism = today's sad reality.

</comment></comment><comment><USER15> I like how Benedict Evans describes the 140 char limit: lossy compression.

It's hilarious to me that a rule enforced by external technical reasons (length of SMS) has become so important to the product that it's non negotiable.

Why can't I even, for example, add a text "attachment" the same way I attach photo, video, links, etc.? There's something hilarious about the CEO of Twitter screenshotting the "notes" app on his iPhone in order to send a message.

<comment><USER16> I like the idea of a text "attachment" but I could also see it being used negatively.

e.g. I tweet something positive in the 140 characters, and in the attachment I have something offensive. It's similar to the editing tweet problem.

There was some press about expanding the limit [https://www.recode.net/2016/1/5/11588480/twitter- considering...](https://www.recode.net/2016/1/5/11588480/twitter- considering-10000-character-limit-for-tweets)

</comment></comment><comment><USER17> My biggest regret is arguing with people on Twitter. It is not productive. Even less so than arguing on any other forum.

<comment><USER18> My biggest twitter-related regret is that my most liked tweet (by thousands) is a terrible joke about Trump. The reason I regret it so much is that within an hour or two, I realized that people weren't liking it because it was funny in an absurd "nothing matters" sort of way...they were liking it because they thought it was funny in a "yeah, that'd show'em" sort of way. I realized that people who took it as an opportunity to argue with me were really stupid...but the people who were agreeing with me and liking it were _also_ really stupid (so what does that make me?). There should be a German word for that feeling.

But, also arguing with people on twitter. That's bad, too. Let's just go with that.

<comment><USER19> > There should be a German word for that feeling.

Best I can think of right now is "fremdschämen", which literally translates into "foreign shame".

It means to be ashamed or embarrassed for other people's behaviour (as opposed to your own).

</comment></comment></comment><comment><USER20> This is why I hate that there was such an uproar around raising the tweet length limit. Mastodon's 500 character limit works so much better, especially when paired with the ability to collapse the bulk of a longer post's content under a short summary line.

</comment><comment><USER21> The big problem I have with having conversations on Twitter is that I wasn't even able to sign up for a Twitter account the last time I tried. It wanted me to provide a phone number. I refuse to do this, as they have no legitimate need for that information, even if it is just a lousy technique to try to avoid spammers from using their service. I think the account was automatically canceled or locked or something like that, just a few minutes after opting not to give my phone number. I don't know if this is still the case, but it turned me off of Twitter.

</comment><comment><USER22> From the comments in the article: " It certainly works much better as a broadcast medium and for giving occasional shout-outs, high fives, and anything you know isn't going to go beyond a short, positive interaction "

Looking at the Twitter design, this seems to be the intended use. At least in my stream almost all tweets are accompanied by a large picture. Quite often something that is not even very relevant, since they are auto picking the pictures for linked web sites. This makes very poor use of screen real estate. If conversations were a thing for them, I would expect a different design.

</comment><comment><USER23> The newer tendency to mark threads with numbers so that people at least know there _is_ context to a particular mid-thread tweet seems to help somewhat, but the general problem remains.

It also fascinates me how badly editors' choice of headlines to make people more likely to click can screw up the debate because many people respond to the clickbait headline without clicking, and end up drawing conclusions that aren't at all supported by the article. Presumably this is also a problem on facebook, but I deleted my account there some time ago.

</comment><comment><USER24> So far I'm only convinced the author would have gotten longer, more verbose flow on Usenet or Mailman. I am not convinced the ideas contained in that flow would have been any more valuable.

To be honest, I'm not exactly sure what insight I would gain in this specific case from reading anything _other_ that a) your post on diskless replication, b) the Stripe engineers' report, and maybe c) a few of the paragraphs of your response in this post.

</comment><comment><USER25> Twitter wasn't designed to enable good conversations - it was designed for rapid, viral growth thanks to a gimmick which limits message length and sensible, nuanced interaction.

Have a look at Lyra - it's a nonprofit conversation service designed with respect for language and attention.

www.hellolyra.com

</comment><comment><USER26> Potentially relevant, since the article draws a comparison between twitter discussions and (what used to be) usenet discussions: [https://en.wikipedia.org/wiki/Eternal_September](https://en.wikipedia.org/wiki/Eternal_September)

Twitter seems to support less of a netiquette, it's more point-and-shoot. Besides that, it seems intuitive that the 140 chars restriction lends itself less to discussions than proper forums.

</comment><comment><USER27> I find Twitter the only bearable bulletin these days, just following my industry influencers without participating actively.

</comment><comment><USER28> Why care about some ppl in twitter?

I met a bunch of people hating on React and a bunch of people loving it.

No value in these tweets.

</comment><comment><USER29> For service consistency we have been experimenting with the CV which is the standard deviation over the mean (with of course 99% as well being looked at).

I told someone we were looking at it and I too got a similar response.

</comment><comment><USER30> (This is a few years old at this point..)

</comment><comment><USER31> Seems like part of this could've been prevented by just tweeting with (1/) or (2/) in the beginning of multi-tweet posts.</comment>


The Nomad Who's Exploding the Internet into Pieces - <AUTHOR> https://www.theatlantic.com/technology/archive/2017/05/meet-the-counterantidisintermediationists/527553/?single_page=true <comment><USER2> Secure Scuttlebutt, social media for counterantidisintermediationists.</comment>


How I fixed my Inbox (Tumblr's David Karp's email filters/sorts rules) - <AUTHOR> http://www.davidslog.com/774736049/how-i-fixed-my-inbox

<comment><AUTHOR> I'm sure a lot of us can identify with have email related to both support/follow-up questions, and _creative_ work (be it development/ design/ writing.)

There are times of day when I have the energy and mood to work hard, but not necessarily get into "the zone" required for creative work.

My own email/ task list is aligning more and more with specific energy modes, and less and less with any particular project/ person.

I'm getting way more done this way, letting my "mode" rule the roost.</comment>


Ask HN: Music APIs? - <AUTHOR>

I'm looking for an API that gives me access to artist/album/song details and preferably images. Te ability to extract artist/album/song names from strings of text would be a bonus.<p>I'm currently investigating the Last.fm API but was wondering if there was anything better out there? <comment><USER2> <http://www.discogs.com/help/api>

</comment><comment><USER3> You can also use Amazon API. by using Amazon affiliate API, you can access and search artist/album/song info.</comment>


Silicon Valley Engineers Pledge to Never Build a Muslim Registry - <AUTHOR> https://www.buzzfeed.com/nitashatiku/never-again-tech-pledge <comment><USER2> Yeah, right. Just like we're not going to cooperate with government agencies to spy on our own citizens under secret laws and secret courts.

</comment><comment><USER3> I hope and pray history does not repeat itself . [https://en.wikipedia.org/wiki/IBM_and_the_Holocaust](https://en.wikipedia.org/wiki/IBM_and_the_Holocaust)

</comment><comment><USER4> They won't have to... all the web-bugs and web-beacons will allow them, in combo with Facebook/Google/SMS/phone-call data, to determine with a very high degree of accuracy who is Muslim and who is not.

It's almost as if no one ever heard of "dual use" technology before.

</comment><comment><USER5> This is a nice symbolic gesture I suppose, but there already is a muslim registry, and a prominent member of team trump sits on its board.

</comment><comment><USER6> Less competition for Oracle.

</comment><comment><USER7> Software is made by other people in other places too!

</comment><comment><USER8> Pretty sure an NSL and the accompanying gag order will disallow them from speaking out publicly.

I'm wondering though, what exactly is the "incoming administration's proposed data collection policies"?

</comment><comment><USER9> Government registries for otherwise law abiding citizens is counter to the Constitution. You shouldn't have to be in a registry to: fly on an airplane, own a firearm, or worship a certain way, and the government has been expressively prohibited from doing so (unlawful search and seizure).

We need to stop letting special interest activists weaken this foundation.

</comment><comment><USER10> Or Palantir

</comment><comment><USER11> Oh, how reassuring. They'll commit to principle when it helps them thumb their nose at the other political team, but privacy is still out them window when it conflicts with business goals, right?</comment>