Subsentient
I can say that I'm a very good firmware engineer with a lot of experience tinkering with Linux and know most of the C language by heart. Currently doing contract work but looking for a more permanent position.
I have a lot of experience in audio/video, access control, extensive multithreading, and low-level networking (BSD sockets)
Your unethical behavior and abuse of the DMCA will be used to punish you. If you succeed in getting ClownStrike taken down, you will be hated even more.
Have fun annihilating your brand, reputation, and customer/industry trust and goodwill.
The United States is falling apart, and it is no longer capable of solving its own problems. Now, inertia keeps legacy systems functioning, until fascism and/or balkanization a-la USSR takes over.
Visceral disgust reaction.
Yet, there's this piece inside me that tells me that "the only way out, is through".
Sometimes, like tonight, I do know what I want for myself. It's impossible, but it's my greatest desire for my life.
I want to be "uplifted". I want my brain capacity to be expanded by orders of magnitude. I want to understand, I want to comprehend, I want to see it all and fully understand the shape and implications of all things in my sight. I want to be more than a human mind. I want to be far, far wiser. It's not power I want. It's knowledge. It's understanding.
There's a lot of money in suffering, and if you think there aren't people sick enough out there to do real horrible shit to protect that income stream, you're kidding yourself.
How do you think this fucked up civilization was twisted into the giant pulsating tumor it currently is?
SQLite is more than good enough for an awful lot of things. Most of the time that I do see software using MariaDB etc, I think to myself "they didn't need a server model for this, SQLite would have been fine".
Ask HN: Where to report sites that circumvent autoplay blocking?
I use Firefox, but apparently CNN can circumvent my autoplay blocking. I'd like to kick up some trouble to punish them for trying to circumvent it at all, and hopefully get Firefox to release a workaround for their workaround.
If you need full raw pointers with aliasing mutable pointers, the fact that fn drop() takes a &mut T is a problem that can only currently be worked around with fugly hacks, like nesting your data type in another pointless structure, not to mention the giant pile of ambiguous UB that you risk whenever pointers and references interact that could so easily be avoided if Rust would just implement an -fno-strict-aliasing switch, but the devs refuse on what appears to be ideological grounds. The result is that for unsafe Rust, you get about the safety level of C much of the time, because RAII and many language facilities are not safe to use. Unsafe Rust is currently so dangerous that I feel much safer reaching for C++ for some of it. Mutable reference uniqueness, I think, should be enforced by the borrow checker and NOT by pain of inescapable possible undefined behavior at the assembler level.
Now for C++.
C++ is lacking a LOT of useful safety features that Rust comes with baked in, such as Mutexes owning their data, the borrow checker, a good, fast atomic reference counting type, and things that translate to more safety indirectly, like algebraic enums, assignable and movable arrays, tuples built into the language, etc. Generics in Rust, however, are significantly more painful to write due to the lack of duck typing. Perhaps the Rust devs felt that duck typing was too "dangerous" for templates, but because they're statically evaluated, these issues almost never materialize, and so in practice duck typed templates are almost always superior to Rust's generics.
C++ is definitely more mature and pragmatic as a language, but Rust is probably better for systems programming overall, at least if they fix their goddamn unsafe UB stuff.
As for move semantics, that book isn't for "what you MUST do to keep things semi-safe!" though it contains some stuff to that effect. It's more about optimization and tricks from what I can see. Move semantics take a little while to wrap your head around, but once you know the basics of C++'s move semantics, you can pretty much figure out what's going to happen by looking at a class' definition briefly.
I don't hate OOP. I don't love it either. I tend to write my code in a mix of procedural and diet-OOP paradigms. It tends to produce less state, less inter-dependencies, and doesn't require abandoning stuff like mutable state.
Why do I want mutable state so bad? Because it's the easiest, least abstracted solution to the problem much of the time, and closer to what the compiler will actually want to generate.
I think trying hard to stick to a single paradigm is folly. I like mixing and matching according to the task I'm attempting to accomplish, and I have a firm conviction that my code benefits from this ideology. Encapsulation I do value, but not as a "hard no". I use access specifiers to tell you "you probably don't want to mess with the guts of this thing, it can take care of itself better than you can."
As for inheritance, I don't use it very often. I like how C++ has no base "Object" class. A lot of the time I'm basically writing structs with methods, and I think that's often the right approach.
People/Environment -- If I hate the people I'm working with, I'm not going to stick around long. I've quit jobs for that reason before, and I would do it again. I have a low tolerance for assholes. For example, worked for a vending machine OEM that shall not be named. Boss was filthy rich and said "oh we'll pay for you to go out here to X!" and then had me ride a fucking Greyhound. I should have bailed right then and there, but I gave it a try, since I was young and fairly new to actually getting paid for my work. Guy had a new secretary every other week, and they always looked like they were one sharp comment away from swan-diving into a wood chipper. I've never seen office workers with that much terror in their eyes and voices before. Needless to say, I didn't stay with him long. Paid well, but getting technical specs, tools, and the data I needed for projects was like pulling teeth from a methed-out rhinoceros, and that proved to be the last straw. I remember once I was told to my horror and disbelief that they had literally completely lost core technical specs that I needed for the project, then they wanted to know why work was progressing slowly. At that point I just quit. Tried to ship his equipment back to him but the cheap motherfucker wouldn't even pay for the shipping, then just stopped talking to me when I asked him to. Guess he didn't care about the vending machine parts. Ironically they were worth more than the shipping, and totally worthless to me.
Integrity -- I look for a company that isn't actively making the world a worse place. I don't mind boring code, as long as I can write it well and be proud of what I've created at the end of the day. What I do mind, however, is predatory practices, unethical dark patterns, and user-hostile design and terms of service. If I think you're Facebook 2 Electric Boogaloo, I won't apply in the first place. If I think you're the "good guys" however, you'll have undying loyalty. *Sidenote: Sickens me to hear that so many of my fellow developers are willing to worsen the world for an extra zero on their check.*
Technology -- You must be asking me to use a language/toolkit/etc that won't make me want to blow my brains out every day at 5:01pm. I can work with tools and languages I don't particularly like, but do not, for example, ask me to build you an Electron app, PHP backend, or Java app. I will walk rather than endure that. Maybe some help in an emergency, but if you make that my main duty, I'm done. I'm fussy, but that's just me. It's very important to me personally to be able to respect the tools I'm using.
Autonomy -- I hate being micromanaged. I'm not incompetent. I've created programs with hundreds of thousands of lines of C++ and Python code by myself. If you second-guess every tiny decision I make over long periods, I will descend into quietly loathing you at the very least.
Money? -- I'm not a greedy person, but don't insult me. At least pay me something close to market. There's great irony in that statement right now, as I'm not making even close to what I'm supposed to (basically poverty wages for some of these months), as I'm trying to help a tiny startup keep its head above water because the boss is actually a decent guy and someone I respect. I suppose it illustrates just how much the kind of people I work with matters to me.
Fuck Electron. I've seen what it can do to a product firsthand. If you get a competent web dev, it might work, but it will be slower than snail shit. Just write it in Qt. You don't need to use C++, Qt has bindings for many languages, including Python, Rust, JS with Qt Quick, and even Lua. Myself, I don't mind modern C++, though in many cases I prefer Rust.