Endianness, Credentials, PSD2, Hosting, Boring Stack = Happiness, Version Control
Post date: Jan 22, 2017 9:59:18 AM
- Had to read one annoying old binary format. Enjoyed tuning with endianness. World is so full of all kind of strange joys.
- Never ending discussions is using globally available services with default credentials is a good idea. Yes, you would think this is some kind of joke, but it isn't. It's business as usual.
- It seems that more and more Finnish sites and services are hosted on UpCloud. I don't wonder that at all. They provide great bang for buck. If you just look at basic stats and monthly fees, those might seem bit expensive. But when you compare practical performance, the cost ratio is also great. As we all know, VPS performance can be really flaky on many service providers. With UpCloud you don't get into that trouble at all. It's just rock solid performance.
- Studied EU's PSD2 FAQ document - It's awesome that banks are forced to provide common APIs. It has been traditionally painful to deal with banks, because each bank had it's own standards. At least in this sense EU has been getting lot of good things done. For POS vendors this is highly beneficial thing. We used to have direct access to banks, but since PCI-DSS we've lost it. New direct payments and third party payment service providers (TPPs, PISP, AISP, XS2A) will allow access again. Payment Initiation Services have been very popular in Finland for a long time. kw: SEPA, fintech, digital banking, open bank, open data, my data, direct payments, Payments Services Directive 2, AIS, PIS, Strong Customer Authentication (SCA), European Banking AUthority (EBA). - All this will also bring the basic question up again which I've been always wondering. Many organizations alway seem to think that payment = credit card payment. I've been like, "Why? what's the point of always dealing with credit card which adds extra costs." Many mobile payments platforms are just digital extensions of existing credit cards which is kind of funny.
- Scaleway - is adding new data center(s). That's nice. So you can have multiple availability zones with one provider. Yet I usually prefer using independent providers. Trusting everything on single provider doesn't mitigate all risks. Yet funnily their routes from Helsinki to Amsterdam loop via Paris. That doesn't make sense at all. Bad bad routing.
- Ceph performance issues finally resolved. A few wrong values in configuration caused all the pain. But it took quite a while to realize what was behind that latency. That's all it takes to make system 200x slower than what it's supposed and expected to be. Average read speed for cold data remains still at around 15 MB/s as well as average I/O latency is around 40 ms. Which is quite much. Reason for the problems was configuration which caused hot spots and lead to extreme latencies on some I/O requests.
- Nice post IPv6 Performance Revisited - Nothing to add. I'm sure some of the problems will be solved when IPv6 will be mainstream.
- Firefox Quantum engine - Nice. Finally. I've been annoyed by slow sluggish and hanging Firefox for a long time. Wide use of Rust, nice. See Quantum Wiki.
- Happiness is a boring stack - That's funny, but something I completely agree about. Yes, I haven't included all the latest junk in my project. As well as I don't use 10 different shared, high, performance, cluster, queue, storage, distributed projects with it. I just make really boring and simple stack and only add something new if I really have to. Each new added technology will just make everything more complex, harder to maintain, and there's considerable learning curve where you just end up causing more trouble than solving it. That being said. business critical applications are best being kept really boring. And that's awesome! If you love having 'interesting problems' which will bring the production system down every now and then, or cause extreme performance degradation. Go for it. But I just really happen to like boring, aka working systems.
- It's very important to have version control for all kind of stuff. But even more important it's for important stuff, like credentials repository. I had incident where credentials were lost from latest version for unknown reason. Had to restore old version and fetch part of the credentials back. Phew, that could have been a very bad day. But proper version control managed to save me.