LibreTaxi – A free and open source alternative to Uber and Lyft - <AUTHOR> http://libretaxi.org/ <comment><USER2> I'll post a comment from ProductHunt, which might give a bit more context to where the founder sees this going, and why cash rides make sense under certain circumstances he designed the app for:

[…] I have gone to the founder's blog and it provides a better understanding of where he sees it going: Uber (and similar apps) will never reach many remote villages, cities and regions around the world (and don't have to), but technology could greatly help the local communities in solving their transportation problems that are as "simple" as getting from point A to point B with no other feasible options available.

For more details, here's the founder's blog on this: [https://medium.com/@romanpushkin/how-i-made-uber-like-app- in...](https://medium.com/@romanpushkin/how-i-made-uber-like-app-in-no-time- with-javascript-and-secret-sauce-94ef9120c7f6#.dc99pd5qm)

<comment><USER3> > technology could greatly help the local communities in solving their > transportation problems that are as "simple" as getting from point A to > point B with no other feasible options available

In rural communities here in Chile, and also in smaller towns, there is an amazing solution to this called Collectivo. I had never heard of it before arriving, but man it's the greatest thing. It's something in-between a bus and a taxi: a taxi with a predefined route. So if you're on a route, which there are many, you flag down a collectivo as it passes, and since both you and the driver already know where it's going, it'll stop for you even if there are already people in the car.

What makes this amazing is that it's _cheap_ because the route is pre-set, and it's shared, and the driver can just go all day knowing there will be people along the route, and doesn't have to finish one ride before starting another. But meanwhile they'll generally go partially off their route if you request it, and it's not too much of a bother.

Why don't North American rural areas do this? It's a really great way to get around, and makes it so you can live (or at least visit) in rural areas without owning a car.

<comment><USER4> Americans don't like sharing.

<comment><USER3> Rural Americans? I don't have any experience in rural America, but I heard they're pretty friendly ;)

But maybe, yeah..

<comment><USER5> I grew up from 10 to 18 in a moderately rural area outside of Dallas. We share fine if and when we have to, but for the most part, we don't have to.

I saw a lady walking along the side of a rural road - this was about 12 years ago, so there weren't buses then, and there won't be in the next 12 years either - so I pulled over and asked her where she was going. Turns out she was going to walk, in the summer heat, to a grocery store about 10 miles away.

We shared my car just fine. But I certainly wouldn't go over to a neighbor and ask for a ride to the grocery store if my car was running ok.

<comment><USER4> I think that's it. Needing to share or using someone else's car is seen as a sign of weakness. OK for an old lady maybe. But a Real American rides their own damn car, and pays for their own damn healthcare...

</comment></comment></comment></comment></comment></comment><comment><USER6> My concern with this is the problem of ensuring the safety of the person driving the cab and the real identity of the rider.

Lots of drivers will be reluctant because they can be stiffed on the bill. Lots of passengers will be reluctant to use it due to the inherent risk of riding with what is essentially a stranger.

<comment><USER7> Shouldn't be an obstacle. This is already exactly how normal, hailable, regulated taxis work (at least in much of the USA, and certainly in NYC -- I can't speak for elsewhere). That's why taxi driver is (at least in the US) a statistically more dangerous occupation than police officer.

From the point of view of a driver, this scheme is less dangerous than the status quo, at least there is potentially a little more paper trail to prove a rider rode.

From the point of view of a rider, there is the advantage in regulated taxis that the driver is licensed and identified, but in countries where it's feasible, I don't see why LibreTaxi couldn't have an option to "request licensed driver only" or something

<comment><USER8> I have to disagree that this is "exactly how normal taxis work". Notable differences (many apply to Uber/Lyft also):

1) There's no check to ensure that the vehicle is ensured _for commercial rides_ before they start taking hails.

2) Likewise, no background check.

3) No regulatory body to investigate cases of e.g. scamming passengers out of money or refusal to comply with agreed-upon rates and dropoff. [1]

4) The local PD doesn't stand ready to treat assault on a driver like assault on a police officer, in terms of marshalling resources.

5) No central registry, or even private registry of cars/drivers in operation.

6) Drivers aren't trained in the relevant anti-robbery countermeasures.

7) In NYC, the barrier to prevent the most obvious kinds of robbery.

That makes a big difference in safety of paying cash to a roving operator!

Sadly, I think the "big corp middleman" does add a lot of value that a free app can't replicate without similar investment, scale, and "walled garden"-ness.

[1] I know commenters here like to roll their eyes about the clumsiness and lackadaisical enforcement -- I'm one of them! But it's at least _something_ , which prevents a major scale-up of this behavior.

<comment><USER9> All those points would not be an obstacle to an open source solution that is not trying to build a grand unified global Uber drop-in for random rideshare drivers to sign up with, but instead only ("only") tries to be an installable turn-key solution for existing operators (or regional federations thereof) to add the smartphone hailing user experience to their existing offering, without much investment.

I did not find a clear answer on the site wether this project is aiming at independent ridesharing or at being a turn-key solution for more conventional taxi dispatch organisations. There is the idea of "hack and tune it for your city", which is clearly not the global approach, but then they also advertise "1-minute hiring", which is definitely not what I would be looking for if I were to customize it for my hypothetical preexisting organisation.

Something like wordpress or the myriad open source online shop systems, but for taxi dispatch and with a unified smartphone client (or client protocol, actually) that can work with all installations. That might be the best way to avoid a single gobally dominant private network that can set their "tax" on all rides at will. The app/clients might be supported for discovery by a global registry of regional installations and some trust management, but it might actually be not only easier but also more reliable to just leave that to plain old web, with something like libretaxi:-URIs to connect the app to a regional network discovered by your search engine of choice.

</comment></comment></comment></comment><comment><USER10> _> , pay cash upon arrival. _

Paying cash is a non-starter. I haven't been to a bank ATM in over 10 years. I don't even know what my card's secret PIN is to make a cash withdrawal. Being virtually cashless by using credit-cards _for everything_ is very common in professional circles.

A credit-card is simpler and the exact line-item amount showing up on my monthly statement helps me keep track of travel expenses. (Also, many credit cards transactions will download to the Quicken ledger for people that use that personal finance software.)

Paying by credit also helps keep drivers accountable and reduces fraud.

<comment><USER11> > Paying cash is a non-starter.

That certainly depends on the country. Good luck living cashless in Europe, especially in Germany where virtually no small store, food vendor etc. has a CC reader.

<comment><USER12> Really? That's pretty surprising - I live in Barcelona, and I use cards 99% of the time, and in the UK it was even easier. Even taxis here have card machines, and every small shop definitely does. The only holdouts are the occasional tiny old wine bar here and there, but even most of them have moved with the times.

<comment><USER13> Unfortunately I didn't find more actual stats, but there is a report from Deutsche Bundesbank (German Federal Bank) from 2014 which states that in 2014 the share of cash payments in Germany was 79.1% and only 1.3% credit card transactions.[0, page 27] If I remember correctly, there is no other European country with such a low percentage of credit card transactions.

[0] [https://www.bundesbank.de/Redaktion/EN/Downloads/Publication...](https://www.bundesbank.de/Redaktion/EN/Downloads/Publications/Studies/payment_behaviour_in_germany_in_2014.pdf?__blob=publicationFile) [PDF]

<comment><USER14> The relevant page is 31 (pdf-page 33), containing a figure "Share of payment instruments broken down into various transaction amount categories in 2014, 2011 and 2008". In particular, 96% of transactions below 5€ were in cash, and 90% for transactions between 5 and 20€.

A breakdown by age group is on page 33. Unsurprisingly, young people pay by card more often than older people.

Various other figure breaking down card/cash usage along different lines are on the subsequent pages. Poorer people use cash for a larger percentage of their transactions than richer people.

Page 63 breaks down usage by occasion/purpose of payment (gas/restaurant/retail/...).

Lastly, 97% of Germans have a girocard (debit card), but only 1 in 3 have a credit card.

</comment></comment></comment></comment></comment><comment><AUTHOR> About the trust and reputation issue, I think blockchain technologies could play an important role for decentralized services like this.

I would like to see a multipurpose reputation / trust system based on the blockchain, exposing all the needed features as a simple library and / or HTTP API, ready to be implemented by apps and websites.

I think we are still in a period where a lot of products are built either in a centralized way, or all on the blockchain and decentralized technologies (like IPFS). It makes sense as we are still in the experimentation phase, but it could change in the near future. People could start using the blockchain where it is the most efficient today, as a brick part of a product (e.g. to build a solid decentralized reputation system), instead of being the foundation layer of the product.

<comment><USER15> I think most of this "blockchain talk" is just nonsense. Uber/lyft similar are very complex services, which are pretty pain in the ass to maintain and develop. What would be the incentive to develop such an app in decentralized fashion? What if there are problems between rider and driver, who will act as a middleman to resolve issues? What about basic support etc?

<comment><AUTHOR> > What would be the incentive to develop such an app in decentralized fashion? > What if there are problems between rider and driver, who will act as a > middleman to resolve issues? What about basic support etc?

Sorry if I wasn't clear enough, but I am precisely talking about this: using the blockchain for what it is good at today, instead of trying to put everything on a decentralized system (which is really hard or just impossible for now).

Uber / Lyft and others have a reputation system in place, opaque and developed specifically for their product. It's an important part, but it is just a brick in the complexity of the services they are building.

I am talking about replacing this brick by an open, blockchain-based reputation service (that doesn't exist AFAIK). That way, any app developer could benefit from the transparency and guaranteed properties from the blockchain. It could even be easier to use than to implement it as a private system.

<comment><USER16> What is "the blockchain" and what built-in features does it have that can replace a purpose-built reputation system?

<comment><AUTHOR> In this context, you can see the blockchain as a database, always available, and containing entries (transactions in blocks) that you can not delete. It's very simplified, see the Wikipedia article [1] for more details about blockchain systems.

The specific features that I find interesting to build an "open trust system" built on top of it, compared to a traditional database, are:

\- Transparency: anyone can explore this database, and verify that the software is using it in a transparent way. It might sound not important for something like Uber, but if you build an open trust system that could be used by different services, it becomes very important for authors (Uber, Lyft, etc.) to trust this system.

\- Reliability: because a blockchain is distributed, it is always running and available.

\- Trust: transactions are immutable and a transaction can not be falsified once confirmed (validated).

[1] [https://en.wikipedia.org/wiki/Blockchain_(database)](https://en.wikipedia.org/wiki/Blockchain_\(database\))

<comment><USER17> There is a problem: cryptographic solutions (like blockchain) cannot help _build_ trust, only to _maintain_ it. If a driver loses trust, they can just create a new private key and now they're up and running without any bad reviews again.

<comment><USER18> Very good point.

</comment></comment></comment></comment></comment></comment></comment><comment><USER19> Completely disregarding the rest of the page/service/post I kinda dislike that Telegram is being touted as the most secure messenger out there. That's not even close to true. By default all that Telegram offers is transport security and afaik unaudited end-to-end encryption with their own protocol if two users choose to use it (and lock themselves into the platform they start that conversation on).

<comment><USER20> Also having to have a phone number thing to set up an account sucks (same with Signal, WhatsApp etc.).

</comment></comment><comment><USER21> It's definitely an interesting idea. Though one of the major features that I love about Uber/Lyft is that I don't have to worry about paying in cash.

<comment><USER22> _BitCoin integration is on the way!_

I know what you mean, but the Bitcoin integration is going to be really exciting!!!

<comment><USER23> If there is one thing people love to be paid in, it is a collectible whose value widely varies daily based on when its larger holders game the system or when online drug markets get shutdown.

<comment><USER24> I'm not completely sure whether you're referring to cash or Bitcoin.

<comment><USER25> How does cash vary in value? If you have a $50 bill, you can expect to buy a very predictable amount of food (for example) next week, regardless of what happens. Not so much if you have 0.0521 BTC.

<comment><USER24> There are plenty of cash currencies, aside from USD, that fluctuate wildly.

<comment><USER25> That's true, but most vary fluctuate wildly with respect to the USD, not in their purchasing power within their country of origin, even less so in the span of weeks or days.

For example, if I was paid the equivalent of a 50 USD ride in Bitcoin in Jan 4, and were to go to buy food today, I could only buy 40 dollars worth of food.

Which currency does that? Sure there may be a few examples in case of extreme inflation, etc, but it's not the norm at all.

<comment><USER24> My point is that both are flawed and have their uses.

I won't be paying any bills with Bitcoin any time soon.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER26> Am I the only one to see the irony of this? Uber and Lyft bring "disruption to the industry", then a new player enters and has the potential of disrupting their business model... Now, their only line of defense against LibreTaxi is to use the same rhetoric the Taxi companies had been using against them.

<comment><USER27> Their real defense is having a better product. I have a difficult time seeing LibreTaxi take off; at least in developed countries, I doubt people want to negotiate prices with drivers ahead of time and then pay cash.

</comment></comment><comment><USER28> > Based on Telegram app, most secured and fastest messenger in the world.

Red flag right there.

<comment><USER29> It's just a Telegram bot, it's not "based on" Telegram's source code (which is what I assumed when reading your comment before opening the page). That's like saying Facebook is based on PHP and saying "that's a major red flag!"

<comment><USER30> Yes? That _would_ be a major red flag if it was being touted as a feature. Especially if you add in a claim of "the most secure and fast programming language".

</comment></comment></comment><comment><USER31> Re: Credit Card Integration

Stripe doesn't really cost that much; you could support card payments and pass the stripe fees along to both parties (50/50 to the passenger and driver)

This is a really good idea if it can take off, but I think cash only is a non- starter, though I understand the restriction initially

<comment><USER32> Unfortunately this isn't possible for a service like this. If money passes through the hands of the app-creator than they have to hire an accountant, take on risk, and file tax returns. Not possible with a non-comercial service.

<comment><USER33> Stripe Connect lets a marketplace invite providers to create an account and therefore Stripe handles a good portion of what you refer to.

</comment></comment></comment><comment> martin-adams Interesting idea. So does this skip on any verification that the person can drive and car is safe to be in?

<comment> angry-hacker What does uber or lyft do to take care of the safety?

<comment><USER34> Probably some kind of a criminal background check. A Driver history check. They also make sure that cars are new enough.

</comment></comment></comment><comment><USER35> I don't think this is the right approach. IMO, what we need a platform for regional driver co-ops. You obviously wouldn't have the consistency of Uber and Lyft, but the service would take only a tiny cut since they don't have to provide anything other than the app. When you want to hail a car, you'd be able to choose from any local services, which are responsible for the vetting and insurance of drivers. It has its flaws, obviously, but such driver co-ops already exist in some places, so I think it could work.

<comment><USER36> It's possible that consistency may be a large part of the value proposition of Uber or Lyft. I can go across the country and get a ride with a company I have some level of trust in. Regional co-ops do what taxi companies did, forcing me to re-evaluate everything all over again in every new place.

<comment><USER37> Where's the consistency in getting into a stranger's car every time you use a service? The consistency would be the app? Often Uber drivers also drive for Lyft and vice versa. If the same drivers also embrace Libre Taxi I fail to see any fundamental difference in the experience.

<comment><USER36> Consistency in which app to use, the experience in using it, payment handling, insurance, customer service, and driver vetting. All of these offer value individually and in their consistency across locations.

You're right! It's absolutely possible that every driver may embrace Libre Taxi. In which case there would be no advantage whatsoever in terms of consistency.

</comment></comment></comment></comment><comment><USER38> If becoming a driver is so easy, what about security for passengers? I'm from a city that has been known to be "dangerous", and the main reason I use Uber there over taxis is for security. How does LibreTaxi prevent bad actors from becoming drivers?

<comment><USER39> Uber is not inherently safer than a taxi. Why do people always say this?

<comment><USER40> It's not inherently safer but Uber does do things that most taxi companies don't that help improve safety, albeit slightly. Really basic things like providing the user with a photo of the driver and a description of the car including license plate so the user can be sure (well, more sure) that the car that arrived is the car they requested.

As far as I'm aware (in my experience) the only way you can compare the taxi driver's face to their license is by getting in to the back of the car, where the license photo is visible.

</comment></comment></comment><comment><USER41> At the first glance, this seems to be a way to bring the 3rd world taxi experience to the 21st century.

Really, no taxi licenses, no requirements on cars, no driver verification, no GPS, paying cash... I feel safe already.

<comment><USER42> > no taxi licenses

Well, this one is arguably a good thing.

</comment></comment><comment><USER43> There are actually taxi cooperative or call center that have their own app. But they're each limited to one city.

What they need to do is get together to release a high-quality app that works all over the world by relying on the local taxi call center partner.

<comment><USER44> Mytaxi (mytaxi.com) is a popular taxi app in germany. Since they are using "real" taxis, they get around all the problems Uber and Lyft face.

</comment></comment><comment><USER45> I'm surprised no one mentioned Arcade City[0], which is working on a peer to peer alternative to Uber and Lift, using a blockchain. Drivers set their own prices, and there are no georestrictions like on Uber.

[0] [https://arcade.city/](https://arcade.city/)

<comment><USER46> This service apparently requires a facebook.com account.

</comment></comment><comment><USER47> I would love an app for calling and advising on regular unionised taxi service in any city.

</comment><comment><USER48> If app-fication of ride hailing is what you want, it's worth mentioning that in the SF bay area, Flywheel has done an excellent job of making a feature- rich app and network [0]. Personally, I have found it to be an excellent service, the things that matter the most to me are availability of rides, timeliness of driver dispatch and arrival, and communication with drivers (when necessary).

[0] [http://www.flywheel.com/passenger-app](http://www.flywheel.com/passenger- app)

<comment><USER36> I've used Flywheel!

Without being excessively negative, the experience showed me that Uber and Lyft deliver value beyond the simple A-to-B transportation service.

</comment></comment><comment><USER49> Interesting idea but not as convenient for someone who travels and doesn't want to organize a cash withdrawal to leave the airport. With Uber I can just get going.

<comment><USER29> > doesn't want to organize a cash withdrawal

You're not the first to mention this, but this is completely foreign to me. I'd love to get off of cash, but there are just so many places in Europe that are cash-only. The Netherlands is bad, but Germany is even worse. Lots of bakeries, fries stores, stands, etc. are cash-only; in restaurants big groups split and settle the bill with cash; and settling stuff between friends is often cash as well (though this is more and more bank transfer / wire transfer / whatever it's called to IBAN within SEPA).

You're serious that "organizing a cash withdrawal" is 1) something you need to do in the first place and 2) it's a hassle or something? I also read about having a separate PIN for cash withdrawals (I had no idea a card could have two PINs).

<comment><USER30> Getting to a cash machine that won't charge you an arbitrarily large amount for the privilege is nontrivial for many people.

<comment><USER50> Don't you just pull out cash before you leave then? Stop by a bank ATM or by the bank if you need a different currency.

</comment></comment></comment></comment><comment><USER51> This is an absolutely brilliant idea, especially love how they're building on Redis, Firebase and Telegram (regardless of whether you think it's secure or not, that's hardly the point here), reinventing the wheel is what our industry needs to stop doing, this may be the best example of "Standing on the shoulders of giants" technology I've seen yet.

</comment><comment><USER52> I guess you need to think about this more as a monetized version of hitchhiking than a free Uber/Lyft. Cause in terms of liability there is about 0 coverage. You can't even know if the driver is insured at all. While I love the idea of the app and it's openness, I am not sure there would be a market/use for it where Uber/Lyft is available.

<comment><USER53> It's very similar to what Blablacar was before it received VC funding. And in France we have [https://covoiturage-libre.fr/](https://covoiturage-libre.fr/) too

</comment></comment><comment><USER54> I would never use this or recommend it. Extremely unsafe. Any goon can create a "Taxi" account and do whatever he wants.

<comment><USER55> I wonder if this issue could be helped with a good rating system

<comment><USER56> yes an escrow system would definitely help. It'd need some initial 'trust seeding' tho, but if you're not too paranoid that's quite okay.

Maybe one of the creators of the system knows someone or runs a car himself and he can initially start providing these initial "ok's" to the system.

</comment></comment></comment><comment><USER57> The address shown on the phone is the address of a fantastic breakfast place in Potrero Hill. I'd recommend it to anyone.

</comment><comment><USER58> Rideconnect.com, A way to create your own ride network was posted here a few days ago. [https://news.ycombinator.com/item?id=13502133](https://news.ycombinator.com/item?id=13502133)

All face chicken and egg problem but would be nice to explore uber alternatives

</comment><comment><USER59> Cutting out the middle man - that's what an internet business is supposed to do!

</comment><comment><USER60> Interesting, (I think) this is exactly the kind of app/service I was talking about with a taxi driver in Tahoe a month ago.

It's a rural area with several small taxi companies, but none offer real-time info or the convenience of a single app to use to call a taxi.

<comment><USER60> Wait, oops - no GPS tracking?

Um, that's the killer feature that makes Uber Uber. It's taxis with GPS.

</comment></comment><comment><USER61> Using this looks like a great way to end up stuffed into a suitcase in the bottom of a lake. Part of the appeal of Uber or Lyft is that they ostensibly conduct background checks of some sort to weed out the psychopaths.

<comment><USER62> This was my first thought. 1 minute driver hiring sounds like something a serial murderer would love.

</comment></comment><comment><USER63> with #DeleteUber trending, I think now would be a great time to promote this, but I think needs the following:

(1) ought to use a fully open-source messaging backend instead of Telegram (closed server). Would be great if could interface to the Telegram bot with a variety of messaging systems.

(2) needs to work without a dataplan if to be viable in rural areas (Silence, the SMS-fork of Signal)

(3) needs to easily accept a variety of payment mechanisms, including credit cards, PayPal(s), and crypto-currency, so can interface with people who don't use cash.

(4) needs to have a distributed p2p reputation system (hello blockchain).

<comment><USER63> clarification: after testing out the app, it seems clear that passenger and driver could agree on any mutually-agreeable payment method. But it would be nice to have something integrated.

</comment></comment><comment><USER64> In France, a somewhat similar effort is being built: [https://le.taxi](https://le.taxi).

Except that it bootstraps its security on the existing vetting process for taxi companies.

<comment><USER65> ... and on the existing mechanisms to ensure that the driver has insurance, does not cut prices in a race to the bottom that harms everybody, and does not cheat on taxes.

</comment></comment><comment><USER66> In Helsinki Finland we had Kutsuplus, which was basically a shared minibus taxi. It lasted five years and had to be subsidized heavily. It was about 50% cheaper than Taxi. Yet of course also slower.

[https://www.wired.com/2013/10/on-demand-public- transit/](https://www.wired.com/2013/10/on-demand-public-transit/)

</comment><comment><USER67> Things I like about rideshares:

\- no payment friction

\- easy gps integration

\- safety

Things missing from this service:

\- see above

</comment><comment><USER68> If you're in Los Angeles, I strongly recommend googling LAPD Bandit Cab Enforcement before using this app to give rides. Also, other cities may have similar enforcement operations.

<comment><USER65> Why not just give a link if you know exactly what information you want to refer people to?

<comment><USER68> I thought LMGTFY links were frowned upon around here.

<comment><USER50> Nope. See the discussion we had about this a couple months ago on HN.

</comment></comment></comment></comment><comment><USER69> Might not be a bad idea to mark this as "beta" on the website and list some of the roadmap ideas being worked on: [https://github.com/ro31337/libretaxi#technical-roadmap- unord...](https://github.com/ro31337/libretaxi#technical-roadmap-unordered) to ease public concerns.

This is a _great_ idea, but it is really early on and needs a safety and open- source-friendly CC integration before being advertised in my opinion.

</comment><comment><USER70> Nice to see. Uber, Lyft, et al have always seemed like exactly the wrong solution here. The availability of the vehicle and the demand for it are inherently local phenomnena, so why should some arbitrary company who knows where be the major broker for dealing with this issue worldwide? I understand network effects, etc., but it seems that localized brokerage would serve all parties the best.

<comment><USER71> One massive benefit is increased resources for vetting drivers. How is my safety both ensured and insured with LibreTaxi?

</comment></comment><comment><USER72> I never carry cash. Why not just integrate Stripe for debit/credit card transactions? Or literally anything.

<comment><USER73> They're working on Bitcoin integration. Cash is legal tender for all debts so it's the obvious place to start, plus people who may not want their activities tracked too closely may be safer with cash.

Besides, you can't hand someone a suitcase full of electronic money. I mean you can duct tape a black card into the suitcase or something but it just isn't the same. Do your part to save the attache case industry.

</comment></comment><comment><USER74> Sounds like a great way to get robbed... Drivers only take cash, robber decides to rob driver of all cash.

Transactoons need to happen through the phone, not cash.

</comment><comment><USER75> Install link doesn't work, and it doesn't show up on the play store.

</comment><comment><USER76> I don't like to bargain.

</comment><comment><USER77> It could have great potential, and I see the virtue of this kind of thing globally, but my first thought was "This seems like a great way to get murdered." Maybe that's a gender thing?

</comment><comment><USER78> Cash only. That makes it practical for me about .01% of the time.

</comment><comment><USER79> How will they deal with the issues of ADA compliance, ensuring that the drivers and vehicles are safe, and compliance with local T&LC regulations like medallions, etc?

</comment><comment><USER80> This wont work. Taxidrivers often dont speak your language, and always try to get high prices by being not so friendly. Uber/Lyft solves this problem.

</comment><comment><USER81> I guess the days of names like, "iTaxi" and "Taxer" are gone. How long until all the "Libre" names are passe I wonder?

</comment><comment><USER82> Taxi companies need to band together now. They finally have apps but each one has their own. They will keep getting crushed until they share dispatching.

</comment><comment><USER83> "Get hired instantly" doesn't sound good…

</comment><comment><USER84> The "install" link forwards to some obscure URL that simply won't work on normal browsers:

tg://resolve?domain=libretaxi_bot

</comment><comment><USER85> I wonder why kue. kue is a queuing system built on top of redis. Why not something like zmq, RabbitMQ, Kafka, etc.

</comment><comment><USER86> How is this different from me remembering a bunch of cab phone numbers and calling them? What is this app doing?

</comment><comment><USER87> I like the idea, but the idea of having to carry and use cash is enough to put me off completely.

</comment><comment><USER88> This is a great fit for IPFS so you don't need central infrastructure

</comment><comment><USER89> Uber and Careem are banned in Karachi, a city of 20 million.

This seems like a life saver.

</comment><comment><USER90> <Insert gratuitous joke about LibreTaxi vs. GratisTaxi here>

</comment><comment><USER91> Sounds great but the advantage the main guys have is the network effect, a large fleet. The fact that this is free suggests no marketing budget and therefore less drivers and passengers, both which depend on each other to grow.

<comment><USER92> That's not really an advantage. Cab companies are location specific, the network effect is limited by the number of taxi medallions handed out.

It's also a good starting point for _local_ companies to be the Uber or Lyft of their city. For example in Toronto, Hailo doesn't exist and Lyft doesn't operate here either. It would be awesome if a company could just pick up LibreTaxi, pour in some $$$ for marketing and sales and start it up for Toronto.

</comment></comment><comment><USER93> Maybe allow taxis to pay for a background check.

[https://checkr.com/](https://checkr.com/)

Also it would be easy enough to allow someone to send an invoice with their own payment options.

</comment><comment><USER94> Bitcoin finally making new applications possible!

</comment><comment><USER95> The Best thing about FSF is they never give up even when it seems like there is no chance of success at the present movement. True RMS spirit.

<comment><USER96> Could you please elaborate? I don't see any link to the FSF on the site.

<comment><USER95> Sorry. It is not FSF project. I am not able to delete my comment. When i looked at "Libre" i just assumed FSF(confirmation bias)

</comment></comment></comment><comment><USER68> No Rideshare Insurance? NO PROBLEM!

</comment><comment><USER97> > No vehicle restrictions.

uuuh.... no thanks?

</comment><comment><USER98> It is written in Javascript.

</comment><comment><USER99> It is disrupting the disruptors.

</comment><comment><USER100> Really great tool, nice job!

</comment><comment><USER101> This should have been implemented as a Facebook Messenger Bot.

</comment><comment><USER102> this thing isnt ready for primetime...

</comment><comment> awinter-py free as in ...

</comment><comment><USER103> I thought it was created by the same guys whi created LibreOffice

</comment><comment><USER104> Why do we need a dedicated app for everything? Is it not time to build one app that can be used for everything, including ride sharing, food delivery and item listing?

<comment><USER105> You mean like a webbrowser?

<comment><USER104> No I don't.

<comment><USER50> why do we need clocks, can't we just put a clock in everything else?

</comment></comment></comment></comment><comment><USER106> This is the height of stupidity.

If you absolutely refuse to use any products built by C-suite execs that advise and/or support Trump, then go live as a hermit in the wilderness.

edit: Uber/lyft are built by smart and motivated technologists who spend everyday making the most sophisticated ridesharing platforms out there. To use an unvetted and unsafe knockoff is inane.

<comment><USER105> I've been looking for something like this. Not because of Trump but because I strongly oppose the "sharing economy" that is explotative of workers, circumventing legitimate market regulation and reaping profits in a centralized manner.

<comment><USER65> How is LibreTaxi _not_ "explotative of workers, circumventing legitimate market regulation"? You're right about the centralized profit thing.

<comment><USER105> It is absolutely that as well. But if this is the direction we are headed in, lets at least make sure as much of the money goes to the workers as possible.</comment></comment></comment></comment>


Why do human beings keep getting diseases from bats? - <AUTHOR> https://get21stnight.com/2020/03/30/why-do-we-keep-getting-diseases-from-bats/ <comment><USER2> Actually, I think humans tend to live very close to bats.

We may not interact directly with them but our buildings are very good nesting sites for them. It's common to see bats in barns, stables, or attics.

Sometimes people do also eat bats. I think this especially important regarding Ebola as fruit bats are indeed sold for meat in West Africa.

In the wild bats can get in contact with other animals that are in turn eaten by us. It seems to be a possible route for SARS through civets.

<comment><USER3> Everywhere I've lived in the United States, you can find bats, even in NYC.

But like rodents and (also pretty much everywhere) different species pose different risks.</comment></comment>


Google has a Hunch - <AUTHOR> http://www.trendslate.com/2011/02/18/google-has-a-hunch/

<comment><USER2> I wish there was a video to go along with it, but very interesting none the less.

Kind of off-topic, but I liked this slide: <http://cl.ly/3r1F1l141g2g0T3v3929>

It's important to realize that there are different types of chicken and egg problems.

OpenTable, Monster and AdWords don't create a sense of community. There's a strict buyer/seller differentiator between the users.

AirBnB and ebay create something in the middle, where many of the sellers are also buyers (especially in the beginning).

Lastly, sites like etsy and dribbble have a strong sense of community because creators are mostly "selling" to their peers.

An interesting exercise is to take a successful company in one of those columns and bring it to another. In one sense that's what AirBnb did by taking the couchsurfing concept and turning it in to a "hybrid" with a stronger buyer/seller differentiator.

</comment><comment><USER3> Really interesting. This reminds me of OKCupid's correlational questions[1]: If you want to know if your date puts out, ask if they like beer. If you want to know if they're liberal, as if they like complex people in their lives. The idea of building social networks around interests seems so intuitive, yet I've never seen anybody really do it before. Hunch seems to be a smarter StumbleUpon. I'm intrigued.

[1] [http://blog.okcupid.com/index.php/the-best-questions-for- fir...](http://blog.okcupid.com/index.php/the-best-questions-for-first-dates/)

</comment><comment><USER4> <http://hunch.com/></comment>


New programming blog from Mike Vanier (of LFM/LFSP fame) - <AUTHOR> http://mvanier.livejournal.com/

<comment><USER2> I probably agree with half of these criticisms, but they are all pretty minor. I wish ruby 1.9 would get a cleanup, but I think it is just getting more features.

</comment><comment><USER3> What is wrong with these python people?

Just because they are given no options by their language of choice and are forced into following strict and arbitrary rules, they think a language that provides options is 'unclean' and 'messy'.

What is wrong with a language that lets you express yourself in whichever way seems most intuitive to you? The only thing that comes to mind is future maintainability when the code changes owners.

tim-toady all the way.

</flamebait></comment>


Ask HN: What level of math is required to complete the teachyourselfcs subjects? - <AUTHOR> <comment><USER2> I had to look up teachyourselfcs[1]. I haven't tried the resources, but the subject matter appears to cover standard undergrad BS in CS concepts.

The simplest answer is just to parity the math courses of a Berkeley / MIT / Stanford CS degree, although it will likely be a little overkill, especially if you intend to limit yourself to a strict subset of TYCS. For example, databases and networking generally require very different math prereqs than computer graphics or machine learning.

You will need a high school level of math (grammar school math, algebra, trigonometry, basic stats) to be able to program most things.

 _Discrete math_ is used heavily in many parts of CS (it is integral to understanding how to accurately negate programming expressions).

You should probably understand _calculus_ at a high level, although my experience with actual calculus usage in my career is zero.

 _Probabilities_ are used heavily in concepts like caching / performance, which will touch OS, arch, data structures, and likely others. For this, you should find a "statistics for engineers" type of course / book for undergrads, which may or may not make use of calculus to prove some of the statistical concepts.

 _Linear algebra_ is used heavily wherever graphics cards are used, so graphics, video, machine learning, etc. Linear algebra will likely have calculus as a prerequisite.

 _Modulo math_ is used heavily for cryptography and some data structures (hash tables). An undergrad will get a few days or weeks of this, and probably not an entire course.

 _Set theory_ and _graph theory_ are used sporadically. Networking, distributed systems, etc will make use of them.

Hope this helps.

[1] [https://teachyourselfcs.com/](https://teachyourselfcs.com/)

<comment><USER3> Thank you very much, this is exactly what I needed to know. (I had no idea about TYCS but I started learning through MIT's opencourseware and realised I strongly lacked in the math department.) This list is excellent, I'll definitely use it as my learning roadmap. Again thank you.</comment></comment>


Basic Category Theory - <AUTHOR> https://arxiv.org/abs/1612.09375v1 <comment><USER2> Hi, I'm the author. Thanks for your interest in my book!

I agree, the words "relatively little background" are too vague. What I had in mind was that the book requires little background _relative_ to many other introductions to category theory (such as the grand-daddy of them all, Mac Lane's _Categories for the Working Mathematician_ ). But I should have been more specific. If update the arXiv submission, I'll fix that.

As cokernel points out, the level of knowledge assumed is roughly what you'd get from an undergraduate mathematics degree at an ordinary university in Britain (and probably many other countries too). I know this because I used it several times to teach a master's course at the University of Glasgow. Probably the most famous master's-level category theory course is the one that Cambridge runs in its Part III (master's) programme, which I've also taught. But this book covers much less than the Cambridge course, and assumes less background too.

If you've taken either (i) enough algebra that you're comfortable with rings, groups and vector spaces, or (ii) any kind of topology course, then you should be able to understand enough of the examples that you can get a good grip on the general concepts. If you haven't, then it might not be the right book for you. As others have pointed out, Lawvere and Schanuel's book _Conceptual Mathematics_ assumes much less background than mine, and there are also texts oriented towards readers with a computer science background.

</comment><comment><USER3> For an even more _basic_ introduction I'd recommend starting with Lawvere and Schanuel's _Conceptual Mathematics: A First Introduction to Categories_. Requires less abstract algebra. If you have _some_ mathematical intuition then this is the book to start with.

I'm surprised he cites _Sets for Mathematics_ but doesn't include it in his further reading. If you have _some_ university level abstract algebra (groups, rings, vector spaces, topology) then _Sets_ is a quicker start and better reference guide for Category Theory. I started with this book before I had done any abstract algebra and I quickly got out of my depth. But when I did get more algebraic structures under my belt, I had quite a few aha! moments and referred back to this book quite frequently.

I haven't read Awodey's introductory Category Theory book so I can't comment there.

Speaking of Category Theory: Bill Lawvere is an interesting and exceptional 20th century mathematician who probably has less name recognition than he deserves. Lawvere's Wikipedia page: [https://en.wikipedia.org/wiki/William_Lawvere](https://en.wikipedia.org/wiki/William_Lawvere)

<comment><USER4> > For an even more basic introduction I'd recommend starting with Lawvere and > Schanuel's Conceptual Mathematics: A First Introduction to Categories. > Requires less abstract algebra. If you have some mathematical intuition then > this is the book to start with.

It's a great book! Don't forget to do the exercises. It starts off very easy but if you don't do the exercises all of a sudden you'll be lost.

<comment><USER5> This is generally good advice for all maths study, of course: "mathematics is not a spectator sport".

</comment></comment></comment><comment><USER6> The best intro I've ever seen is Bartosz Milewski's video series (intended mostly for coders): [https://www.youtube.com/playlist?list=PLbgaMIhjbmEnaH_LTkxLI...](https://www.youtube.com/playlist?list=PLbgaMIhjbmEnaH_LTkxLI7FMa2HsnawM_)

It assumes almost no prior math knowledge (okay, you should know what sets and functions are...).

<comment><USER7> Looks so promising. Haven't decided yet whether I'll view through these 15 whopping hours or study the written (massive-book-length) equivalent chapters on his blog..

Sizing this up, my real question now becomes: as an active day-to-day-life programmer, by how much exactly will this propel my work if I already know and use monads, basic function composition and Haskell?

I'm sure there's _some_ amount of skill/quality/productivity payoff if you evaluate this kind of time investment over the whole lifetime-of-work outstanding, but seems impossible to judge beforehand. Any, er, "testimonials" in terms of how this _actually_ changed work and coding for you or others, other than "just neat geeky theory to digest and reason about endlessly"?

It's just SO MUCH material to dive into (in terms of sources lectures books etc, I'm sure once grasped everyone could condense it into a single page, though fully comprehensible only to themselves, until for teaching others once again decompressed into 15-hours-of-lectures/26-chapters-totalling-book- length) and I'm still driven by this odd old urge to "just go pump out code and make programs _happen_ " back from my earliest Pascal/Basic days I suppose..

<comment><USER6> TBH, I don't feel my FP has improved much after learning why monads are monoids in the category of endufunctors. I did it for the math geek in me.

<comment><USER7> I suspected as much. Still gotta dig into all this more deeply _eventually_ , but given your anecdote it's probably fine to stretch this out over half a year, a weekend here, a train ride there, etc, rather than attacking it full- on

</comment></comment></comment></comment><comment><USER8> This is how you serve science. Thanks to Tom Leinster. "This electronic version is not only free; it is also freely editable. For instance, if you would like to teach a course using this book but some of the examples are unsuitable for your class, you can remove them or add your own. Similarly, if there is notation that you dislike, you can easily change it; or if you want to reformat the text for reading on a particular device, that is easy too."

</comment><comment><USER9> _" for readers with relatively little mathematical background."_

A well put together guide, but note that 'relatively little' here means you're OK with some abstract algebra, at least, as the second example of the _introduction_ begins: _This example involves rings, which in this book are always taken to have a multiplicative identity, called 1. Similarly, homomorphisms of rings are understood to preserve multiplicative identities._ ;-)

<comment><USER10> Why do mathematicians use phrases such as "relatively little mathematical background" or "introduction to.." when they assume previous knowledge? I find that really annoying and a turn off from reading most math textbooks that are suppose to be "introductions". Is there an actual good book on category theory for someone that didn't complete a math degree?

Additionally, what are applications of category theory to computer programming, or computer science in general? I find this really interesting from an outsiders view and want to learn it. I'm looking for a truly basic and gentle approach to learning category theory, without removing the rigor.

<comment><AUTHOR> You might be interested in "Algebra: Chapter 0" [http://amzn.to/2iYpAn5](http://amzn.to/2iYpAn5)

"The primary distinguishing feature of the book, compared to standard textbooks in algebra, is the early introduction of categories, used as a unifying theme in the presentation of the main topics."

<comment><USER10> Thanks, but is this another textbook that requires knowledge in abstract algebra prior to reading it, or make any sort of previous knowledge assumptions?

<comment><USER11> Having attempted to get through it myself(and having a math degree), I would strongly recommend against Algebra: Chapter 0 as an introductory text on either category theory or abstract algebra.

If you either already have a math degree, or if you're already at the point where you're ready to take an upper-level undergraduate math course, then it may be a decent book for you. Maybe. For example, if you're:

\- already very comfortable with linear algebra

\- possibly been exposed to a bit of topology in analysis class

\- already been exposed to abstract algebra a bit by a more theoretical approach to linear algebra (comfortable with proving things in linear algebra via vector spaces and fields)

Otherwise, I would absolutely steer clear of it. The writing style is also not terribly beginner-friendly, in my opinion.

The closest book I can think of to what you're asking for would be "Conceptual Mathematics: A First Introduction to Categories". Though obviously I don't know whether it's a good fit for your particular background and learning style.

</comment></comment></comment></comment></comment><comment><USER12> If I may ask, why is the HN community so interested in this particular topic? I studied Math and have basic understanding of Category Theory... could someone point me to a text relating Categories and... something related to computers? What am I missing?

<comment><USER13> Yeah, I also have a mathematics degree and don't really get the fascination that computer people have with category theory. I have never been particularly impressed with their claims of applicability. It seems to just complicate things for very little benefit. It's a pretty abstraction, but I don't see actual results from it. People use ugly, practical things like git, not beautiful categorical abstractions like pijul.

<comment><USER14> > Yeah, I also have a mathematics degree and don't really get the fascination > that computer people have with category theory.

This point seems to be repeated with every new mathematics.

> It's a pretty abstraction, but I don't see actual results from it.

It has applications in physics and is widely used in computation, particularly for reasoning about composition of programs with side effects. With respect, if you don't see any actual results, you haven't been looking.

<comment><USER15> > With respect, if you don't see any actual results, you haven't been looking.

With respect, if you think any category-theoretic results were necessary to author even 0.01% of the code executed in computation globally, you're willfully deluding yourself.

<comment><USER14> Good thing I never made that claim. I will however claim that, despite being unnecessary in principle, quite a bit more than 0.01% of code executed globally did make use of category theoretic abstractions because they are so useful (depending on how you measure this of course). Pretty much any program written for .NET and Scala makes use of monadic composition.

I will also claim that their use is only going to grow with Rust adoption and Java adopting lambdas and functional APIs.

<comment><USER15> > Good thing I never made that claim.

You said "It has applications in physics and is widely used in computation". Category theory is not widely used by those who program computers and thus produce computation in them.

> I will however claim that, despite being unnecessary in principle, quite a > bit more than 0.01% of code executed globally did make use of category > theoretic abstractions because they are so useful (depending on how you > measure this of course). Pretty much any program written for .NET and Scala > makes use of monadic composition.

And like clockwork, you provide the bog-standard argument for why knowing category theory is important: you point out how many people productively write software without knowing anything about category theory (or even abstract algebra).

Saying that people use category theory to write software without knowing it is like saying they use Maxwell's Laws to write software: so reductive it loses all relevance to productive conversation. That's bad, unless your goal is to make the conversation unproductive.

<comment><USER14> > Category theory is not widely used by those who program computers and thus > produce computation in them.

Computation is bigger than just programming in industry. "Computing" has always referred to the overall discipline of computer science.

> you point out how many people productively write software without knowing > anything about category theory (or even abstract algebra).

That wasn't my point at all. Read again. They can have _even more productivity_ if they used category theoretic abstractions.

> Saying that people use category theory to write software without knowing it > is like saying they use Maxwell's Laws to write software

Good thing that's not what I said either. You're making a habit of this.

People can understand a structure, in that they can grasp its semantics and its application, without knowing it's canonical name.

</comment></comment></comment></comment></comment></comment></comment><comment><USER5> This book also has the [backing of Peter Smith][1], who is basically the king of logic-related reading materials (logicmatters.net). I was part of a student reading group studying BCT last year with him, and I found it _extremely_ helpful in the context of people studying for the MMath. One of the most important parts of basic category theory is seeing how adjunctions, limits and universal properties play with each other; this book is about exactly that, and goes into it in a depth I haven't seen very well elsewhere.

[1]: [http://www.logicmatters.net/2017/01/02/tom-leinsters- basic-c...](http://www.logicmatters.net/2017/01/02/tom-leinsters-basic- category-theory/)

</comment><comment><USER16> If you genuinely don't know much maths, maybe Eugenia Cheng's "How to Bake Pi" also published as "Cakes, Custard and Category Theory"

I enjoyed it, it's not a text, there are no exercises. Popular overview of the subject, including a first half that mentions category theory only in passing.

Brave to even attempt such a book and I thought she pulled it off rather well. I hope we hear more from her and others mathematicians are similarly inspired.

</comment><comment><USER17> This article definitely assumes more knowledge than basic abstract algebra - there are also some key facts used from set theory assumed (i.e. In a proof, it is assumed to be known that if a compositiom of two maps is the identity map on one set, and the reverse composition is the identity on the other set, then the map is a bijection - it also assumes knowledge from abstract algebra that the composition of two homomorphisms is a homomorphism).

I have only looked in the first chapter, so I cannot speak further on that atm. That said, I appreciate that a text talks about the universal property - I did not encounter a definition of it in a text when in grad school. I only encountered it because lecturers at my grad program made sure to talk about it.

<comment><USER18> > In a proof, it is assumed to be known that if a compositiom of two maps is > the identity map on one set, and the reverse composition is the identity on > the other set,

This is something math and computer science students typically learn in the first two weeks in their mandatory math lectures at least at German universities

<comment><USER17> In the US, I don't think I saw it until a course in set theory, although it could get rolled up in a topology course.

<comment><USER18> I mean: It really makes sense to put it at the beginning since otherwise it's ugly to understand why a diffeomorphism is defined as it is:

You surely know that an isomorphism of sets (bijective function) has an inverse that is also an isomorphism of sets.

For differentiable functions a similar statement does not hold in general (just consider [-1,1] -> [-1,1]; x \mapsto x^3; its inverse is not differentiable everywhere on [-1,1]; so its inverse exists as an isomorphism of sets, but not as a differentiable function). Since diffeomorphisms for R^d are introduced in the 2nd semester for math students (typically in the context of the inverse function theorem), one better has already understood the basics before.

</comment></comment></comment></comment><comment><USER19> I enjoy "Make Category Theory Intuitive!" (2007), by Jocelyn Ireson-Paine

[http://www.j-paine.org/make_category_theory_intuitive.html](http://www.j-paine.org/make_category_theory_intuitive.html)

<comment><USER20> Like so much of category theory writing, it lacks examples. Seriously, point me to examples where category theory is actually useful outside of specific parts of mathematics, and I'd be very happy. By useful, I mean that it allows you to prove or understand something that would otherwise not have been proved (or is much more difficult to prove).

<comment><USER5> The point isn't so much proving new results, as showing how different results (that you thought looked similar but were distinct from each other) are actually exactly the same result in different settings. One of the things category theory does is tell you whether a result is "deeply meaningful" or not.

For example, I still don't know how the Segre embedding of projective varieties is constructed (my algebraic geometry lecturer laboured hard to try and impart that knowledge, with the result that I thought it was difficult and abstruse); but I now know that it's a product in an appropriate category, so while the construction may be really nontrivial, the object itself is just the same old product which I already know and love. I now know that the difficulty lay in showing that this object exists and has the required properties, rather than the object itself being in some deep moral sense "hard to understand".

</comment></comment></comment><comment><USER21> Mathematical Physics by Robert Geroch was recommended on the haskell subreddit a while ago: [https://www.amazon.com/Mathematical-Physics-Chicago- Lectures...](https://www.amazon.com/Mathematical-Physics-Chicago- Lectures/dp/0226288625/ref=sr_1_8?s=books&ie=UTF8&qid=1483449467&sr=1-8&keywords=mathematical+physics)

</comment><comment><USER22> Tom Leinster wrote some things about open sourcing the book here:

[https://golem.ph.utexas.edu/category/2017/01/basic_category_...](https://golem.ph.utexas.edu/category/2017/01/basic_category_theory_free_onl.html)

<comment><USER23> There "Category Theory in Context" book by Emily Riehl is also freely available at [https://golem.ph.utexas.edu/category/2016/11/category_theory...](https://golem.ph.utexas.edu/category/2016/11/category_theory_in_context.html) (I didn't read it yet)...

</comment></comment><comment><USER24> Yet another excellent resource that I found helpful (and fun) is a series of short lectures by _The Catsters_ : [https://www.youtube.com/user/TheCatsters](https://www.youtube.com/user/TheCatsters).

</comment><comment><USER25> After reading that, will I be able to write a hello world in Haskell?

<comment><USER5> No. It's not a Haskell book.

</comment></comment><comment><USER26> I lost interest in math after calculus, when it stopped being about results and more about abstract and complicated squiggles on the page . Elliptic functions are interesting because it seems calculus-like (such as elliptic integrals and the theta series) but this weird set/category theory stuff just doesn't do it for me.

<comment><USER5> "Stopped being about results"? I think you're referring to the building-up of the vocabulary required to attain results. As an analogy, you learnt to count (1,2,3,4,…), but then when addition and multiplication were introduced, it "stopped being about numbers, and more about abstract and complicated operations on numbers". Yes, fine, but addition and multiplication open the gateway to the study of the primes, from which most of the results of number theory follow.

<comment><USER27> I'd say addition and multiplication are more important than prime numbers, or number theory, for that matter.</comment></comment></comment>


Finding Ticketbleed - <AUTHOR> https://blog.filippo.io/finding-ticketbleed/ <comment><USER2> This is pretty big. Heartbleed was exactly this but with the heartbeat extension instead of the session ticket extension, and with OpenSSL instead of F5's TLS implementation.

<comment><USER3> > _... a vulnerability ... of certain F5 products_

I.e. this being "big" depends on whether you have "certain F5 products" in your setup.

<comment><USER2> same with OpenSSL really.

</comment></comment></comment><comment><USER4> Only thing it wonder is why would you 'test' for the bug with only 1 byte of memory leaked? False negatives would be a lot smaller if you reversed it and send a 1-byte session id and have 31 bytes to test.

He says "By picking 31 bytes I ensured the sensitive information leakage would be negligible." but if you don't save/inspect other than verifying it's not 31x0, I don't see the problem?

<comment><USER5> The session ID isn't encrypted and that means that a passive observer can intercept the test traffic and gain information. Filippo decided to protect against that possibility.

<comment><USER6> And by so doing, protect himself (as I'm sure you're already aware).

Never underestimate the ability of a company to suddenly invoke the CFAA in the USA (equivalent laws are available elsewhere). IANAL

In this case, I'd like to publicly applaud F5 for being so cool about it. Kudos, F5!

</comment></comment></comment><comment><USER7> How much fallout will F5 really see from this bug though?

<comment><USER8> Little to none, but I think this story was actually genuinely cool to read for some reason. I still can't put my finger on it.

<comment><USER5> I found it cool also and ultimately I'm Filippo's boss. The fun part is that he found this by accident while debugging a customer problem and he worked quietly with F5 to disclose (so quietly I found out about this a couple of days ago).

Also Filippo does a good job of telling the story in his blog post. I don't get the "fallout for F5" part. A bug was found, a vendor informed, everyone worked together in a responsible manner. Happiness!

<comment><USER9> That really was a well written article. I know almost nothing about F5, TLS, Go, etc... and I had no trouble understanding the bug. Very educational. The man deserves a beer.

<comment><USER5> I'll tell him.</comment></comment></comment></comment></comment>


Show HN: Call your senators & representatives with one number (1-844-USA-0234) - <AUTHOR> http://www.ianww.com/blog/2016/06/15/call-your-congressperson-with-one-phone-number-1-844-usa-4522/ <comment><USER2> This is a really great project!

I assume that you run this on Twilio (or a Twilio-like service). I'd be a bit wary about an advocacy organization getting ahold of this and running up your Twilio bill. Do you have any plans to open source the code behind this?

</comment><comment><USER3> Neat concept, great cause!

How's the location resolved? Then how you resolve the location to a district?

<comment><USER2> It asks for your zip code once you call.</comment></comment>


Is there a way to run Netflix on Linux? - <AUTHOR>

<comment><AUTHOR> The Google is saying no go on DVD decoding (and presumably Blueray) and Chrome OS. [https://productforums.google.com/forum/#!topic/chromebook- ce...](https://productforums.google.com/forum/#!topic/chromebook- central/tlp7YblR69I)

Handling optical is one reason I haven't just used a Roku as the playing device.

There's got to be a way in other Linux if Chrome OS can do it. I've tried fooling with browser identification already.

</comment><comment><USER2> just works in 37+ official build of google chrome

<comment><AUTHOR> Ok, that's Linux but I'd want desktop apps too. Well, maybe not. If I can run media player (DLNA) apps maybe I'm ok. Is there a way to access the optical drive (play blueray and dvd)? What about server side stuff? I don't know chrome well. Is there a dpkg repository? Will it run well in a VM and play Netflix?

<comment><USER2> I'm not sure if it works from the international space station, but with a link from the dark side of the moon maybe the question can be extended to include all aspects of life

<comment><USER3> I have to hand it to you selkin, you took that in stride. Kudos! :)</comment></comment></comment></comment>


New Lego Mindstorms Robot Inventor - <AUTHOR> https://www.lego.com/en-us/aboutus/news/2020/june/lego-mindstorms-robot-inventor/ <comment><USER2> I genuinely can't wait for the kids in my family to be old enough to expose them to this ( I will admit that it will be a great excuse for me to play with it as well ).

<comment><USER3> That was my thought with my step-son.

Nope. He wants to play fortnite and football and nothing else matters - can't get him interested in it - thought I had him with a remote control plane but nope.

The worst part is he is very bright but very lazy - he kills his homework and then has no intellectual curiosity at all and I've tried lots of things to see if he likes any of them.

Now I just play fortnite with him and let him do his own thing til he shows an interest in anything.

<comment><USER4> Hehe, I have a son like that too, he'll be 13 this year and I'm happy to say there has been a small increase in intellectual curiosity in the last six months or so. OTOH I also have a daughter who'll soon be 10 and she has the _opposite_ problem, she's curious about _everything_ (for instance she self- studies Japanese because she loves robots and sushi and wants to go to Japan and just the other day she learned the location of all 50 US states, just because, and we're not even Americans) but it also means she never really dives deeply into anything. So intellectual curiosity is good but it's not enough. These days I try to teach her grit, so she will stick to something even when it becomes a bit boring...

Anyway, with my son I've found that when I include him and let him help with things I do around the house, like carpentering, he's much more interested than if I try something more "artificial" for lack of a better word. It's as he wants to do "real" things, because nothing beats a computer game when it comes to not being real.

<comment><USER5> Be ecstatic with the curiosity and self-learning. Those are the skills that have served me well in life. Having a wide range of interests and never being a master in one is fine. The ability to teach herself a wide range of topics will open many doors.

<comment><USER6> More to the point, I believe the ability to foster _connections_ between a wide variety of topics & ways of knowing will open many doors. Singular focus is not the unique path to success, aggregating knowledge and wielding it coherently (even if tenuously) is also quite potent.

Consider every stereotypical intellectual TED talk you've seen, chances are it either goes deep on one idea or develops its uniqueness by combining ideas that create a new adjacency.

Granted the "jack of all trades, master of none" phenomenon is real but it's still predicated on mastery of singular topics being the target. Breadth combined with sufficient depth to be dangerous, as well as the ability to communicate clearly, enables people to organize and align disparate ideas that people can rally behind. Every skilled product manager, marketer, and executive needs to be able to cross over from their core expertise, and general curiosity and the ability to dive into many things at once is fundamental to those sorts of successes.

</comment></comment></comment></comment></comment><comment><USER7> I have great memories of building and programming things in my OG Lego Mindstorms. I consider the day when I started building things from my imagination rather than from the instructions book to be the start of my career as a programmer.

It's expensive, but if you have children with interests in technical things this set is one of the most fun and productive things you can buy.

<comment><USER8> That definitely piqued my interest as well - I distinctly remember getting comfortable with the drag and drop programming interface, and wanting to write real "code" for it, but struggling to figure out how.

<comment><USER7> It's not just the programming. You also get hands-on experience with gears, including unintuitive ones like the one-way spirally thing.

I was never taught these kind of things anywhere else.

</comment></comment></comment><comment><USER9> The scratch and python support are very welcome additions. my father still has the EV2 laying around here in the house even tho no one has played with it in the past 2 years.

<comment><USER10> I have 2 "robots" I bought last year to try to get my daughter (7) into coding.

One of them is Dash, from Wonder Workshop. The other is a Jimu BuzzBot from UBTECH.

It's incredible how fast the novelty of these wears off.

The BuzzBox we used it exactly once. Dash has seen a lot more action, but only because there are several apps with different ways of using them (One of them is a Scratch based app) and my daughter likes to use it as an RC car, plus some other fun things like sound recording.

Anything that doesn't have an open way to program them, in my opinion, are not more than rather complex toys, that do not give more entertaining that a box of Legos (As a matter of fact, I think there are not that many toys that can give as much fun and entertainment as a box of Legos - unless there's fire involved).

<comment><USER11> You can, theoretically, attach any lego block you want to a lego mindstorms robot since they have the usual connectors you would see on lego blocks or bionics.

While the mindstorms block coding is different to scratch or makecode, I find it pretty easy to do anything I want with it. And there is plenty of example code on the internet for those looking for something useful.

</comment></comment></comment><comment><USER12> I'd be curious to know how this will stack up against the EV3 system. It's also interesting that they include 4 motors, ultrasonic and color sensors, but no touch sensor.

EDIT: other interesting notes: the motors have absolute positioning, and the stuff uses new connectors.

<comment><USER13> > No force sensor?

> Dan: Yep that's correct. We had it early on in our product exploration, we > found we used it very little in the play. It was something we were weighing > up; should we have an extra motor or should we have a fourth sensor? And > very very quickly we said we'd much rather have four motors in the set, than > a fourth sensor, because we could use the tap of the hub or the buttons on > the hub. We often use the color sensor as a button as well, because it's > very good at detecting a finger and a touch.

There's an interesting interview with the product designers over at New Elementary: [http://www.newelementary.com/2020/06/lego- mindstorms-51515-r...](http://www.newelementary.com/2020/06/lego- mindstorms-51515-robot-inventor.html)

</comment></comment><comment><USER14> Does anyone else find the studless beams and associated pieces much more difficult to build with than the old (very old as in Robotics Invention System) beams and pieces with studs? This was my second year coaching an FLL team. The kids seem to have difficulty building the things they need, and I don't blame them. One has to think in multiple dimensions at once. With the studs, you think vertically up or horizontal at once.

<comment><USER15> The design grammar is different. But I find it easier, because you don't have to deal with the 4-4-5 assymetrc geometry.

That said, finding the connector that re-orients holes the way you need can ne a challenge. I have a collection of all the technic connectors and spend a fair amount of time trying multiple prototypes.

So I guess overall it is much easier to get a robust structure, but it can take some time to get there.

<comment><USER14> The assymetric geometry brings back memories. Trying to tie a stack of bricks together with a "girder" vertical across connected with the pegs!

I guess there's upsides and down. I think what bugs me is each brick before was more variable. You could build a corner if you needed to. Agreed not nearly as structurally sound thoughm

</comment></comment></comment><comment><USER16> When I used to coach my daughters' FIRST Lego League team, I think I had more fun than the kids in my team. This new version of the brick and electronics promises to be really interesting.

</comment><comment><USER17> We have the EV3 (31313) and this is a very interesting development. The PoweredUp vs EV3 connectors is not reassuring. At the moment I have PoweredUp, PowerFunctions, and EV3 motors. None are interchangeable. But if it looks like they are retiring PF and EV3, RJ11, for PoweredUp across the entire brand that is reassuring.

<comment><USER5> The choice to switch to a permanent wire with a propriety connector bothers me a lot though.

</comment></comment><comment><USER18> It's awesome that they have Python as an option out of the box. Kids bringing their lego creations to life is a great way to introduce programming.

I remember using LeJOS to run Java applications on my RCX back in the day. Had to figure out how to install and use Cygwin on the family computer. Kids these days have it so easy ;)

</comment><comment><USER19> This is awesome. We are big fans of WeDo and First Lego League. We might need to ask Santa to bring this early. For the kids, of course.

</comment><comment><USER20> I don't have kids and I still want this!

<comment><USER21> Do it!

</comment></comment><comment><USER22> The EV3 can run Linux which allows interesting stuff. I've written a Prolog API which we used in University AI teaching (interleaving planning and action). I was hoping to write a purescript API but we lost funding.

I wonder how limited or versatile the new system will be.

</comment><comment><USER11> I have helped run one-off workshops for children to use EV3 mindstorms robots. Having also run similar workshops with other robots, the EV3's seem to generate the best response from the children. One simply needs to make a maze out of tape show some basic instructions for how to program the EV3 motors and the children will enthusiastically go about getting the EV3 to run the maze. I have also helped students build some more complicated robots for a robotic musical orchestra which was really fun, and a task the EV3 robots are well suited for. These are great robots, I only wish they were a little more affordable for poorer schools.

</comment><comment><USER12> I can't understate how much I love the Mindstorms sets. It's almost a perfect learning toy - it's straightforward to get started (following the instructions and building the robots) and you can easily graduate to getting creative and building other robots and programming them to do whatever.

I still remember discovering how gear reductions work while playing with the original mindstorms set at age ~11. I had to explain this to high-school kids in FIRST Tech Challenge a couple years ago, they had never worked with gears before.

</comment><comment><USER23> The IMO most amazing EV3 project (that you could even build with one set) was the Mindcuber, a Rubik's Cube solver. The robot would first scan the colors and then start solving.

On a birthday party there was an 8 year old who could solve 3x3 Rubik's Cube, so the other kids wanted to see him compete against the robot. You can only imagine the cheer when the kid won by a slight margin.

</comment><comment><USER24> Motors with absolute positioning .. wondering if you could make a 2D pen plotter with this setup, guess I'll have to buy one and find out.

<comment><USER25> If you need some inspiration from 30 years ago :-) [http://www.technicopedia.com/8094.html](http://www.technicopedia.com/8094.html)

Edit: My brother owns that set, I am a few years younger and got to play with all his LEGO. Great times.

<comment><USER26> I hqve one of these sets too (plus other technic from the same era) it's still functional. Fond memories.

</comment></comment></comment><comment><USER27> Lego Technic in general and Mindstorms in particular are outstanding ways to introduce kids (and grownups) to engineering.

</comment><comment><USER28> We bought an Anki Cozmo when they were heavily discounted following the announcement that the company was stopping operations. It's been great. This looks like a step up!

</comment><comment><USER29> The first generation of Lego Mindstorms were such a game changer for me, introduced me to programming while keeping it simple enough that I could figure it out by myself.

</comment><comment><USER30> A great way to teach kids that inventing things is expensive!

<comment><USER11> If you want something cheap you can check out the Edison robots [0] or the micro:bit plus accessories [1]. I have played with both, and they are quite easy to use and make things with. The micro:bit is probably the better option since it is cheaper to start with and can be extended in more directions. There is a large ecosystem of first and third-party add-ons one can buy for the micro:bit to do pretty much anything a child might be interested in.

0\. [https://meetedison.com/](https://meetedison.com/) 1\. [https://www.microbit.org/](https://www.microbit.org/)

</comment></comment><comment><USER31> My first thought is this might decrease the resale value of the prior version! Does anything hold value like these things? Incredible.

</comment><comment><USER32> Nice set! Lego seems to be a company that truly has undergone a successful "digital transformation"

<comment><USER15> Well, as far as digital transformation— you sre seeing the result of twenty years of experiments and false starts, with the occasional winner. I think The Lego Group recognizes the importance, and is likely frustrated by how little traction they have gotten for the effort expended. That said, they keep trying.

</comment></comment><comment><USER33> Any idea about the price?

<comment><USER13> US $359.99 | UK £329.99 | EU €359.99

</comment></comment><comment><USER34> Would you recommend this over the EV3?

</comment><comment><USER35> Where to buy?

<comment><USER36> From the article: "...the LEGO MINDSTORMS Robot Inventor will be available in Autumn 2020 from LEGO.com, LEGO Retail Stores and retailers globally."

</comment></comment><comment><USER37> I found a detailed article, published a few days ago:

[https://www.hispabrickmagazine.com/content/2020/06/12/the- ne...](https://www.hispabrickmagazine.com/content/2020/06/12/the-new- mindstorms-is-here/)

For people invested in the Mindstorms EV3 platform this iteration is probably a bit of a disappointment. For targetting parents desperate to get their kids into STEM so that they won't be poor (I jest), this is probably good positioning/design/branding by the Lego Group.

<comment><AUTHOR> > Although the use of Powered Up connectors on the new MINDSTORMS was to be > expected, this means a break with previous platforms and NXT/EV3 hardware > cannot be used directly together with this new version of MINDSTORMS.

Yes, it's not surprising, but still a pity. Lots of Mindstorms EV3 sensors are going to collect dust now (the Technic bricks will still be used, of course).

</comment></comment><comment><USER38> I always thought these were rediculously overpriced for what they do. LEGO certainly aims at state-sponsored educational institutes to pay huge $ for their plastic crap with few motors and microcontrollers, not private people trying to buy an interesting and educational toy for their kids. Pehaps there are people here from this industry - why there are no affordable robotics kits these days? Are there any patents involved? Or the market is just too small for anyone to care? I always thought that some sorts of meccano based kit with an MCU board & unified sensor/motor fixtures (preferrably even 3d-printable!) would be a total massive success.

<comment><USER39> There are TONS of cheaper robotics kits. None of them are as durable/reliable as LEGO.

<comment><USER38> they are not versatile and universal (i.e. a kit to build one particular hexapod or line-follower, not a kit for do it anything). Are all universal kit systems (meccano, lego) patented?

<comment><USER39> Lego's robotics stuff might be patented but their core brick isn't anymore. However the generic replacements like Mega Bloks just don't snap together nearly as well as LEGO. For a toddler making a little garden out of a few blocks it's fine, but you can easily make a vertical Duplo stack that's 3 times taller than the maximum stack you can make with Mega Bloks, and that kind of structural integrity becomes very important in robotics.

<comment><USER40> You should look into Chinese brands such as Lepin. Their quality is so good that they get fakes of their own!

<comment><USER41> [https://geekspin.co/lego-lepin-fake-toys/](https://geekspin.co/lego-lepin- fake-toys/)</comment></comment></comment></comment></comment></comment>


Source of the famous "Now you have two problems" quote (2006) - <AUTHOR> http://regex.info/blog/2006-09-15/247 <comment><USER2> There's actually a little more to the story than that. On 2007-01-09, I wrote to David Tilbrook:

        Hi David .. I came across a web page
        (http://regex.info/blog/2006-09-15/247) investigating the source of the
        following quotation:

            "Whenever faced with a problem, some people say `Lets use _____.'
            Now, they have two problems."

        The author of the site seems to have gone through a lot of trouble to
        hunt down the original author of the quote. The best he was able to do
        was discover a Usenet sig from 1988 attributed to "D. Tilbrook."

        I was wondering if this was you -- if so, I think you should contact the
        author to set the record straight. His post was recently linked from the
        news aggregator site Reddit, at
        http://programming.reddit.com/info/xlov/comments and quite a few people
        have been reading the story and discussing the quote.

He wrote back:

        I can lay claim to being the author, but I cannot remember when or where
        I first used it.

        Zalman Stern worked for me at CMU so may have quoted me, hence the
        attribution to him.

        Actually one of the funnier incidents regarding my "famous" quotes was:

            "Software is the only business in which adding extra lanes to the
            Golden Gate bridge would be called maintenance" -- David Tilbrook -
            circa 1981

        I was at a meeting when the speaker used this quote and attributed it to
        David Parnas -- I was appropriately indignant.

        -- david

        P.S.: Do we know each other?

The answer to his postscript was no. :)

And he later replied again to add:

        By the way, I think I coined the phrase at a European conference in
        Dublin circa 1985.

        I was talking about the difficulty maintaining portable software when
        supposedly "standard" tools (e.g., awk(1)) differed from system to
        system.

        Then later someone pointed out to me that it was appearing in various
        signature lines which I suppose led to its being spread.

I forwarded it all to Jeffrey Friedl (the author of the linked post), but I guess he figured the comments already did a good job covering the story, or maybe he wanted to get explicit permission from David to repost the emails but never got it. But I think David's reply is interesting and compuhistoric enough that I don't want it to die in my GMail archives -- and so I'm posting it again here.

</comment><comment><USER3> I have found holes in google's newsgroup archives previously. It surprises me because it should be such a small amount of data in today's terms. It has enough historical significance that you'd think they'd care for it better given their mission to organize the world's data and make it universally accessible.

<comment><USER4> A few points, it's a hard problem, google has put a lot of effort into solving some of it, and it may not be fixable completely.

To start off with, usenet is ancient, much older than the web. Second, archives have never been ubiquitous, expecially in earlier eras. The storage media, e.g. tape, were troublesome and expensive, so most people didn't care. The records we do have back then are from a small number of individual archives (e.g. Henry Spencer's). It wasn't until much later that deja news starting archiving usenet routinely, and even then there can be gaps due to failed delivery. Also, it's possible for individuals to opt out of archiving by setting the x-noarchive header or by contacting google. The result is a swiss cheese record that won't get better unless we magically find new archives and/or decide to violate people's privacy.

<comment><USER3> It is odd because I feel like I have gone looking for older pre-1999 posts that used to exist in Google and they are no longer there. I had just assumed that support for pre-2000 was dropped.

</comment></comment></comment><comment><USER5> "You have a problem and decide to use threads. have two Now problems. you"

<comment><USER6> Some people, when confronted with a problem, think, 'I know, I'll use floating point arithmetic'. Now they have 2.000000000000000000001 problems.

</comment></comment><comment><USER7> It's a shame that regular expressions are so often associated with Perl, as though they're a single topic. It's like speaking of astronomy and astrology in the same breath.

<comment><USER8> "so often"? Really? That must be a rather particular age bracket, as newer programmers probably don't know Perl at all (apart from its reputation), and the old Unix-heads know that Perl itself didn't really invent them (or basically anything, as Larry Wall would be the first to admit).

Sure, "Perl compatible" is a pretty common moniker (as in e.g. the "PCRE" library), as the POSIX (or original grep/sed) implementations are a bit anemic.

And I don't think any of them deserves to be compared with astrology, but don't particularly care to get into that argument again. About as worthless as vim/emacs/IDE discussions.

<comment><USER7> > "so often"? Really?

The relationship with Perl was a point made in the linked article. I personally don't use Perl any more, but I certainly use regular expressions.

> And I don't think any of them deserves to be compared with astrology ...

No, that wasn't meant as an analogy, just an example of contrasting entities that are sometimes confused.

> About as worthless as vim/emacs/IDE discussions.

Complete agreement.

</comment></comment></comment><comment><USER9> Interesting quote by Zawinski in the comments:

        Third: obviously I got Kelly's joke about "streams of
        bytes", uh, that's why I quoted it. It's funny, and it
        makes the point (which I fully agree with) that the
        decades-old Unix "pipe" model is just plain dumb,
        because it forces you to think of everything as
        serializable text, even things that are fundamentally
        not text, or that are not sensibly serializable.

</comment><comment><USER10> I like the backhanded comment jwz pays Perl in the comments. To paraphrase: "Perl; it's not as bad as sed."

Could really apply to everything. "Php; It's not as bad as Perl" ( _maybe_ ). "Java; It's not as bad as C++", etc.

Thinkgeek, are you listening? Would make an awesome geek coffeecup/T-shirt set.

<comment><USER11> > _"Php; It's not as bad as Perl"_

PHP is not _as_ bad as Perl, it's worse.

<comment><USER12> That depends on which version of PHP you're comparing with which version of Perl.

Both have their strong points, both have their weak points.

</comment></comment></comment><comment><USER13> Today's relevant xkcd: <http://xkcd.com/1171/>

</comment><comment><USER14> Perhaps it's just me, but I find surreal how discussions on the internet 16 years ago were pretty much as they are today.

<comment><USER15> [http://www.pompeiana.org/resources/ancient/graffiti%20from%2...](http://www.pompeiana.org/resources/ancient/graffiti%20from%20pompeii.htm)

It's translations of Roman graffiti found in Pompeii. If you're surprised human nature hasn't changed in 16 years, prepare to be flabbergasted. :)

<comment><USER16> _On April 19th, I made bread_

I guess Twitter was pretty much the same back then, too.

</comment></comment></comment><comment><USER17> Slight tangent: Anyone interested in the substance of the post should also read Russ Cox's "Regular Expression Matching Can Be Simple And Fast" for why Friedl is wrong:

<http://swtch.com/~rsc/regexp/regexp1.html>

<comment><USER18> That was a fun paper to skim, thanks for the link. Gonna peek at the other links in the Summary section at the bottom.

</comment></comment><comment><USER19> ...and now I understand today's XKCD [0] - I'd never heard this quote 'til today either. All is right with the world again :)

[0] - <http://xkcd.com/1171/>

<comment><USER20> In future similar situations, the xkcd individual thread forum may help:

<http://forums.xkcd.com/viewforum.php?f=7>

<comment><USER21> ...or this wiki:

<http://www.explainxkcd.com/wiki/index.php>

</comment></comment></comment><comment><USER22> Some people, when confronted with a problem, think "I know, I'll quote Jamie Zawinski." Now they have two problems.

Attributed to Mark Pilgrim in a comment at <http://shreevatsa.wordpress.com/2009/06/23/who-said-that/>

</comment><comment><USER23> Great article, thanks to the author for chasing down and cataloguing another entertaining and fine piece of geek lore.

</comment><comment><USER24> That broken link in the article is working fine for me. Did Google repair the issues with the Deja News archive?

</comment><comment><USER25> Funny, I found myself referencing jwz when I called Wayland a CADT-compliant approach to the problems with X.</comment>