skysight-inc/HackerNews huggingface dataset:
I am the author of Hotcaml.

There is actually some notion of persisting state in it. Reloading is done at the granularity of a module. The reverse dependencies of a module that changed are also reloaded, but the dependencies are not. The runtime state of all modules that are not reloaded is persisted.

Here is an example: https://aws1.discourse-cdn.com/standard11/uploads/ocaml/orig...

The dependency graph is roughly: system layer -> renderer -> slideshow
The system layer initializes the window (with SDL) and an OpenGL context.
The renderer allocates resources (buffers, fonts, ...).
The slideshow only defines the content to be drawn.

In the live code, only the slideshow is modified, so the system and renderer states are not affected.

Doing reloading at the module granularity meshes well with ML semantics: it is a straightforward extension of the "hyperstatic environment" and it preserves type safety and modular abstraction.

A static language that is designed with hot reloading in mind could do better, the generative nature of ML type definitions is not ideal.

I guess that structural type systems permit a finer grained notion of reloading. Actually, a finer-grained notion of persistence and state migration could be built as a library (with some macros) on top of Hotcaml. The important step is to be able to reify type definitions and then to define some notion of "type compatibility" (between old and new modules) by induction on the structure of types.
This is a lot of work, but could be built on top of Hotcaml foundations.
Titles are cheap.

Better questions:

Do you have the knowledge and experience to do your job well?
Is your brain naturally wired for the type of work you do?
I do not want to argument against Python. This is more like off topic / side note.

What I like about Rust is that it even checks code in your 'docstring'. So it is easier to keep it maintained.
Read Peopleware. Right now you're focused on mechanics like standups and retros, but for those to be effective you'll need to really grasp underlying principles.

As for career path, read The Manager's Path.
It says Austrian business in the article. You aren't in their jurisdiction.
This is a pleasant surprise. I remember using your app ages ago. I want to say at least 7 years ago when I believe you launched your website first on reddit. My memory is a bit hazy.

I really liked your app. We had a construction project going on for the longest time and I would mix up your rain, storm, sea and the singing bowl sound everything together and blast it on my soundbox!!

Thank you.
> This ruling stems from a decision made in 2020 by the Court of Justice of the European Union (CJEU) that stated that cloud services hosted in the US are incapable of complying with the GDPR and EU privacy laws.

So why can't google analytics simply be served/processed from an EU data center?
> Why commit at all if you're going to reset?

Because committing is useful? It saves my work. I can get to a point where my code finally compiles, make a quick commit, then do some more dangerous refactoring. If something breaks, I can `git diff` to see what changes I've made since it last compiled.

I'll turn this around and ask you: Why do you feel like you can only make a commit if you have something that's reviewable? Is your code writing style so perfect that it all works the first time? Or do you just not bother committing anything until your work is done? (That personally sounds terrifying to me... I really need to be able to say "what have I changed since 10 minutes ago when this compiled?" on a very regular basis.)
Managers who just give everyone the highest rating are generally the reason that these forced curve policies are created.
On a side note I saw Renaissance Technologies still hire "Computer Programmers" which I thought was pretty nostalgic. They also are hiring System Administrators and Network Technicians. No fluff at one of the highest paying firms :)
I've been dealing with this some myself. It really sucks. I felt so guilty because in the grand scheme of things, I'm doing great, but at work, I couldn't bring myself to do the most trivial things I'd done countless times. Thankfully, I came across this article which has been helpful in setting me on the right track. https://apple.news/AIRTKZkBFQBmDhsIAImifTw

TL;DR - Occupational Burnout is a result of the body's inability to respond to cortisol (stress hormone) in the work environment. Sleep, vacationing & working out are a prerequisite, but insufficient to correct. The article instead recommends that people should address major contributing factors that show up most commonly:

1. workload

2. autonomy

3. fairness

4. reward: comp + recognition

5. workplace community

6. purpose: values + meaning

^ In my case, I took a hard look at each one and have been making sure I focus on addressing those that seem to be most demotivating to me. Creating a physical work environment and reading about the behavioral science of habbit forming has also been great support.

Best of luck in getting through it. You're not alone!
Hey, I did my PhD more than 10 years ago, and I've taught more in my time in industry than what I could have taught in academia.
I studied Engineering in university (Electrical was my primary discipline, but in the first year we also spent some time on Civil, Chemical and Materials Eng) before later moving onto Software Engineering as a career.

To me, the biggest difference between SWE and the other "real" Engineering disciplines is about respect for the laws of physics.

Engineers from the classical disciplines have a deep understanding of the immutability of physical laws, and build mental models that accurately represent this as best they can. SWEs, on the other hand, have a tendency to build mental models that are more conceptual or metaphysical, and try and force these onto real-world silicon.

(This is somewhat idealised, of course. There are hack engineers that don't understand first principles in the slightest, just as there are software engineers who have no high-level understanding of the code they just copy-pasted from Stack Overflow).
I've made this question into a poll. Let's vote on it:

https://news.ycombinator.com/item?id=30000645
What’s the latest recommendation for what to use besides Google Analytics? I don’t need most of what the dashboard gives me. I exclusively use Google Analytics to keep track of page views and referrers for some low-traffic sites, and everything else the dashboard provides I honestly find really creepy. The only thing keeping on Google Analytics is the free part.
> or your website services Austrian citizens

I'm sure I get Austrian traffic from time to time.
Interestingly, in Brazil practicing lawyers who passed the bar exam are also called "doctors" due to an Imperial decree from 1825, that was also a courtesy to them from the then Emperor.
Upper and middle management might be aware but every system needs a release valve. E.g. you can't have juries without the risk of jury nullification.
Yes tell your boss and work something out.

Your bosses reaction should be acknowledgement that your personal health takes priority over everything else because this is an obvious fact. Anything less is not acceptable. (Source: I am a boss).

The options you will receive depend on the company. Time off or part time is a good idea.

You don't need a plan to do 'something that's not work'. Don't worry about that part. Take the time off first and figure out the rest later. It might be a good time to visit friends/family as part of a holiday. Things are starting to open back up.
There's no Moore's Law for music. Why should new music displace old? Baroque music is still great. So is Bebop.

I have a thought, which is that modern music production and distribution have blurred the lines between "recorded" and "live" music.

I'm a musician. The only way to hear my band is to attend one of our concerts. There's no reason for us to even attempt to commercialize our music. It doesn't need to have any lasting or widespread appeal. If we get an audience of 100 people, that's huge for us. Because of the novelty of our performances (never the same mistake twice), we don't have to be perfect in order to interest the audience. Nothing we play is "produced."

Prior to online music distribution, there was a sharp distinction between live and recorded music. If you wanted to reach beyond those 100 people, it cost an arm and a leg to get your music into commercial distribution, so it had to be targeted to a mass audience, or at least a big enough audience of enthusiasts to cover your costs. There was an economic reason to be good in the sense of having that widespread and lasting value.

Today, it costs no more to stream your music than to play it live. Maybe less. So it may just be that the financial incentives weigh towards creating throw-away recordings that last long enough to replace them with the next one. Just like with live music, your job isn't so much "the performance of a lifetime," as it is, "get them to come back next time."

Today, if you move outside of mass commercial music, there is plenty of great new music just like there always was. That's because, while the economics of popular music have changed, the economics of great new music really haven't.

Disclaimer: When I'm not playing jazz, I'm accompanying fiddlers and folk musicians. I've opted out of the popular music scene.
I found out that I was too focused on material things but health is way more important.

If you don't have good health, everything else is useless - a big house is no benefit when you lie down in bed all day.

So your health should be above everything else - try to build a healthy lifestyle, then you can do the next steps.
You can make a Playdate game. Right here
Why do so many US sites block my EU IP address, citing GDPR?
Ultimately this is an Ad for Matamoto. I am no expert on how various platforms work but wouldn't this just be a case of the biggest target being taken down first? That the same policies are going to apply to all similar analytics services?
I think this is the key point, and it's one I'd agree with "...software engineering is real engineering, but a lot of people who write software aren’t doing software engineering."

Personally I would probably draw the circle of software engineers fairly tightly and acknowledge that the rest of us are programmers, or developers, or software architects, or plumbers.

I'd certainly exclude someone like myself from the magic circle of software engineer. My career started accidentally in economic and environmental modeling (ah GAMS, my psycho ex, how I miss you), currently involves creating addons for Blender, went through a brief CRUD app phase back when Facebook was young (shudder) and has involved random trips into data science at various points.
I'd also exclude virtually everyone I've ever worked with if I'm honest because most of what I've worked on has either been bespoke and artisanal and so was been software crafting, or it's essentially been plumbing together systems designed by real software engineers and then prettying up the resultant monster. Despite that I've had the title software engineer a few times, as have lots of my colleagues.

I'm not sure that the author is right in saying that it is easier for programmers to transform into software engineers than tradesmen into real engineers. I definitely think that in both cases some seriously heavy training and a lot of unlearning needs to be done.
If you can find bath houses (in SF there's a... Russian? bathhouse, in LA there's lots of Korean bath houses - Wi Spa is probably the most popular), you can combine both a spa day (hello hot/cold plunges!) with massages. Highly recommend the combination.
It’s even more strict than that. A non-engineer is not allowed to be a supervisor of a civil engineer. This is why civil engineers work in a firm structure: the entire chain of command is made up of civil engineers. Any company who wants engineering work done must contract with a firm. This makes any potential conflicts of interest external rather than internal.
This literally defines gang behavior.
Do you think engineers existed prior to the 18/19th century when degrees became a thing? It seems problematic to your definition that most of the wiki page on engineering is dedicated to things done by non-engineers.
The psychiatrist prescribed me Trazodone and sticking to a strict sleep schedule. Needless to say those are not over-the-counter drugs so go to a doctor if you need them.

Also, in general it was very instructive for me to read carefully the Wikipedia page for occupational burnout.
Just because we use [discrete, not continuous] math doesn’t mean we’re not doing engineering

Yes, it does. The analog-digital divide makes engineering that much
harder than programming where 1's remain 1's and 0's remain 0's
regardless of real-world curveballs like temperature and fat people.
Does it matter if we are or aren't? I think some of us are, I think some folks are artists, some are scientist, some are laborers. It doesn't really matter because at the end of the day, unlike other disciplines all of these people can come together, collaborate, and produce things that captivate people, business, science, etc...

I tend refer to myself as a generalist because I'm not sure one label really fits. I do a bunch of different things, but the reality is I'm just trying to add value for myself, my customer, my teams and my business and I do it mostly with my thoughts and a computer.
Was torn between submitting this or the Twitter thread announcing the launch, which can be found here: https://twitter.com/playdate/status/1483905526652026886
I'm a software engineer by day, software craftsman by night.

My own personal work is made with love and care but I won't necessarily fret over details like extreme testing, scalability, readability of the code.

My paid work is a lot more thorough. Meetings and planning. Group work. Testing. My work does have consequences (although I think that's not really a prerequisite for the title of engineering). While no official board has standards of software. My work definitely has standards. My peers and managers have standards that we enforce upon ourselves
Indeed. And not just politicians, also traditional media, which are now hard to tell apart from "normal" Twitter accounts. They're all in on fast juicy action for maximum engagement.

So you can't trust your peers, politicians or traditional media. They're all Twitter-like now.
Note that voter ID laws are being passed at the _state_ level. Doing what you say above is fine, but getting states to recognize those IDs is not. This is not some trivial problem in America (like it may be in other countries).
This makes sense to me as someone educated as an electronics engineer. I've since moved over to software development and on occasion feel it can be called engineering, but more often it cannot.

> building something according to formal specifications within constraints...

Yes this is close to what I consider engineering, but maybe it is better to say 'design something according formal specifications within a set of constraints'. Engineering is a process of design. Does this mean implementation is excluded from the definition of engineering?

Plumbers and carpenters build according to specifications and architects design the specifications yet neither are called engineers.

Software development more often than not has little in terms of formal specifications and design, and as the article points out it is very much a field of change. It also focuses mostly on implementation instead of design. That is closer to what a plumber, carpenter and other tradesmen do.
Quit get a low stress low thinking job if you can afford to. Preferably something physical. Keep up the therapy, listen to them more than us. Slowly you'll start to long to get back I to tech, you'll be able to think again. Then go back and enjoy it again.
"Number 73!"

All regulars are laughing, hard. They shout out in turns "73!", and laugh again. Confused, the person asks what's so good about 73. Says a regular, catching his breath and wiping tears from his eyes: "Heh 73, we haven't heard that one before!"
> All pop music now feels sanitized.

What is "pop music" even? Maybe the Top 40 crowd is just always going to be a certain style for mass market audiences, and will always sound sanitized and overproduced because of production styles. But that's not all pop music.

> Nirvana, Metallica, Led Zep and Linkin Park were scratching new itches that their pop counterpoints did not touch. (I stick to rock, cuz I know more about rock).

Hybrid Theory was the first album I ever bought, and even as much as I appreciated it then and I do now, I do not think they were the opposite of commercially sanitized. The production sounds as fancy and artificial as any pop band created in this era. Their sound was far more family-friendly than contemporaries such as Korn. Heck, even the original band's name was Hybrid Theory until Warner suggested they change it to be adjacent to Limp Bizkit in alphabetical order.

I think rock is being over-lionized in this discussion in general. Everyone remembers grunge fondly, less so hair metal.
I don't see how the limit of friction is relevant here. Trains don't drag their wheels along the rail; the whole point of a wheel is that it rolls. A useful calculation would be based on rolling resistance.
Illiterate people deserve the right to vote too.
I thought I was over this argument because it always hits a dead end, but Hillel took a really entertaining approach with this series.
Looking back, I'm almost always having this argument with other software people, but never traditional engineers. I hadn't thought much about how our stereotypes are wrong.

A great example from the second post in the series is how software people don't have experience with the unpredictability of traditional engineering projects: "Part of this misconception comes from us seeing the results of the engineering process, not the process itself. We don’t see the friction, the overruns, the delays that happen because someone built the wall one inch to the left, or when a critical supplier goes out of business. To assume that software is uniquely unpredictable is a special kind of arrogance."

This has me wondering why the software world is so unpredictable in the first place and why we aren't working on that? Or at least getting better at dealing with it. Also, why are we so inclined to think the physical world is so predictable? Probably because we spend so much time on our computers...

excited to finish the rest of this series
I think the existence of exit prompts is sole admission of how painful this experience is for the users. The prompt itself can be a hindrance for the user too. I still think that it's an Android UX problem, not Netflix.
As he says in the article, many engineers in the past had neither a degree nor a certification. And they were certainly building "real things".
Out of those, the only things that aren't covered by SELinux are things that would be expected to be set by wrapper/launcher process (modifying namespaces - which covers nspawn and setting cgroups). Everything else, i.e. actual run-time access decisions, is more fine grained and controllable through SELinux, including level of access control like whether a program can listen on a socket or bind a socket, while still permitting it to connect.
I think you are largely correct, but I think I would instead characterize it as well-defined requirements and guarantees. What I mean by these terms is: requirements are a formal statement of a problem, guarantees are a formal statement about a solution, and a specification is a formal implementation that guarantees the requirements are met.

For instance, using the case of a bridge, the requirement might be something like: "lasts 10 years, max 10 ton load", the implementation might be a steel bridge, and the guarantee of the specification might be something like: "lasts 20 years, max 20 ton load".

Put another way, the key distinction is that engineering has an objective measure of what is considered adequate (i.e. solving the problem) and an expectation that only adequate solutions should be implemented.
First define "engineering", then ask that question.
I assume that Matamoto actually offers the consent dialog which they point out GA does not.
I don't think it's this easy. Especially not as simple as skin color.
But I do admit that it is not a non-issue. Even caucasian germans can have a hard time here. I know enough germans that get xenophobic remarks here and there.
you have to have an "Imprint" on your site which shows your private address

That's been the law in the EU since 2001.[1]

1. In addition to other information requirements established by Community law, Member States shall ensure that the service provider shall render easily, directly and permanently accessible to the recipients of the service and competent authorities, at least the following information:

(a) the name of the service provider;

(b) the geographic address at which the service provider is established;

(c) the details of the service provider, including his electronic mail address, which allow him to be contacted rapidly and communicated with in a direct and effective manner;

(d) where the service provider is registered in a trade or similar public register, the trade register in which the service provider is entered and his registration number, or equivalent means of identification in that register;

The definition of "service provider" is (b) "any natural or legal person providing an information society service".

This is a basic requirement of European Union trade. It's intended to encourage cross-border trade, by insuring that, if there is a problem, the customer can find the seller. So, anonymous online businesses are illegal in the EU.

[1] https://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX...
Depends on what the "plumber" is doing. Certainly there are plumbing tasks (eg pipe sizing for a chemical plant) which I would qualify as engineering. I would qualify it that way because they probably had a series of constraints (must transport X liters of substance Y / second at Z temperature, fit within service routing of the structure, minimize cost, etc etc) which they optimized against. I think a plumber who, say, fixes a sink, is not doing a similar process. Between those points lies the gray area of subjectivity!
Technology wars: the singularity is near