-Wfatal-errors is my friend
-Wfatal-errors is my friend
I see a lot of strange takes around here, and honestly cannot understand where you are coming from. Like really: I’ve written several 100+ page documents with everything from basic tables, figures and equations, to various custom-formatted environments and programmatically generated sections, and I’ve never encountered even a third of these formatting issues people are talking about.
You literally just \documentclass[whatever]{my doc type}, \usepackage{stuff} and fire away. To be honest, I’ve seen some absolutely horrifying preambles and unnecessary style sheets, and feel the need to ask: How are you people making latex so hard?
Software is a tool. I develop stuff that i know is of interest to companies working with everything from nuclear energy to hydrogen electrolysis and CO2 storage. I honestly believe I can make a positive contribution to the world by releasing that software under a permissive licence such that companies can freely integrate it into their proprietary production code.
I’m also very aware that the exact same software is of interest to the petroleum industry and weapons manufacturers, and that I enable them by releasing it under a permissive licence.
The way I see it, withholding a tool that can help do a lot of good because it can also be used for bad things just doesn’t make much sense. If everybody thinks that way, how can we have positive progress? I don’t think I can think of any more or less fundamental technology that can’t be used for both. The same chemical process that has saved millions from starvation by introducing synthetic fertiliser has taken millions of lives by creating more and better explosives. If you ask those that were bombed, they would probably say they wish it was never invented, while if you ask those that were saved from the brink of starvation they likely praise the heavens for the technology. Today, that same chemical process is a promising candidate for developing zero-emission shipping.
I guess my point is this: For any sufficiently fundamental technology, it is impossible to foresee the uses it may have in the future. Withholding it because it may cause bad stuff is just holding technological development back, lively preventing just as much good as bad. I choose to focus on the positive impact my work can have.
You are aware that what Israel is doing in Gaza is comparable to the nazi treatment of e.g. the Warsaw ghettos… right?
Take a step back, and look at the Israeli soldiers mocking Palestinian dead, mistreating the wounded and captured, and shooting at clearly unarmed civilians for fun. All this while they brag about it on video. Look at that and tell me that it doesn’t give you a sick feeling to your stomach of the type you haven’t had since you saw photos of concentration camps.
There are dozens of children that have literally STARVED TO DEATH in Gaza because of Israel’s actions. They’re dying the same deaths that Jews were put through in concentration camps. Don’t you see the horrifying irony in this?
Israel is at a point where humanitarian workers from recognised international organisations have been targeted and killed, and they brush it off as a “mistake”.
I cannot think about anything in the past 70 years that compares to what Israel is doing, and I hope beyond hope that some force will smite their government and armed forces such that the slaughter will stop. Because it is a slaughter. It’s not a war when Israel is counting its dead on its fingers, while there are enough missing Palestinians in the rubble to fill a football stadium. It’s just Israel wilfully bombing, burning and slaughtering, with nobody stopping them.
All this, and you have the fucking audacity to talk about antisemitism? Take a look at the world, and ask yourself how calling for an end to this can have anything to do with the religious beliefs of the perpetrators.
Israel recognised Palestinian civilian and security control of the West bank in the Oslo accords from the 90’s. They are blatantly shitting on their own promises whenever a genocidic occupier or their enabling security forces set foot on the West Bank without express permission from the Palestinian West Bank government.
You are almost on point here, but seem to be missing the primary point of my work. I work as a researcher at a university, doing more-or-less fundamental research on topics that are relevant to industry.
As I wrote: We develop our libraries for in-house use, and release the to the public because we know that they are valuable to the industry. If what I do is to be considered “industry subsidies”, then all of higher education is industry subsidies. (You could make the argument that spending taxpayer money to educate skilled workers is effectively subsidising industry).
We respond to issues that are related either to bugs that we need to fix for our own use, or features that we ourselves want. We don’t spend time implementing features others want unless they give us funding for some project that we need to implement it for.
In short: I don’t work for industry, I work in research and education, and the libraries my group develops happen to be of interest to the industry. Most of my co-workers do not publish their code anywhere, because they aren’t interested in spending the time required to turn hacky academic code into a usable library. I do, because I’ve noticed how much time it saves me and my team in the long run to have production-quality libraries that we can build on.
You’re not seeing the whole picture: I’m paid by the government to do research, and in doing that research my group develops several libraries that can benefit not only other research groups, but also industry. We license these libraries under MIT, because otherwise industry would be far more hesitant to integrate our libraries with their proprietary production code.
I’m also an idealist of sorts. The way I see it, I’m developing publicly funded code that can be used by anyone, no strings attached, to boost productivity and make the world a better place. The fact that this gives us publicity and incentivises the industry to collaborate with us is just a plus. Calling it a self-imposed unpaid internship, when I’m literally hired full time to develop this and just happen to have the freedom to be able to give it out for free, is missing the mark.
Also, we develop these libraries primarily for our own in-house use, and see the adoption of the libraries by others as a great way to uncover flaws and improve robustness. Others creating closed-source derivatives does not harm us or anyone else in any way as far as I can see.
I do exactly this: Write code/frameworks that are used in academic research, which is useful to industry. Once we publish an article, we publish our models open-source under the MIT license. That is because companies that want to use it can then embed our models into their proprietary software, with essentially no strings attached. This gives them an incentive to support our research in terms of collaborative projects, because they see that our research results in stuff they can use.
If we had used the GPL, our main collaborators would probably not have been interested.
This is starting to be some years back, but I was exclusively using apt when I was using Ubuntu, have they gone away from that?
I’ve only ever tried one distro. Please enlighten me on what’s wrong with Ubuntu.
Check out the actual statistics on what women and men choose an occupations when both people-related and non-people-related jobs are otherwise equal. There’s quite a bit of evidence that men and women tend to prefer occupations in one or the other category.
Honestly, looking at how different men and women are physically, it is slightly absurd to assume that they are identical psychologically (i.e. have the exact same preference regarding people-oriented vs. technical occupations).
I am very fond of the idea of “stateless” code, which may seem strange coming from a person that likes OOP. When I say “stateless”, I am really referring to the fact that no class method should ever have any side-effect. Either it is an explicit set
method, or it shouldn’t affect the output from other methods of the object. Objects should be used as convenient ways of storing/manipulating data in predictable/readable ways.
I’ve seen way too much code where a class has methods which will only work"as expected" if certain other methods have been called first.
Sounds reasonable to me: With what I’ve written I don’t think I’ve ever been in a situation like the one you describe, with an algorithm split over several classes. I feel like a major point of OOP is that I can package the data and the methods that operate on it, in a single encapsulated package.
Whenever I’ve written in C, I’ve just ended up passing a bunch of structs and function pointers around, basically ending up doing “C with classes” all over again…
I would argue that there are very definitely cases where operator overloading can make code more clear: Specifically when you are working with some custom data type for which different mathematical operations are well defined.
This makes sense to me, thanks! I primarily use Python, C++ and some Fortran, so my typical programs / libraries aren’t really “pure” OOP in that sense.
What I write is mostly various mathematical models, so as a rule of thumb, I’ll write a class to represent some model, which holds the model parameters and methods to operate on them. If I write generic functions (root solver, integration algorithm, etc.) those won’t be classes, because why would they be?
It sounds to me like the issue here arises more from an “everything is a nail” type of problem than anything else.
Oh, thanks then! I’ve heard people shred on OOP regularly, saying that it’s full of foot-canons, and while I’ve never understood where they’re coming from, I definitely agree that there are tasks that are best solved with a functional approach.
Can someone please enlighten me on what makes inheritance, polymorphism, an operator overloading so bad? I use the all regularly, and have yet to experience the foot cannons I have heard so much about.
I’ve never thought of myself as a conspiracy theorist, but if jar-jar being planned to be the actual phantom menace, but later being taken out of the role because fans hated him counts as a conspiracy theory: Count me in! I think the arguments are compelling to say the least.
I definitely roll with “badass tiny mf”, “chill little dude”, “tiny gangsta bro” or any other title making fun of my stature. Call me anything involving “king” and I’ll be inclined to convince you that, even though I’m short, you’ll be shorter once you’re confined to a wheelchair
You may be joking, in which case: Fair game.
If not… come on. In what world do you write “(…) I’ll find you. Mark my words.” In that kind of context without being (at least humorously) threatening?