skysight-inc/HackerNews huggingface dataset:
Ask HN: How do you deal with decline and uncertainty after 30?
Hello, I am a software developer in my mid 30s, married with 2 kids and a dog (Yeah cliche, I know).
While I do not consider myself bad programmer, I must admit that I am not necessarily a good one either, I do not have any special skill in niche field, or some talent, my people skills are barely acceptable which means that I wont be able to take classical "just move to management" path.
Most of my career consisted of straightforward C/C++, Java, .Net programming with some basic IT gigs in-between. When I was younger I thought that I would always stay that way, but as I trot towards my 40s, productivity is taking a noticeable dip, staying up and drinking too much coffee are out of the question, and while the experience racked up during career compensates for my slowdown, I realize that soon I will be past my "cost efficiency plateau", as I become more and more expensive to say so (family, health, more rest, higher salary demands etc...).
Needless to say there are some well-founded fears and risks about staying techie later in life.

How do you deal with them ?

Am I just overthinking ?

What stops employer from just laying me off for totally non-age-related and legal reason and hiring fresh 20 somethings ?

How do I get back into field after such hypothetical (and I hope it stays so) incident ?

I wish to hear out from people who went through similar stage of life, be it generic advice or anecdotal situation.
Maybe consider the entry for Quillette being in line with their stated purpose.
Even with documentation, it is a lot to consume - someone on the project for a longer time can get more done definitely, but bringing on more people will lead to wildly different quality control. I find it do be a scaling problem if anything.
I can attest to the quality of yboris' Video Hub App. It works great!

I know this isn't the place for any of this, but

1) Can you look into the delete functionality when the file is located on a mounted filesystem (I think it might be fusefs? specific scenario uses rclone Google Drive mounts!). I don't think it works with the `trash` module you're using from npm.

A few other ideas/improvements I've had:

- Do not immediately delete metadata if a file is removed. For example, if the hub contains multiple sources, some which may not always be mounted (external drives or cloud drives), deleting metadata may mean that it needs to be re-analyzed when the drive is present again. Maybe a soft-delete of this metadata would be better, so the video is hidden from the library, and then you could have an option to purge historical data periodically / on-demand.
- Option to show the full file-path in one of the gallery views

Thanks!! If I ever get around to it I'll get in touch on gh.
In Germany new employees usually have a probation period of 3 months, during which companies can pretty much fire them at will if they don't perform as expected.
I think that's almost always enough time to assess whether someone is a good fit for long term employment.
IG bot that uses convolutional neural networks
Just a friendly reminder to anyone reading this about v1 of GORM. It doesn't properly support JOINS:

https://github.com/go-gorm/gorm/issues/1436

Note that there is some work for v2 in allowing users to create JOIN queries but without JOIN support it's effectively unusable in anything other than very small databases.
I don't get why it removes integrity checks.

SHA checks should be fast enough, and it a "must have" feature for an extension promising to replace a file with another.

The add-on is from a user "nobody" that was registered early this year, vs decebtraleyes from a real name account from 2013.
Our contemporary corporate and social culture doesn't encourage or reward discipline. We produce mostly throwaway stuff that has to be released as soon as possible on the market, or else the company goes out of business. The incentives for craftsmanship and diligence are just not there.
> I'm not sure that would be a net benefit over research

> blogs or something like a technical report directly

> published by a lab/working group to be quite honest.

I think this is kind of the problem, half of this stuff sits on a webpage somewhere completely unread and not really reference-able.

> I'd say the likelihood of an IEEE rubberstamped one pager

> on perpetual motion would be non-zero.

I would hope that each single page would be reviewed with the same integrity as a six pager. Of course, it's not impossible crap leaks through to any conference/journal.
In some EU countries (for example Poland) copyright is separated into "personal" and "economic" rights.

You can give up the economic rights and these are inherited and you can trade them.

Personal rights cannot be traded or inherited and remain with the author till their death. So you cannot change the text without author's permission, you cannot lie about who wrote something, and author can prevent you from using his art for a different purpose (for example if you wrote a song and somebody used it as a military recruitment ad and you're a pacifist - that sort of thing).
"People use Google because they choose to, not because they're forced to, or because they can't find alternatives."

This is highly disingenuous given the context. It's a bit like saying people breathe polluted city air because they choose to.

Yes, fine, theoretically you have the choice to move to the mountains or stop breathing altogether. Sorry for breathing.
The US still has that leverage because of their heavy handed way of treating even allies. The EU still very much relies on the US but not because they are friends and allies, and not because the EU could not do better, but because they have to make choices under duress.

Examples for such behavior abound but people judge with their feelings rather than the facts because EU citizens would rather assume they're in a stronger position, and US citizens would rather assume they're in a morally superior position.

> Under US pressure the EU has agreed to use transmission frequencies that could be easily disturbed or completely jammed by the US military. [0]

> The US has already leaned hard on European officials to abandon the €1.1bn (£772m) project. [1]

[0] https://tech.slashdot.org/story/03/12/01/1226207/galileo-sys...

[1] https://www.theguardian.com/uk/2003/dec/08/world.internation...
Face Recognition in Python
So they didn’t bother and shut down the site. Well that’s fine I suppose
Hash map then.
I'm not entirely against referendums, I think there are cases in which they make sense. One is issues where it's not even really a political issue. Capital punishment for example. Another is where the question has significant constitutional consequences and a party seeks an additional mandate for their policy beyond a simple electoral mandate. Brexit could fit that category, in the same way that joining the EU did, but the change should be one the government is willing to take responsibility for implementing. It should be a supplement to their electoral mandate for a policy, not a vote to impose a responsibility on government it doesn't want to take. This was James Cameron's fundamental blunder.

Switzerland has another classic example of a failed ballot initiative. They voted in 2014 to limit migration from the EU, an initiative promoted by a party that was not in power. So again you had a government bound to implement a policy that was not their policy, which they were unable in practice to deliver. Who takes responsibility for that? It's just asking for trouble.

In California the legislature has been ham strung by a series of initiatives ring fencing spending on various areas such as education, and others limiting taxation in various ways squeezing the state budget. Of course give the electorate a vote on more spending and a vote on lower taxes, guess what happens.
I'm guessing they're referring to the part in the article about paedophillic content - even if no real children are being harmed in the process (e.g. generating an image of an entirely new fictional child similar to thispersondoesnotexist.com and then run the output through the nude filter), it's still generating sexualised content depicting minors.
It is not ideal but for the subset of libraries that use CMake it can be as easy as dumping the library in a subdirectory and you are done. Things only start to go sideways when you have to integrate with google libraries since they have typically insane build tooling (skia).
Wouldn't they still have to release the source code retroactively for hosting previously? Not sure how the AGPL handles this.
Unless you're using Clojure engines with Datomic pull syntax, SQL engines (most? all?) can't pull out nested results without serialization nastiness
> The preferred option is more complicated, longer, and polluted - and correct.

This is the definition of bad design.
>I don't understand how such a popular language can have such a weak story in dependency management and integration with third party libraries.

>All of it could literally be replaced by something akin to: cppvenv --depend-on grpc-1.40 zeromq json

C++ existed about ~20 years before the practice of "automatically reach out to the internet and download dependencies".

As a result, C++ doesn't yet have a Schelling Point[1]. Your proposed packager syntax requires a Schelling Point (i.e. canonical http repo source as a Focal Point to download "grpc-1.40,zeromq,json"). My previous comment about this:
https://news.ycombinator.com/item?id=22583139

Tldr, no vendor with enough sway to influence the fragmented C++ community (commercial shrinkwrap software vs open source, embedded vs server, HPC/scientific, games, etc) has created such a Schelling Point.

[1] https://en.wikipedia.org/wiki/Focal_point_(game_theory)
Nano Adblock contains malware after takeover
Wing Commander IV: The Price of Freedom Remastered
Dunno if you've looked recently but how do you feel about Polymer 3, which has essentially become lit-element (which is powered by lit-html)?

Just in case you haven't been watching the space at all:

- https://43081j.com/2018/08/future-of-polymer

- https://www.polymer-project.org/blog/2020-09-22-lit-element-...

- https://lit-element.polymer-project.org
Not to nearly the same degree. Start transaction > mutate data > end transaction is not nearly as distributed as invoke SP > let the database do something (?...) > wait until it's done. The first is a distributed system in the same way that an application writing to a filesystem is a distributed system.

I'd also point out that ORM is not the only alternative to stored procedures. In addition to that, there's nothing unique about ORMs that make them susceptible to bad code, or poor SQL understanding. Somebody who doesn't understand data structures and how the CBO works is going to write equally poor stored procedures. Removing the ORM is not the solution to your engineer not know how RDBMSes work. ORMs also don't suit every use case, but again, having a bias against ORMs is not the solution to failing to understand how your use case fits in with your RDBMS.
> Try to add support for a completely different database. Details of your current database that have leaked into your data layer abstractions will soon become obvious

Well, details of Postgres have leaked into my database queries and schemas, but it was a conscious decision to use Postgres and its features. Sure, it seems nice to be able to swap one database for another, but you lose out on a lot of what a database can do if you stick strictly for the lowest common denominator of features. I use Postgres partly because of its feature set, so I am going to use these features. This does mean that its unlikely I will ever run my software against a different SQL database, but I'm ok with this.

I guess an important note is that you should be aware of it and it should be a conscious decision, rather than something that crept in over time.

But I suppose that's a tangent and not the articles point. Forcing Functions is about unearthing the brittleness that has crept into a codebase over time and I absolutely agree that is a helpful and worthwhile exercise. I've seen plenty of codebases that were meant to be database agnostic, but porting them was still not painless.
The thing is that there is a limited of value that the market generates. Like producing half a million tons of steel or something. If you extract more value than the market generates then you have to take that value from someone else who made a mistake. Therefore maximum upside by "beating the market" is limited by the amount of mistakes other people are making and that upside is much smaller than you get from simply taking market returns.
If lack of roboticists to spend enough time on each station was the main issue, I bet 100 roboticists would have been plenty. At that rate you can pay them a lot and still save money. And after 6 months you can reassign 90% of them to a new project, while the savings continue indefinitely.
Debatable. Method syntax vs query syntax is available. I mostly see method syntax in my codebase. I also see terribly performing linq queries all over the place.

I think it's neither good nor bad, it's just a tool. Tools are useful for making things, but if wielded improperly they will hurt you.

I'm sure same arguments can be made against raw SQL. It's possible to have good codebases in any paradigm, and bad codebases in any paradigm. It's really all down to the quality of implementation.

As a side note if you want a creative way to backup a database just use try logging an EntityFramework tracked object in Serilog with the destructuring operator. Watch as the logging framework inadvertently causes an entire object graph traversing navigation properties endlessly make infinite SQL queries while your web server slowly runs out of ram. Fun times!

Powerful tools are usually sharp.
I've never come across this unit of work concept. care to elaborate or recommend a link to learn more?
whatever you are saying, that they will make, needs to be manufacture as well. Its not like there is iphone printer available on aliexpress.
To be honest, I'm not convinced that this is practically true in Matrix except in cases where you wish to argue that the homeserver operator is "in on it" to create fraudulent messages (the same goes for Signal -- though in Matrix's case the homeserver usually keeps the entire conversation history, making it even harder to make that argument). So while it is technically true that you cannot cryptographically prove that a message was sent by an individual, practically speaking you probably can prove it.
What a weird reaction by that company. The time it took them to discuss it, investigate, and respond could've easily been used to comply with the license. I'm already happy with my current hosting but they've been added to my shitlist either way.
Researchers discover new salivary glands in the human head
It seems that it is "upgrading" libraries. If you look at the graph it replaces jQuery 3.3.1 with 3.4.1.
I don't think your worldview is inconsistent with the authors.

Software is one of the few areas where we can easily and rapidly change our tools and the medium we work with. To be professional in this field you must use that ability to systematically remove issues where possible.

To fall back on the mindset that being a good engineer means eschewing those safeguards and relying on discipline is more about image that outcome.
The Copenhagen metro is fully driverless (no staff in any role onboard) and consequently runs 24/7.
I feel this is less and less true for Frontend Development which is constantly evolving and you need to put in some serious effort to stay up to date.
This is not about ideology. This is science making progress on huge intractable problems that have a huge impact on a small number of people, that were considered intractable 10 years ago.

Your smug 'general observations' are neither relevant nor welcome.
Elon Musk also found out something like that I guess https://techcrunch.com/2018/04/13/elon-musk-says-humans-are-...
Why Does Julia Work So Well?
Regieconcha@yahoo.com
> I don't understand how such a popular language can have such a weak story in dependency management and integration with third party libraries.

At some point 40 years from now, someone will complain about Rust not having full integration with whatever IPFS/blockchain distributed computing package managers/sharded source control/vulcan mind meld the internet turns into. There really was a world before the internet was universal. People used tools like Fortran on these things called Crays; (or CDC6600 or IBM doodads before that) -you'd bring your data on a VHS cassette or reel to reel tapes, because your university only rented a single T1 line -1.55mbps FWIIW; it was seen as plenty of bandwidth for all the scientists in the university. Nobody but the scientists used the internet in those days.

That universe is still around; matrix math is still ultimately Fortran -matrix math is why people invented computers in the first place, as amazing as this may sound to people with ipotatoes in their pocket. That's 50s and 60s tech; with gotos and line numbers: back then, using multiple files for your software was considered getting fancy. You were usually submitting jobs as a stack of punched cards. I never did, but my older roomies in grad school certainly did.

Similarly, the OS you're using is basically mid-1970s technology, written in mid-1970s programming languages. Back then, package management wasn't so much of a problem; the whole source code for the OS could be published in not-too-big book form (and was, FWIIW). Just a reminder: the runtime for modern Rust is absurdly bloated compared to those days; "Hello World" in Rust is literally larger than the entire hard drive of 1970s computers with the OS written in C; hell there were 80s computers with 4mb drives that were seen as fairly adequate. Anyway, that's why C++ (basically PDP-11 assembler with Bjarne's deranged ideas about objects ... and some later better ideas) has a shitty package management story. It's not so bad really; just a skill that n00bs don't have any more. I personally never needed anything fancier than makefiles, and saw CMake as a regression from autotools.
Beautiful! I can easily tell the difference but that's cheating (after playing the sax of 17 years or so), the sax sounds a bit sharper and the oboe 'rounder' if that makes any sense, which makes it easy to pick out what is played by which instrument. Originally this piece is for two oboes, but this is a really nice variation and lovely to see a saxophone used for more traditional music, I wished more people would do that (but saxes are typically frowned upon for performing classical works in a 'serious' setting).
Type inference is good, but it’s not a full answer.

For instance, how often do you declare a variable as `int`, when what you really want to say is “an integer in the range 0...100”? A few languages (e.g. Eiffel) provide a formal mechanism for declaring these sorts of constraints, but most don’t, and you end up putting what should be declarative type-level information into the body of your code instead.

And then there’s “cutting-edge” stuff like dependent types, where you really want to express one argument’s type in terms of another argument’s, a classic example being an array indexing method, where you really want to declare the index at compile time as an integer in the range `0..<array.length`, and let the type system propagate that rule and its implications throughout the code that uses it. Whereas most “modern” languages chuck a run-time error if you’re lucky; or just ralph and dump stack like some antiquated 1970s throwback (yeah, looking at you, Apple’s Swift).

3/10 Could do much better.
If you're transpiling the JS code to ES5 then you're deploying 'var'. That's what actually matters.
You're talking about real world markets which are obviously not efficient by theoretical standards. They are not efficient the same way a physical ball is not spherical compared to a mathematical sphere.
This takes me back to VB6 days where placing a dim in the sub would be too costly if that sub was called iteratively and using a global was the only way to optimize it because of the poor stack allocations.

Would love to see what semantics are making let/const abysmal.
I've recently came up with following approach: make it easy to generate CRUD applications without ORM's, and then modify them any way you like without extra dependencies.

Made a tool to achieve just that: https://github.com/sashabaranov/pike/
Yes why not? If you have a data model where parts of the data is graph-like, and other classic relational, why would you not want to store the entire thing in the same database? If your domain is completely graph-oriented, and you have complex requirements on your database to support graph-oriented operations, it would be one thing. But evaluating use of a well known and mature SQL database is no bad starting point.
What are your thoughts about this?
> (see mary wootters' talks on youtube)

https://www.youtube.com/watch?v=Gh578e98qAk

> Suppose I want to write a library to find compression polynomials for reed-solomon encoding system (see mary wootters' talks on youtube) for my storage product. I need a LU decomposition algorithm that operates on GF256

Surely you use isa-l[1].

[1] https://github.com/intel/isa-l

> Now I want to accelerate the search by running the search on GPUs.

GPUs are float oriented so I don't think you'll get the performance you hope for out of 8 bit integer operations. If you have interesting results to share I'd like to read them.
Ask HN: Journaling App/Service for Indies?
For my projects I would love to have a searchable, daily overview of the things I have done that day. An overview that includes git commits, but also manual notes like 'Switched the Adwords campaign off', 'Designed a new logo for website X' or 'Had an online meeting with X'.

Is there a journaling app/service that allows me to integrate with Github, my Notes and my Agenda to create an overview like this?
It's a fork of decentraleyes, why not contribute to it?

And I'd have to trust substantial permissions to an addon from 'nobody'. I don't believe in mandatory real-world identities but at least have a nick with some street cred :) Trust is important with browser extensions, just look at the news today about Nano Defender being compromised and spamming Instagram likes: https://github.com/jspenguin2017/Snippets/issues/5

Just saying, this is something I'll skip for now for the above reasons, but I'll keep an eye on it.
Who has time for this? I've always been on under resourced projects where every hour had to be signed off. Everything is a rush and quality is required but never budgeted for.
That quote—“Apple now theoretically has a centralized database of every Mac user who's ever used youtube-dl.”—is somewhat misleading.

Apple doesn’t get script contents, it only gets a hash. Of course, if Apple really wanted, they could maintain a DB of hashed contents of every possible version of youtube-dl script, and do their best to match it up with what users execute. However, even that far-fetched scenario falls apart the moment you wrap youtube-dl invocation in a convenience script—as only the hashed content of the script you invoke is submitted for notarization check, not every binary or script further launched by it.
Probably not. The consequence of violating the (A)GPL is you lose the right to use, distribute, and modify the software. They could in principle be sued because they were violating the license while the website is up but you'd need to demonstrate losses and you couldn't force the release, only get some compensation (though you could try to use that as leverage to settle for the release of the code). (IANAL, etc)
Exactly. With so many people out there advertising themselves as "software engineers" but being "coders", companies fail to produce maintainable code without a bunch of strict rules. Coding manifestos are a must these days, otherwise you end up with a codebase that looks like the Tower of Babel.
Go, WebAssembly, HTTP Requests and Promises