skysight-inc/HackerNews huggingface dataset:
Ask HN: Making the most of a copyright cease and desist?
Several years ago, I released a mobile game that was a remake of a console game I enjoyed playing as a kid; there did not (and still doesn't) exist an official mobile version, so I decided to make one myself so I can play it on my phone.

I built the mobile version from scratch and implemented the mechanics to match the console version as closely as possible. The original graphics/sprites were used in order to recreate the experience; some of the original sound effects were used as well. All other assets (UI skin, HUD, controls, music) were purchased or produced by contractors.

I reused the original graphics knowing full well that one day a C&D might show up. That day has come - the company that made the original game has issued a complaint and requested the mobile version be taken down. I'm wondering about options and how to make the best of the situation:

1. Do nothing
2. Use new graphics/sprites/assets and update the app
3. Somehow license the original IP
4. Somehow convince the company the acquire or take ownership and sanction it as the "official" mobile port
5. Comply and remove the app
6. ???

I'd hate to simply take down the game, as from what I can tell is the best reviewed, most popular (400k+ downloads, 5k MAU over last yr) and most accurate remake of the original game available on mobile (there are a handful of clones out there that IMO aren't as well made). If it was possible for the company to take ownership and make it into the official version, I'd be more than happy to make that happen and relinquish the app for no monetary gain. However, I'm not sure how to navigate that process or even begin the conversation, or if it's even a possible avenue at all.

I understand the usual disclaimers that come with such a post, but I'd like to crowdsource some ideas for how to approach this situation. Thanks!
>One thing that I remember being distinctly different from public education in the US is that the course selection was provided by the school each year and students had no say in this process

I grew up in the US and that was my experience as well. There were no "optional" classes until high school, but even then only one or two of my classes were my own choice.
"Just 18 percent of American computer-science college degrees go to women.... Meanwhile, in Algeria, 41 percent of college graduates in the fields of science, technology, engineering, and math—or “stem,” as it’s known—are female."

Wait, so they're comparing computer science with all of STEM? That might obfuscate the picture. It should be STEM:STEM.

Edit: Perhaps I am not being clear but computer science is a subset of STEM, so even within the US, the number of people going into STEM > Computer Science. Comparing STEM in country X with CS in country Y seems like the wrong comparison.
We have launched it for a while. Thanks for the feedback. The reason we don't show others' solution beforehand it's because it will demotivate people to think hard and solve problems.
>I did the sums, the Intel P4 3.4Ghz came out 2004, if Moore's law continued, we would have 3482Ghz or 3.48 TERAHERTZ by now.

Comparing raw CPU speed seems like a bad metric. A new i5 clocked at 3.1Ghz will absolutely wipe the floor with a 3.4Ghz Pentium, even for single threaded workloads

https://cpu.userbenchmark.com/Compare/Intel-Pentium-4-340GHz...
I'm not sure what causes it, but Australia always seems to be really homogeneous regarding tech at the POS. As soon as NFC enabled EFTPOS was available from the banks, it felt like everyone already had the POS machine that could read them and chips.

I can't imagine going somewhere and having to use the swipe. Even some dinky rural bodega will have a swanky touch screen EFTPOS machine. I am thinking the banks must cover the cost.
I've worked with frameworks all over the map in terms of dependency tracking, and right now I'd lean toward React's manual dependency tracking is probably the better approach as the default. Making it manual does mean that it is easy for silly mistakes to be made (missing a dependency or adding one too many), but it's a learning/debugging trick and eventually starts to become second nature. Tools can be built on top of this manual tracking to better automate it, such as edit/compile/pack time linters ("warn: you use this variable in this callback but don't include it as a dependency"), or additional meta-hook libraries at runtime that do some of the automatic dependency tracking magic (through Proxy objects or what have you).

It's harder to fix some classes of mistakes/performance issues in the more automatic systems, and the classes of mistakes in the manual dependency tracking world are often easier to spot ("why isn't this updating?" when forgetting a dependency as opposed to "why is this updating too often?" with automatic tracking).

I wouldn't be surprised if there aren't more automatic tracking tools that show up built on top of the basic hook pattern.

My biggest complaint with the React dependency tracking is that empty dependency array [] has different behavior from null/undefined dependency array and so far I always have to look up which one I actually need and I just haven't yet written enough hooks that I've internalized why which behavior is which. It keeps the hook functions terse to write, but it's a small papercut.
My go to is meditation music, hums, drones, no drums, and no vocals. It’s like white noise but less grating.
I'm obsessed with plt and parsers... What would be better interview questions.?
Big Picture Tech Skill Trends According to Job Postings on Indeed.com
It absolutely does. I know many men in India who would rather do something else than do engineering. Look at the background of most standup comedians in India for example. Most of them come from engineering/stem background and use that to fulfill their side hustle to be a comic and then become full time comics if successful. I was personally far more interested in studying classic Sanskrit literature, but was talked into becoming an engineer.
This isn't quite the same thing, but can I talk about something related?

For the past month, I've been on a bit of a quest to downgrade my my life to OS X 10.9 Mavericks, which came out in 2013. It's something I've wanted to do for years, for a variety of personal reasons, and it should be able to do everything I need.

My primary issue has not been software compatibility per se, but actually obtaining the software I need. The trial version of NetNewsWire 4 looks beautiful on my Mavericks install, but I can't buy a license key because BlackPixel no longer sells them. Ditto for Scapple, and Day One, and Parallels, and many others.

I had to hunt through the Internet Archive to find the last compatible versions of Intel Power Gadget and Kaleidoscope. I had to manually download and test each version to figure out where they dropped compatibility.

These are all fully offline apps, so there's no reason I shouldn't be able to buy and download old versions. I'm not asking for support or development time—I totally expect to be on my own—but please, developers, just give me a way to obtain what you previously created.
Good catch.

This site seems to be an interesting aggregation of Tesla deaths:
https://www.tesladeaths.com/
It claims 29 deaths in the US from Teslas in 2019; 3 are from accidents where auto pilot use was claimed.
That's an old model that we used to plan to work with companies to contribute. Now we're focusing on self-learning and want to help people learn and master real engineering skills.
A 97000 ton aircraft carrier is equal in weight to the amount of air in a 450M x 450M x 450M cube. Aircraft carriers are only 320M long, so this doesn’t seem that far fetched.
NOOO. Science, Technics, Engineering, Math.

The M is not for Medicine
But if they did mean that then they're mistaken. Intel just about nailed the 10-year prediction from 2005 to 2015, hitting a shrink every 2-3 years:

65 nm – 2005
45 nm – 2007
32 nm – 2010
22 nm – 2012
14 nm – 2014
It's not a bad idea, I'd actually favour it myself because "screw all this noise", you know?

But there are a few issues.

First, practically, you now have to decide what is "political". Is an ad for abortion services political? What about the NRAs latest membership campaign? Or a gun safety campaign? Lots of things are political to at least someone. So who decides what's political? You're still in something of a mess. And you technically have to ban ads that are entirely factually true now!

Similarly, even if you can stop the ad next to a celeb tweet being political, can you stop the same buyers paying celebs to Tweet fake news directly or Russian bots creating 10,000 accounts and tweeting fake news? Will you go through @Potus tweets and cut out the fake news? Suddenly the Liberal media is eating trump babies.

Second, it doesn't solve your core problem: traditional media, from the guardian to fox, will now attack you for being anti free speech (AND for every time an ad gets through your filter, that looks like it shouldn't). They don't actually care about whether you publish fake news. They publish it. They just want you to die. Plus now you've offended your freedom loving users, and alienated the politicos relating you. Maybe under the 1st amendment US politicians can't FORCE firms to take their ads. But they can audit them, drag them I front of Congress, cut net neutrality so ISPs eat their profits etc.

Ultimately, its down to users to filter their media and fact check it. It always has been. There was never a golden age where newspapers reported facts in order of importance and politicians were honest and policy fact driven. But no one wants to admit that. Facebook made that mistake, it was reported as "Facebook will publish fake news, eat babies, fuck your wife"
Every Tesla Accident Resulting in Death
> Assumes FB causes no harm because we've yet to articulate the problems it causes.

Look through my posts in this thread. FB causes shitstorms of damage not the least of which is aggregation / indoctrination of dissention through isolation.

FB is basically pushing monsters outside of its gates in hopes they "go away". They wont. lol.

Also there are legal practices call "punitive damages" so yes there exists legal statutes for punishing things that we determine we dont like.
The hook functions need the knowledge that the mount and update are doing the same thing. However, the example would be more complete if the mount was doing something different. In that case, not only the class example would be more clear to read with explicit function for mount and update but also would be similar in terms of the line of code. With Hooks, if you want something different you need to do a "trick" which is less obvious than defining `componentDidMount`.

I am not against Hooks, but I do not believe the example portrait the situation properly.
Oddly enough some of the brightest engineers I've worked with were actually self-taught. No formal CS background or education, but they were incredibly driven and outperformed from Stanford.
> tl;dr: Ask Women.

This would be an amazing survey. I look forward to its publishing. I wouldn't be surprised if someone is doing it as we speak. It shouldn't be too hard or cost that much.

Though, I do have to say, your sample of one is not sufficiently convincing to me.
Yes, I'm sure implementing this feature was as simple as modifying the ownership column in the database. How are dismissive, unthinking comments like this upvoted?
I think each time Big Tech tries to control the narrative more and more is a step in a direction that is short sighted.

I get wanting to pull down literal Nazis and I mostly agree. But scope creep on who is a Nazi and the ever vaguer "hate speech" will spell true trouble as they get even more unclear.
> I understand the arguments against BASIC, e.g., ingraining impractical paradigms,

The early interpreted BASICs did make it difficult to write good code. All source editing was line editing, every line was numbered, there weren't any structured control flow statements, composite data structures were limited to arrays and strings...

But even as early as the second half of the 80's there were mainstream implementations of BASIC that addressed all of these. Microsoft QuickBASIC 4 added a full screen editor and then completely relaxed the need for line numbering. Line numbers were still supported, but so were symbolic labels. QB4 also had support for functions/subroutines, decent control flow statements, and structured data types. There was also reasonable support for extension libraries, and the like. As long as you didn't rely on any code patterns that required any kind of callback or inversion of control, you could do a very nice job writing well factored and maintainable code.
I'm pretty sure it has been proven most genius women go into medicine and most genius men go into engineering. The genius part means you get to pick your path. Biological imperatives are at play.
I'm a beneficiary of the "startup lottery". I am living the dream, and I state that in this anonymous forum to provide perspective to my own feelings about The Rich.

In your early thirties twenties, managed effectively, one million dollars is enough to retire on, and live care-free. Two million dollars is enough to live well. Six million dollars is enough to retire on extremely well. Ten million dollars is disgusting. Twenty is obscene. A hundred should be criminal.

Thirteen million dollars is excessive, for sure, but that's not the kind of awful, powerful wealth that is the root of problems in our society.
I think you should just watch the movie. It's really quite good. I could explain who Herman Blume is, but I'd just be ruining it for you.
Back in high school and some of University I used to be able to listen to music while working, but no more. If I need some noise then the stuff I listen to is so minimal it could hardly be called music.
No, and I don't miss it because I don't feel like was actually "simpler" than what I use today. Almost anything I could have done easily in BASIC in 1992, I can do more easily in Python now. The exception might be drawing ASCII graphic games, but I don't have any desire to make such games today, and if I did, I could just learn how to use TCell or whatever.
It is wonderful. I really want to find a way to help teach kids/teenagers about programming. It can really make you feel good about yourself to build something and see it working
I think this is going to be an "agree to disagree" situation. Frankly, I think Activitypub is just fine as the basis for building Twitter alternatives. Most complaints I've read about it are from people who dislike its lack of privacy and of the necessity of trusting servers with regards to private messages. I think those people are trying to fit a square peg in a round hole.

I'm actually building an Activitypub implementation myself. I quite like the protocol and the philosophy of "twitter without Twitter Inc.", but I'm thoroughly sick and tired of the rube goldberg "framework on top of framework on top of framework on top of obscure language for the backend" insanity that comes with the usual implementations. So I decided to do something about it. I'm working on an Activitypub server in Go, sqlite, and a pure vanilla javascript frontend. My goal is to have this be dead simple to install and maintain on a barebones VPS for anyone with a modicum of Linux commandline experience. One static binary, one small config file, one folder with a handful of javascript/css resources and html templates. And that's it. No bloody vue, react, angular, ember, or rails. And definitely no f---ing node.
It can be both a copyright issue and a corruption issue.
Getting back into audio production (which was my main hobby before starting my career) by way of solidifying my understanding of music theory and piano technique. I've "played piano" for years, but have never really studied it.
It would seem any univariate analysis of social dynamics is by default erroneous
If it was a manual the car wouldn't have even been able to start. If you are in gear the clutch needs to be disengaged to start the car, otherwise the engine can't spin as it's connected to the wheels through the transmission. That's why if you bump start a manual you need to get the car rolling in neutral with some speed first, to make the engine spin when you put the car in gear and engage the clutch.

A manual could start in neutral without the clutch, but if it somehow slipped into gear (don't see how that's possible without someone forcing the stick), it would stall immediately.
Wouldn't the garbage collector be a problem?
VB was basically terminated by Microsoft in favor of .net.

It would have been (maybe still would be) amazing to see what the community would pull off with VB6 if Microsoft would open source it.

VB6 IDE was so far ahead of it's time, even today (20+ years later) most languages don't have anything that comes close to what Microsoft had done there in the 90s.

It would probabaly the perfect language for UI development and data analysis (think VBNotebooks), possibly ML.
Blind faith and trust in authority is a hallmark of many religions and often a praised trait in an individual.
Most retail investors don’t want an annual report or voting rights, nor do they mind if they own the share if the asset they buy tracks it sufficiently well.
The Future of Food: The $6.5T Question
Not that I'm aware - Science Technology Engineering Math is the definition of STEM I see most frequently. I'd consider Medicine to be heavily STEM adjacent, particularly in the US where most doctors get a bachelors in a STEM field before heading to med school, but not a part of it.

Googling around seems that it's contentious, and that a lot of people consider nurses, physicians etc to be STEM careers under the 'science' heading. But this doesn't seem all that core to me. (And you have to draw the line somewhere - are psychiatrists STEM? How about psychologists?)
Show HN: Pixcryption – A New AES Secure String to Image Cipher
Some people use STEMM for “science technology engineering mathematics and medicine”

Medicine-aligned subjects do a lot to improve the gender ratio, if one wants to improve the gender equality figures...
Thank you for sharing! Fulfillment at work is about many intangibles beyond pay.
And to add on to the other commenter, there's also a `useLayoutEffect` hook which fires synchronously after a react render but before the browser paints the render.

Basically `useLayoutEffect` fires in the same phase as `componentDidUpdate`, but it's discouraged unless you really need that timing (to do things like read the DOM directly and/or trigger a re-render before paint)

https://reactjs.org/docs/hooks-reference.html#uselayouteffec...
Birthday Wishes app – Get the best birthday wish for your family and friends
Ask HN: How do you retain knowledge from books?
I sometimes wonder if reading all these books is worth it, given I seem to remember so little from them.

Other than rereading what do you do to retain knowledge from books you value?
There isn't much point to running the most recent kernel on such old hardware anyways. You could try if current Ubuntu still works with old 3.x kernels. It might just do, systemd would be the most likely offender to stop the show I guess. But if 3.19 still supports your ATI, you even got yourself a kernel that's still under LTS.

Just in case you need a silly project for the holiday season...
Sorry. I spoke too early, I didn't see the "Extra Crunch" thing and thought the whole post was paywalled for you. I also have a paywall after many paragraphs.
Half of millennials and 75% of Gen Z have left jobs for mental health reasons
It depends who you ask, but typically not. STEM = Science, Technology, Engineering, Math (ie the 'M' isn't 'medicine', which is what a lot of people think).
Have you considered doing it anonymously or not informing anyone of the projects you're working on?

Just like you can't necessarily afford to engage in the legal system, the legal system can't be engaged if they don't have a signal that there's anything there to engage with.

And in interviews you can still use the experience and talk about your contributions without releasing the product/ identity to your current employer, and your current company is incredibly unlikely to come chasing after you years later on things with no obvious connection to your real name.
Thank you. UK seems to be a nice destination. English speaking, as well as low fees.
> _without artificial restraints_

What constitutes an artificial restraint?

For classical liberals, that means being free from the constraint imposed by other individuals.

Today the definition of "restraints" is being expanded beyond the artificial to the point where everything is being declared a "human right" without any consideration for the fact that some of those things can only be provided by taking from someone else (resources and/or labor). Basically, more and more people feel that people should be free from natural restraints like the responsibility of having to provide for oneself (or at least trying to). But the rub is that the only way to free some people from those natural restraints is bondage of others to provide for them.
I have not investigated Coast yet. I know it aims to be a Rails for Clojure... maybe it is, and maybe it would meet my needs.

But given the incredible power and expressiveness of Clojure, I find no reason to believe that the best rapid web development framework could be developed in Clojure if the right motivated people attempted to do so.

I don't know how many people (Plataformatec?) were behind Phoenix, but even in its early versions it was comparable to Rails. In some ways, it was even better.

There seem to be two obstacles to doing this in Clojure. The first is that people who actually know enough about Clojure to do this are actually very busy (happily) doing Clojure for work. They don't have the personal need to build a Rails for Clojure. The second is that those who would be capable already know how to pick and choose the libraries and build their own (even better, more suited for the purpose) ad-hoc frameworks for their projects.

I suppose it could be a curse of the power of Clojure that the lack of language pain points lessened the need/motivation for experts to build their own RAD framework.
> instructing drivers to break the law

And the process for reporting a map error or unsafe maneuver instruction is way too complicated to do while moving, but can't be done after you've left the area, and there's no function to just submit a voice note.

Related:

Some time back, I gave my old TomTom to a not-very-technically adept friend. I figured a little introduction was in order, and at first, I asked her to interact with the unit while I did the driving.

The first thing I did was ignore every instruction. A few minutes of https://xkcd.com/1837/ ensued.

Because I wanted to drive home the point, you won't break it by ignoring it. If you don't feel like making that turn, don't make it. The voice in the box will just recalculate, it won't get annoyed, it has infinite patience and can recalculate for as many maneuvers as you feel like missing.

This is a crucial bit of understanding that I think many drivers lack, as they blindly try to follow impossible or unsafe maneuvers like the computer's word must be obeyed absolutely.

If I had a button which could project thoughts into other people's minds, but _only one thought_ and once programmed the button can never be changed, I think I might set it to "It's okay, just go past it, turn around, and come back." I think a huge fraction of traffic snarls could be eased by spamming the hell out of such a button.
That's a very common anti-pattern. :(

I've seen a lot of cases in the wild where useMemo was used to wrap closures, "for performance reasons", but that's obviously more wasteful than just using the closure by itself. I think a lot of people don't realize that.
The whole company was worth whatever it was worth (I don't remember). I was just the loudest partner there.
A fresh Huginn container idles at ~300MB of memory without any configuration on my part. A fresh node-red container idles at 30MB.