12,042 karma · joined October 18, 2009
We are a nice bunch. If you are stuck in Norway in a less than ideal job and you are a friendly person who knows any of the above as well as enough Norwegian to communicate effectively with Norwegians at work, shoot me a mail.
Writing I think is funny:
- http://erik.itland.no/courses-id-like-to-teach
- http://erik.itland.no/simplified-and-more-precise-privacy-policies-for-big-companies
- https://erik.itland.no/tag:aifails (Less funny. I wish stuff just worked.)
Stuff others upvote on various sites:
- http://erik.itland.no/what-did-google-get-right (About Google+)
- http://erik.itland.no/are-you-making-a-chrome-application-or-a-web-application
Tell HN: I think (2017-02-22) that user data should be treated in much the same way as nuclear raw materials. I would suggest considering a User Data Non-Proliferation Treaty along the lines of https://en.m.wikipedia.org/wiki/Treaty_on_the_Non-Proliferation_of_Nuclear_Weapons
I am a:
Sysadmin that prefer nix but have worked for years with a big, widely distributed, safety critical Windows system as well.
Programmer
* Java, Java EE, Quarkus, Spring Boot
* C#, Asp.Net MVC
* Client side Javascript (TypeScript now)
I don't do graphic design.I'm happily working for a Norwegian company.
You can reach me at erik.itland_at_gmail.com
I’ve left out which side is which, because I think it works both ways.
- everyday bugs, just put a breakpoint
- rare cases: add logging
By definition a rare case probably will rarely show up in my dev environment if it shows up at all, so the only way to find them is to add logging and look at the logs next time someone reports that same bug after the logging was added.
Something tells me your debugger is really hard to use, because otherwise why would you voluntarily choose to add and remove logging instead of just activating the debugger?
I'm happy with my iPhone, but it still has a week or so shorter battery life than even a relatively cheap Nokia phone and with all that available space I know something it could be used for.
Looking back, I’m increasingly glad I became an early adopter - Kagi has proven to be as much of an improvement over Google as Google once was over its older rivals.
One of the few things Google+ actually got right (admittedly after a good deal of pressure from the community) was the ability to set up simple one-way pseudonyms. It meant you could talk about business or mental health without it being forever chained to your real name.
Also, why shouldn’t I be able to choose which language I use in Excel when they’re clearly all available?
Why do software companies these days insist on treating me as though I can’t look after myself?
Yes, Excel is probably a lot better if you use English setup and advanced functions.
For me,
- not having to use Norwegian for formulas (my work machine has Norwegian setup and Excel insists on using Norwegian formulas)
and
- not having it trying to find something it can misinterpret as a date, preferably some random place in a list of thousands of items
makes it worth it.
And with the cynicism out of the way, what an insightful and refreshing article!
Haven't read a Wired article in months :-|
And thanks to poster for adding archive link.
Here the wolf is clearly visible.
That said, I read the rest of the recital and I think it is rather clear to the degree that such things can be clear that if you didn't expect it, it isn't legal. Here are some quotes:
- "[...]provided that the interests or the fundamental rights and freedoms of the data subject are not overriding, taking into consideration the reasonable expectations of data subjects based on their relationship with the controller."
- "At any rate the existence of a legitimate interest would need careful assessment including whether a data subject can reasonably expect at the time and in the context of the collection of the personal data that processing for that purpose may take place."
I can assure you the even after reading this, if I have clicked "necessary only" (as this discussion started with) it is not my reasonable expectation that any data are stored except those that are strictly necessary for the navigation and the user visible features[1] of the site works.
I'll admit that it seems some people think there is an argument that can me made that online ads can be direct marketing, but I would not risk any of my savings to defend that claim in court and I don't think Facebook or Google want to help you either as they seem to trying their best to prevent people from targeting individuals or at least pretending they do. And if it does, it is still covered by the conditions above.
[1]: and yes, that means user features, so unless you are creating an online ad-collection of some kind, that probably does not mean ads
I think you'll find that GDPR says the opposite and the only reason this continues to happen is because authorities don't have enough resources to go after every at the same time and also because European authorities have a hard time against US companies.
So many of the things I start looking into starts with a search in a single tab and then every link I ctrl-click during the process ends up in a tree underneath it (yes, I use Tree Style Tabs).
This has a few benefits:
- I can easily see things in context
- when I end up on a particularly useful (or useless) page I can easily see what page linked me there
- I can read the root pages and follow links from every one of them without losing track (the root page is usually a kagi search)
- when I am finished I can either export the whole tree as a nested markdown list (yes, there is a nice TST extension that allows me that, and yes, you read that correctly, it is an extension to an extension) or just close it.
The sales pitch was that they could upload documents to SharePoint and when people downloaded the documents SharePoint would automatically apply DRM so the documents could only be opened by that person on authorised machines for a specified number of days.
Well, it turned out depending on how you logged in (using the same account, just different login forms) on the SharePoint server it would either give you the files with DRM applied - or the completely unrestricted files.
We got some senior Microsoft consultant working directly for Microsoft to look at it but in the end they were just as confused as us.
But as I remember it, the misery was systematic—from the moment we started booking to the moment we left the final airport. At every step, Ryanair seemed to go out of their way to make things unpleasant—unless, of course, we paid an extra £15 here, £20 there, and so on—for each passenger, and for every inconvenience it seemed they’d quite clearly engineered.
Only for it to be collected at the gate and put in the hold anyway, meaning we had to wait for it after all. At least they forgot to charge me for the inconvenience, which given the rest of my experience could almost have been considered a mistake from their side.
Then there was the return journey: the boarding pass couldn’t be printed until just a few hours before departure, by which time getting access to a printer was tricky. But, as with all things Ryanair, there was of course an option to pay and make the problem go away. Out of sheer stubbornness, I found a workaround. If I factor in the time spent, it probably cost me more—but by that point, I was so utterly fed up with their relentless upselling that I refused to give them another penny.
And finally, during a layover before the last leg of our journey, we ended up sat in a grounded aircraft in full sun for 2–3 hours, with small children onboard and barely any information before we could leave the plane. While we waited, another passenger collapsed from what I understood to be severe hypoglycaemia, at which point people started calling out for anything sugary.
As far as I remember (this was over a decade ago and I had three young kids with me a few rows back), the person was helped thanks to another passenger who recognised what was going on and acted quickly—not because of any intervention from the crew.
If you can avoid Ryanair, do. I’ve no issue with trading comfort for a lower fare—but Ryanair doesn’t feel like a cheaper flight because they’ve cut costs. It feels like they’ve gone out of their way to invent new ways to make life miserable, just so they can charge you for relief.
> Malcolm C. Smith, a control engineering professor at the University of Cambridge, first introduced inerters in a 2002 paper.[1] Smith extended the analogy between electrical and mechanical networks (the mobility analogy). He observed that the analogy was incomplete, since it was missing a mechanical device playing the same role as an electrical capacitor. The analogy makes mass the analog of capacitance, but the capacitor representing a mass always has one terminal connected to ground potential. In a real electrical network, capacitors can be connected between any two arbitrary potentials, they are not limited to ground. Noticing this, Smith set about finding a mechanical device that was a true analog of a capacitor. He found that he could construct such a device using gears and flywheels, one of several possible methods.
- yes not end-to-end encrypted by default
- but I haven't seen any complaints about their end-to-end encryption, except that it isn't enabled by default
- and unlike WhatsApp they publish reproducible builds so we can know the endpoints do what the source code says
Since then, I’ve mostly worked with React, which is blissfully productive and unexciting in the best way possible as long as we prevent people from pulling in CV-padding material like Redux.
Over the past few years, I’ve been hired into places where I’m once again upgrading codebases written in AngularJS (yep, it still exists), Elm, and jQuery. Everything gets rewritten to React, and after that we can hire people right out of school to maintain it (as long as we keep the CV-padding libraries out of it).
I guess this is a long-winded way of saying: even if you’ve been lucky enough to work in a place where people made good technical decisions years ago, and work in a place that treat their devs well enough that someone who still remembers how it works cares to work there —not everyone’s that lucky.
Which IMO shows that is already possible to do this and and it has been for a while already.
Unfortunately, I’m a bit concerned it may have gone downhill since. It used to have dedicated full-time staff behind it, but now that it’s been handed over to the Apache Foundation, I suspect the budgets are tighter than they were under Oracle.
Perhaps it’s different elsewhere, but here in Norway I’ve seen Kotlin used quite extensively in large backend codebases. It also comes up frequently in job postings—employers seem to actively ask for it when hiring.
Why? Two main reasons:
- On the projects I tend to work on, IntelliJ has a habit of breaking its internal configuration a few times a year—not just for me, but for my colleagues as well. When it does, it can take the better part of a day to sort out. Often I end up getting frustrated, deleting anything not under version control, reimporting the project, and end up having to reconfigure all the database connections and other bits manually.
- I also just prefer the more straightforward feel of NetBeans and VSCode. It’s a bit like my old car: less automation, fewer clever electronics. Sure, the new one is objectively better in many ways—but the old one was easier to get out of the snow, and it rarely surprised me.
As much as I love Kotlin and have a great deal of respect for JetBrains, I’ve always preferred the other Java IDEs over IntelliJ. The fact that choosing Kotlin—which I genuinely do prefer—effectively locks you into IntelliJ for the foreseeable future has been one of the main reasons I’ve hesitated to recommend it unreservedly for every project.
Just to be clear: I think IntelliJ and the rest of JetBrains’ tools are excellent and absolutely worth the price. I simply happen to prefer the alternatives—and they happen to be free. That said, I realise this is very much a personal preference, and one that most others don’t seem to share.
- a tendency to proselytise
- a stubborn unwillingness to genuinely engage with opposing views
- the use of memes and in-jokes as if they were profound arguments
- an almost reverential attitude toward certain past figures
There’s more, but I really ought to get on with work.