skysight-inc/HackerNews huggingface dataset:
Here's a 2015 discussion on the topic, linked to M-Pesa's Wikipedia page: https://news.ycombinator.com/item?id=10612723

M-Pesa – a mobile-phone based money transfer and microfinancing service: https://en.wikipedia.org/wiki/M-Pesa

70 points by melenaboija on Nov 23, 2015 | 37 comments

Top comment:

mhogomchungu on Nov 23, 2015

Tanzanian here.

I think calling the service "M-Pesa" is misleading since a lot of other people are offering the same service.

Here in Tanzania,

"M-Pesa" is the name for the service offered by vodafone,a mobile communications company.

"Tigo Pesa" is the name for the same service offered by tigo,a mobile communication company.

"Airtel money" is the name for the same service offered by airtel,a mobile communication company.

"EzyPesa" is the name for the same service offered by zantel,a mobile communication company.

For the above reasons,i generally call the service offered by these companies as "a banking service managed by mobile phone companies".

"Sim banking" is the name of the service offered by a "traditional" bank called crdb[1] so a more generalized name that accommodates both traditional banks and cellular network operator banks is in need.

Most traditional banks are also offering the same service.

The only thing they all have in common from the user's perspective is that the services are offered through ussd codes[1] meaning they are not tied to mobile phones and they work with any device that supports ussd codes.

I have an application called ussd-gui[4][3] that i use to manage by money at vodafone "bank" using a mobile broadband modem on my linux system.

[1] http://crdbbank.com/tz/alternative-banking/simbanking.html

[2] https://en.wikipedia.org/wiki/Unstructured_Supplementary_Ser....

[3] https://github.com/mhogomchungu/ussd-gui/blob/master/icons/u....

[4] https://github.com/mhogomchungu/ussd-gui
> Want to use a relational database? You don't need to install a library

Well, it depends. On Linux you may need to install a package like php7.3-mysql, depending on what was installed as a part of the initial setup.
what's surprising about discord's privacy policy? it seems pretty straightforward.

we can push open source alternatives all you want but the truth is that these alternatives don't do a good enough job with the most valuable part of social networks: building the network. yes, word of mouth is a big part of growth, but the developers also need to put in work. discord didn't simply blow up because early adopters told their friends and so on, as much as we want to think that to be the case.
You'd think that until you try them with tables that contain empty cells that you still need recognized or tables that span multiple pages. I wouldn't say this has been solved for a decade.
I prefer \newcommand{\intd}{\,\mathrm{d}} to separate it a little.
Same here. Google is scarily good at giving me local results, but for general web searches, DDG is almost always more accurate.
Google almost always takes my very specific query and stretches it too far, so the results are actually for something a lot more commonly searched for. I see this a lot with programming-related searches where I'm looking for a very specific problem and Google just gives me general tutorials on the topic while DDG usually has the correct SO answer in the answer card and all the other results are more relevant too.
I would say mattermost and/or mumble. Each has it's strengths and weaknesses, and neither completely fills the discord role, but I think as soon as mattermost has a murmur integration it will be the place to be. Also irc is totally underrated.
Startup elevator pitch: We will do for search what Google did for search. (Joking, just use DDG)
Honestly what is the point of user-agent at all if it needs to be set to some changing, magical incantation in order for a browser (or any other agent) to be functional?

I hate the direction the internet and tech is going, and I hate even more that I'm seemingly powerless to do anything about it
In my opinion, for full sized keyboards the RealForce 104UW is as good as it gets. I use the 88 key variant and it's a joy to type on, is extremely well built and very heavy.

https://www.keyboardco.com/keyboard/usa-topre-realforce-104u...
Even with mediocre routing Steam Remote Play beats these times by being 3x faster while also moving more Mbit. (~40 ms, 25 Mbit.)

The limitation on speed there was the ISPs insane peering scheme - Orange Poland is a dinosaur so everything cross network (that does not pay their scalper peering rates) got routed out of country and back.
Because the parameters demand the same type (and for the return value), but the supplied parameters are not the same type because the only way to get that is to pass in exactly the same instance of the closure.

It's a fun little thing, and a good example of why impl Trait in argument position is a really nice addition to Rust, even though based on what we were originally excited about (impl Trait in return position for returning Iterators and other such things), the argument position form didn't seem so important.
echelon did not claim to be someone who takes a principled stand on global poverty, health, or factory farming.

https://en.wikipedia.org/wiki/Straw_man

Meanwhile, Apple says:

> Privacy is a fundamental human right. At Apple, it’s also one of our core values. Your devices are important to so many parts of your life. What you share from those experiences, and who you share it with, should be up to you. We design Apple products to protect your privacy and give you control over your information. It’s not always easy. But that’s the kind of innovation we believe in.

https://www.apple.com/privacy/

When Apple markets themselves this way, people expect their actions to be in line with their words. Making iCloud device backups vulnerable to law enforcement demands is not in line with Apple's privacy-oriented marketing, and suggests that Apple's vocal defense of encryption is just a public relations strategy.
Scratch is right now my 6yo's favorite toy. It beats the Lego robot because you don't have to worry about having the right parts and you can concentrate on the "fun parts," that is programming.

What really amazes me was how different the progression looked from what I was expecting. The move from "the dinosaur moves and that is fun" to fully fleshed mini games took me by surprise. No linearity there.

What I really appreciate about Scratch is how you can use the system without having to understand big parts of it. For example, one of the most complicated parts is the sprite editor (which does both vector and raster graphics). However, there's a huge library of sprites, so it's not a problem. You'll only have to learn the editor when your ambitions grow and you want custom sprites.

Another curious thing is that Scratch encourages concurrent code right off the bat (every script runs in their own thread). My son is coming up with rather elegant patterns which are nevertheless quite different from my intuition, like controlling the sprite's horizontal and vertical movement in separate scripts – which actually gives you easier to understand code.

Finally, there's a social aspect – discovering programs written by other kids and analyzing their code, and remixing them for your own projects. My son is a great fan of "Kimberly from Canada" who did a lot of "cook your own pizza" type of games, which have been a big inspiration.
Collaborative calendars for social media content
I'm have been working on this web-application to help digital marketing agencies create social-media calendars for their clients. Integrations will first include Instagram, Facebook & Twitter. Think of it as Invision for calendars.

Currently, most work is done on spreadsheets with this flow:
1) Copywriter comes up with the social-media scripts, puts them on a spreadsheet.
2) Designer produces images that match the scripts.
3) Copywriter places the matching images next to the scripts ("compiling").

The spreadsheet (could be multiple copies) is then sent to the client for approval - This is where most time is lost due to the back-and-forth between the client and the team during the approval process and where the most number of mistakes happen due to multiple spreadsheets.

Problems I'm solving:
1) Eliminate the mistakes that occur between matching the scripts and the images once the client gives feedback
2) Provide a central place to track and review the calendars instead of using emails and multiple spreadsheets
3) Minimise the time for approval of social-media posts

Questions:
1) Do you see the value of such an application in your business?
2) What much would you pay for a monthly subscription as a business owner?
3) Does a mobile/tablet app make sense in addition to the web-app?
It doesn't. And I totally understand from a business point of view why they do what they do. This is an unfortunate side effect of the monopoly they have on web search, which due to network effects and aggregation is unlikely to go away.

The only real solution is to regulate this to make competition fairer again.
Or, maybe they just care a lot less about privacy than you do. I'm certainly not poor but I'd happily save a couple dollars per shopping trip in exchange for the supermarket having more details on my shopping habits, and the majority of people I know act similarly. Just because you feel very strongly about something, doesn't mean other people are wrong because they don't care so much about it. Is it so hard to imagine that some people might actually be happy to give up a bit of purchasing information in exchange for paying less for things?

It seems like the height of arrogance to demand that people not be allowed to do something without even asking them how they feel about doing it. Or maybe you don't need to ask them, because you know better than them?
At this point I have moved to another search tool as my baseline.

I also use hoogle a lot for work so I'm used to switching search tool.
Just a quick precision, if I'm not mistaken: this project is not decoding the (version, architecture dependent) WAL stream as it seems to be implied by https://news.ycombinator.com/item?id=22114603 But it rather uses logical decoding with the pgoutput plugin (which was introduced in Postgres 10, so I'm guessing it doesn't support out of the box earlier versions). This approach makes total sense, though.

Apart from that, reading the documentation I don't see how app.supabase will interface with my source database. Does it need to be open for connections from supabase, or is supabase also a database hosting service, or an agent is installed alongside the source database?
Definitely British. Vodafone started the same service in Fiji, where they call it MPaisa (paisa meaning money in Hindi). A competing service by rival Digicel is called Mobile Money.
>Now I just use print statements and read code to figure out what’s going on.

So, instead of using tool created with debugging in mind, you prefer to edit code in order to achieve "tool that helps you debug"?

what you do if you want to check what's the result of e.g "array[9]"? you write printf(array[9]) instead of use evaluate expression at runtime?

I see no point in that
...or you could just show a little respect for other people’s experience and opinions ;)
I like it. If you want, you can make local encrypted backup. If you are lazy (and lots of terrorists and drug dealers probably are) you just flip the iCloud switch on at the first prompt. :) I have read that airport security is also not 100% effective but it is enough for these kinds of problematic people.
The difference is that java’s “uris for import” is nothing more than a namespacing convention to avoid conflicts. A url in go is the actual place where `go get` will go retrieve the dependency, and the directory it’ll live at.
Previous discussion https://news.ycombinator.com/item?id=22093787
I think akvadrako above[1] has it right, they appeared on my mobile phone on sync, as they are bookmarks.

Again, I think, I'm not sure ;)

[1] https://news.ycombinator.com/item?id=22115461
Literals and Type Inference in Swift
But then, that is the question : which language is that? C# and Java are not it. C and C++ have excellent dev tools and debuggers, though it's true package management is essentially non - existent. Python, JavaScript and TypeScrpit have better tools than Go, even with the limitations of a dynamic language (the package ecosystem of npm is horrible, but npm itself is a pretty decent tool, definitely much simpler than go mod).
PLOS ONE’s fee is $1,595. A factor of 3 doesn’t seem inexplainable to me. That’s “Springer Nature Blood Cancer Journal”, so factors of 1½ in “better editing”, “older, less efficient systems” and “fewer publications/year, so lower efficiency of scale” could already do it.

Also, is Nature working on digitizing old content? That can be costly (I remember reading somewhere that it could involve a) finding a library that has a copy and b) flying there to photograph it) and that’s a cost PLOS won’t ever have.
Essential Programming – Control Structures
Growth is the first derivative, not the second.
and "copy link" actually works as it should on DDG - it does not become a google link.
Setting Up a Private Matrix Server
Dvorak is one meme, Alpha is another.

To use both, you must embrace the meme: https://imgur.com/a/JElSvkS
Rusts tooling is pretty stellar.
I tried managing them, but I've settled on deleting anything over a year old. There are a lot of interesting things out there, but the opportunity cost is high.
It's quite clear how you can rationalize it:

* to advance your career you need to publish in certain specific journals

* 5 grand is a reasonable amount of money to advance your career

therefore:

* it is reasonable to pay 5 grands to publish on such a journal
Tokenization Is Hard
Yep, with running as an absolute beginner, you really want to start slowly, both in terms of tempo and in terms of distance. The key is regularity and persistence.

By running slowly a lot, your body has time to learn how to run efficiently and safely simply by trial and error. By not overdoing it, you give your body time to recover from any errors made during the "trials", without injury.

Incidentally, lot of slow running is also a great way to build up base endurance, so it is not wasted time, and you will "recoup the investment" later, when you start running longer distances.

Shin splints suck, though. Even experienced runners get them from time to time. Probably best to switch it up a bit, include swimming or bicycle instead of some runs every now and then.
> to preserve the rather abstract notion of their privacy.

Not to mention that unless you're paying in gold coins, your credit/debit processor will sell all your payment flow, anyways.
> Someone has to find a suitable reviewer, which can be a bit time-consuming task [1], write to reviewers, just do all the coordination.

This is done by the Program Chairs of the conference who are professors at universities. ACM doesn't do or pay anything for it.
I signed up for a kroger account online with a fake number and information. Instead of a phone number they just asked for an alternative id, which of course they highly suggested being a phone number. No problems so far.

(Slight pro tip, just enter in the stores phone number as an alt id - very good chance they'll have it registered)

But you're right, they're just going to track you some other way.
>Please try investing in Free, Open Source alternatives first.

I did. I put a lot of effort into staying as FOSS as possible. Discord is the thing that got me to compromise this, by being so incredibly good.
This is an oft repeated misconception, their results come from multiple sources. (ddg user since ~2013, and there were times when they did heavily favor yandex or bing usually, but these days the sources are much more varied, and they also have their own crawler called duckbot I think)
Rust was inspired by Ruby's Gemfile.

Python is starting to make strides with Poetry but generally packaging Python is an exercise in pain.
"I would like you to do a favor though.." - right when the congress approved aid was blocked seems damning. Context is everything.
There's open tax solver, which helps with computing the numbers that go on the 1040. It doesn't do any of the handholding turbo tax does, but it's handy for doing tax simulations.
I pointed this out 11 months ago:

https://news.ycombinator.com/item?id=19122206
With platforms like these the choice isn't really up to the supplier, but to the consumer. The consumers come to expect those value-adds and so the suppliers have to switch to the platform (where the revenue share is opaque to the consumer) to get gigs.

The 20% cut also does sound rather extreme, but if you build a very good product where you can end up charging even more than the usual price, the 20% isn't taken away completely from the supplier, and might end up more like a 10% actual cut.
You can just download the go tarball and go from there. Technically you don’t need to install Go, you don’t need environmental variables set etc.

But I do get your point. You are absolutely right that go doesn’t hand hold you through that process and thus a thousand different people have a thousand different methods for doing it.
Not every codebase you are working with (or would be working with) has unit tests.

Sometimes you’ll inherit such a project from a dev who left and you would be begging for a debugger.

Otherwise failing that, then the rewrite begins... Debuggers save us that effort in such a codebase.
Do you compare it with C# AOT compilation?
If this pans out to be true, it wouldn't be a shock given that they went along with PRISM. If you want e2e privacy, use Signal. You don't use Skype, Apple Messaging/Facetime (maybe), Telegram, TikTok, Periscope, Facebook Messaging, Google Hangouts, WhatsApp or other new/random/ubiquitous app because you don't know who they're buying giving, selling data or getting hacked by.

PS: Has anyone used FireChat in a crowd scenario without internet? There's no privacy and Bluetooth MAC is identifiable obviously, but it circumvents turning off mobile and internet.
Speaking from experience: there are a ton of bots that don't set UA and use whatever their request library sets.
> most GC gives no guarantees that memory will immediately be cleaned up once the last reference goes out of scope

But in this example the last reference hasn't gone out of scope, the last reference is in the closure. If the GC ignored closures and acted as if last reference had gone out of scope then there's a chance that that variable would be cleaned up before the closure gets called, which would make closures completely useless.
> for all other languages i know of, there is quite a process to get started

It's funny that you included javascript in the list when you can literally just type javascript code in an html <script> tag and open it in the browser that comes with your OS.

You quip at flask for requiring "command line experience" then talk about PHP's built-in web server that's also a command line tool.

And let's be realistic, if you're using php without a package manager, you're either no doing anything serious or you're reinventing the wheel, and you will need to get comfortable with the command-line sooner or later anyway.

I will say that PHP is probably the the most frictionless server-side web-development language to get started with, but it's not by a huge margin.

And considering that in web-dev you're gonna need to learn javascript anyway, I'd probably consider it to be the best introductory language.
Quite possible but in that case I usually treat the website with scepticism. There are plenty of "fake it till you make it" type of products out there, and no screenshots or photographs on the site is a big signal for problem in my opinion.

Getting new screenshots doesn't seem very work intensive plus you can easily put screenshots of an earlier version and a disclaimer that the screenshots may not be fully up to date.
True SMS is not a protection against government but telegram supports the second factor which is password in their case.
Insecticides becoming more toxic to honey bees
The problem is that the field themselves can contain quotes ('"'), which escapes the comma. So the standard FS=/-f doesn't work properly.

It looks like FPAT from your linked article is for gawk. Gawk is great, but it's not everywhere. Still - it's good to know. Thanks!
PHP uses composer as a package manager, which is quite simple to use and very easy to install (it's a phar archive, basically an executable zip file). And frameworks like Laravel can be installed with a single composer command. This is still very little setup to come to the same point.
Well, except the other cloud service will also give it to the FBI.
In China, you see foreign people on billboards and TV ads all the time, especially ads of luxury products. Chinese people, deep down, don't really trust Chinese.

Having foreign people to side with Ms. Meng is a tactic to buy credibility to make her look innocent and just. The nature is no different than other white monkey jobs (I don't have any racist intention) in China.
It did work very well for me, at least for a typical search. Ctrl+T, <type search in already focused textbox>, Enter, Down arrow a few times, Enter.

There is a lot of value to me in this, the user, but actually negative to google: you can't really justify inserting ads into keyboard navigation, can you.
Parsing the flatfile of Swiss-Prot in detail is the best way to lose your sanity ;) I know because that is part of my day job.

It's gotten better but I highly recommend you either use the RDF or XML. The flatfile looks easy but is an endless source of bugs and urgent changes.
I wonder how the validation of correspondence between the actual plane (with the unknown/unreleased MCAS related mods) and the simulator behaviour is performed, i.e. who (Boeing, the simulator manufacturers, the FAA, experienced test pilots) actually does what and - ultimately - which kind of "stamp" attests that the simulator is a valid representation of the plane behaviour (and how much time is it needed to perform this step).
In that case, an IP or IP block throttling is good enough.

Except then there are those pesky CGNATs to handle including Chinese Great Wall.

Anyway, high profile spammers will emulate enough of the browser to render any measure based on browser anomaly detection worthless. Including using a headless browser.
The only way to defeat them would be too put some quite computationally intensive JS operation... (On par with mining, ruining all the laptops, phones and tablets. But you can make it not trigger every time.)
This would make spamming expensive.

Server-side we have excellent AI spam filters that nobody seems to be using to fire off a captcha check later. The big problem here is that you cannot offload to some provider without inviting big privacy concerns. (Same problem as forum/chat/discussion platform providers.)
Go is poor language with toxic team and toxic community.
Why silly? It is in fact a bookmark - just a parametrized one. :)
A great write-up. Two interesting points:

1) No Ansible. No Kubernetes, nor containerisation. Starting on a single server/vm and controlling deploys with a bash script.

2) An interesting take on microservices: "One server, one service... 2-3k of code can hardly be called a monolith.... if two pieces of information are dependent on each other, they should belong to a single server."

As a (mainly) backend dev who does like devops and microservices, I agree on both points.

KISS - there's no need to start off with over-complicating everything for no reason. When there's a need for Ansible, introduce it at that point. When you think you need microservices, think about it a lot and move to them if you really do require them.

But certainly don't start off using a full Ansible + Kubernetes + Docker + microservices stack. You'll spend all your time managing these, and relatively little time actually being productive.
Yeah, but not all organisms use the same translation. https://www.ncbi.nlm.nih.gov/Taxonomy/taxonomyhome.html/inde...

So an unnamed function without argument might easily give the wrong thing.