skysight-inc/HackerNews huggingface dataset:
Blackrock doesn’t have any lobbyists? Apartment consortiums don’t have lobbyists?
I lucked into my first job with a startup and never had to go through the job hunt as a junior candidate (other than through a few big company mass grad hire processes which were an absolute fucking joke, and thank god I didn't actually pass any of them), but this mirrors my experience with hiring juniors.

Every time I've done it I've been inundated with candidates. You pretty much have the pick of the litter.

Personally I'd prefer to hire a lot more juniors. I think most senior front-end developers are pretty rubbish at their jobs and have spent most of an easy career on autopilot learning bad habits and bad development practices. I much prefer to work with juniors, before those "senior" (mostly enterprise and consulting) devs have got to them.

The problem is it's just not possible to train juniors the right way fast enough. I'm confident I can train almost anyone with basic programming aptitude to be a 95th percentile front-end dev, but it'll take a year or two, and my already average productivity will tank during it.

Most managers won't understand or accept that. They would, except that there's always someone else selling them the "get people productive in 2 weeks!" bullshit, which you can't compete with. Big companies (the ones with the budget to train juniors) pay a huge amount of lip service to training, but are pretty much universally bad places to actually train great devs. They're good at turning them into average consultants that get flustered with their tools and stuck all the time, because they overengineer everything and never bothered to learn from first principles. (Then they give up and pretend to work while spending 8 hours a day whinging on HN about how bad the JS ecosystem is).

And if you're doing your own thing without managers to mess it up, then you probably live and die by your productivity. Unless someone wants to throw a stack of money at you just to create great devs without accomplishing much else, then it's not gonna happen naturally.

There's other impediments too. I love working in person with juniors, but not as much as I hate commuting. And I think training juniors is one of the few things that's much harder to do remotely.

This is why there's so much demand for great devs. There's just so few of them. The industry isn't set up to train juniors, and the places that can waste the resources to do it are the ones that have environments which turn them into idiots.
It's not that bad as long as you have a reasonable deployment process. If you can't rely on your production state being fairly up to date relative to the Terraform definition, then you've got bigger problems than dealing with TF statefulness.

If you know that TF changes are guaranteed to be deployed within X days of writing them (e.g., with something like Atlantis, or even a weekly deployment schedule), then you can put a date in the comment of when the tombstone was added, and clean it up either automatically after X days or occasionally in a semi-automated sweep.
"if you bust your ass like you're trying to impress the hell out of someone, people will notice and eventually, good things will happen"

In most industries, most of the time hard work no longer pays off. It is not rewarded, it is exploited. The people who would notice are increasingly sociopathic and short-highted, because that's how you make it these days.

Hard work can still open doors, but you have to be smart about who you work for.
> Even today, as good as LEDs have gotten, their color rendering is still noticeably worse than incandescents. (The highest scores are around 80-90 CRI, an old-fashioned bulb is the standard at 100.)

This is false.

Good quality LEDs are >90 CRI, and the higher end ones are 95+. These are not common because everyone is busy selling/buying the cheapest crap they can make/get, but they're definitely not hard to get either

Ikea Ledare is a widely available >90 CRI bulb. The Ledare is also flicker free and has a metal heatsink base and good reputation for longevity/reliability (on the standard 800lm ones, the higher power ones seem to be more hit-or-miss depending on the exact model). However 99% of people aren't willing to spend $4-5 per bulb.

High end COBs, like the Bridgelux Thrive, are pretty much perfect. Close enough to 100 that the difference doesn't matter. The Thrives have been out for a number of years now. They're not much more expensive than normal LED COBs. These sort of emitters just haven't made their way over to consumer products yet, because (sadly) nobody cares about light quality so there isn't much of a market.
Maybe you could use sea water to cool a coolant?
nods head

nods head

nods head

nods head

stops playback

That, that right there!

restarts playback

nods head

See how he shifted in to the D-sharp-potato chord from the G-minor-underage chord?

nods head

nods head

Let's listen to the giggle track for a bit...

etc
DuckDuckGo browsers don't block Microsoft data flows, for LinkedIn or Bing
It completely ignores that tax rates do not exist in a void. Rather, states are in tax competition against each other, so it's not about absolute tax rates but relative tax rates.
I'm someone who qualifies as a junior developer even though I have a minor in CS, a BS in math, and a BS in mechanical engineering.

My career has been an interesting journey. I've worked in sales, taught high school mathematic and computer science, and led technical SEO for multiple successful startups.

I left all that in January to pursue my dream of becoming a full-time frontend developer. My wife and I have two daughters and this is my opportunity to show them some risks are worth taking.

I'm not fooling myself into thinking my first developer job is going to fall into my lap, but I'm confident it's out there and I'm going to keep writing code and challenging myself all day, every day until I find it.
As an aside: it's probably worth noting for people who didn't read the article and are less familiar with the terminology: a UI framework is like Bootstrap or Material Design, and is broadly orthogonal to a web framework like React or Vue. You can use Bootstrap with or without React, and vice versa - this article is just making the claim that you don't need Bootstrap and its ilk, rather than the all frameworks are bad!

I'm increasingly of this mindset the more I develop stuff for the web. UI frameworks claim to at least partially solve the need for a designer (or at least a front-end developer) by providing a consistent set of components that fit together and work together. Except every project I've inherited that uses them has ended up with a jumble of different styles and features as someone decides this style of textbox looks good there, and that style of button looks good there, and so on. Let alone the layout, which tends to be a case of "throw things at the wall until it looks good enough on all the screens I've tested".

Essentially, the claim of UI frameworks seems to be: if you use this, you can skip, or at least significantly shorten, the visual design phase of your project. And in my experience, that claim has never been true. That phase is necessary to ensure that an application looks and feels consistent with each other. My projects have always looked better when I've sat down beforehand (ideally a real designer!) and sketched out outlines of every page, collected all the elements and organised their styles, created rules for any atoms, etc. Ideally, I've got a list of everything that I'll create, right down to an explicit list of every font and size combination that I'll need.

But the irony is that once I've done all of this, I don't need a UI framework any more. Partly because it will be a pain to wrangle all of the explicit designs into the UI framework styling, which may be configurable, but rarely that configurable. But mainly because I've already got the consistent design that I wanted to get with the UI framework, so now it's not bringing anything to the table. If I just shape my designs into some components, I'll basically end up with my own UI framework, but specific to my application and therefore usually a lot simpler, with fewer knobs and dials to turn.

In my experience, the value for UI frameworks is principally for people who absolutely don't want to do any design at all. They're basically a zero-code design solution, and like any zero-code solution, you're never going to get great results, but for personal stuff that you're maintaining alone, or for "MVP" style projects that just need to get out the door, there's some value in being able to get things done quickly. But if you're working on a more long-term project with other people, and you want it to look at least halfway professional, I don't think UI frameworks offer much help at all.
A 13 year old would have made money in real estate over the last 5 years. One could have literally selected a property at random and made money, even one that was trashed.
Focusing on my light exposure has helped my delayed sleep phase disorder immensely. I used to sleep from noon to 6pm. I now sleep consistently between 4 am and 11 am, a huge improvement.

I make sure I get plenty of natural light immediately when I wake up and continuously throughout the day.

I set my bulbs to 5000K on full-brightness during the day, then dim and change them to 2200K in the evening. After 10pm I do not use ceiling lights, only lamps with hue bulbs. After midnight I change the lamp bulbs to red and set them to 10% (I use HomeAssistant to make automate all this).

An hour before I go to bed, I use no lights other than a small flashlight with a red LED on the nightlight setting.

I avoid all electronics after midnight other than my kindle on it's lowest light setting.

After making all these changes and sticking to them for 5 months I no longer need to take any sleeping aids which didn't work well anyway. The hardest part was changing when I workout, eat, work, etc. as I was so used to doing all those things overnight for the past 10+ years.

This conversation was very insightful to me: https://vid.puffyan.us/watch?v=oUu3f0ETMJQ
I understand some may not like the interviewer, but here is the wiki on Dr. Samer Hattar: https://en.wikipedia.org/wiki/Samer_Hattar
If you say so. That certainly didn't seem the case for the charities we spoke with when we did our research. Quite a few were not set up to do this, but the ones we chose did seem to want the donations.

That said, that's orthogonal to the point. The GP said charities could set up crypto wallets to accept donations and as I pointed out, some already have.
Have a look at Microsoft's Project Natick [1]

[1] https://natick.research.microsoft.com/
The delete this approach is imperative though. If you aim to be declarative you need a way for the tool to be able to determine actions necessary to go from current to new desired configuration. You need to store previous applied config somewhere, to be able to determine if something needs purging in a declarative way.
I don't see why a GC couldn't be told avoid stalling in critical code paths. From a practical standpoint, non-generational GCs have no hard requirement to ever stall.
From the article:

Ansible, Puppet, etc. don’t have intermediate stores of the hosts’ configuration, but then again they are used for different things.
Linux: Is RCU Watching?
We know that if state is not used we can't handle deletions without affecting everything else.

So here's a solution that could satisfy stateless proponents: we don't keep state for anything that we deploy and instead we should store state for everything else so we will know what not to remove /s

But seriously, as things are right now, state is necessary, it could be possible to get rid of it, but that would require cloud providers to designate their infrastructure that way.

And if they do that, in practice (because components building the cloud service likely are stateful) we would end up with a system with declarative language which in reality just abstracts away the state from us. Kind of what AWS CloudFormation essentially is.
Hi,
author here. Thank you very much I really appreciate it! :)
The web has existed for at least 22 years and we still leave such implementation of "standardised" web APIs entirely to the vendor's discretion. I wouldn't call that converging towards consistency or stable.
Rick's goal is really to spark the interest, not do in-depth analysis
> manually calling malloc and free is ridiculous in 2022

Why though?

I use C++ and I use a variation of malloc and free all the time. The arguments I hear against malloc is:

1. You'll leak memory.

This is super easy to solve in literally 300 lines of code or less. Just have a vector of your memory allocations in debug mode. Then call a custom allocator and free function that adds an allocation and removes an allocation from this list. At the end of the program, print out any allocations that are in the list that never got freed. You can use macros to print the exact file and line number that allocated the memory and then fix it very quickly.

2. It's not typesafe.

So just use new if you're really concerned with type safety and then overload the operator to get the benefits I described above.

3. It's unsafe.

How is this any more unsafe than RAII? Aren't there still the same risks involved?

4. Nullptr exceptions.

Once again, same problem with smart pointers. Technically if you're not transferring ownership you should be passing a const reference or a raw pointer rather than a smart pointer anyways. So the end result is the same.

Maybe I'm missing some huge thing, but I have not heard any convincing argument for using shared pointers over malloc. (And yes I know you should really use new if you're not using POD because of constructors and all that stuff, but I'm equating new and malloc for brevity).

Lastly, I've found that when I use shared pointers I get lulled into a false sense of security and get sloppy. It's a good thing to really think about why you're making a specific memory allocation. Doing it manually forces you to consider whether there's a better option like static local storage or something. In addition, as long as you have a memory tracker implemented like my answer to 1, you never have to spend time worrying about memory. Just today, I forgot to free some memory and I was immediately notified when I ran my program and it printed a warning after I closed it with the leak. I cleaned it up in 5 minutes, end of story.

Edit: I forgot to mention, what's the one huge pro to using new/delete or malloc/free over smart pointers? Explicit control over when memory gets allocated and deallocated. If you use smart pointers everywhere, won't you eventually have the same issue as GC? They go out of scope at random points in your programs lifetime, and you get "random" lag spikes from memory cleanup. The whole point of using C++ is to have control over when this stuff happens! If you don't care when it happens, why not use the GC?
Engineering management is a culture. Cultures have shared mythologies and values that bind the tribe together, that tell members who they are and their place in the world. Two key commitments of this particular culture are metrics and standardization.

Otherwise rational and pragmatic leaders will either pretend not to hear you or look at you like you have three heads when you make an argument that seriously challenges one of these commitments. Very smart ones have some trite stock answers as defense mechanisms. This is because you are committing a type error. This kind of argumentation is valid with respect to rational strategies adopted instrumentally towards goals. The commitment to uniformity is deeper than that.

Scrum is the recognized best practice; we make sure that all tendrils of the organization follow a standard and that this standard is aligned with recognized best practice because that is the kind of people we are.
See I think, whether it's outliers or regular people.

Use 100% of your brain. That's the most important thing.

Revv the engine to 100%.
Im gonna ignore the fact that moving state to other place completwly misses article point, but:

Two Users create exactly the same resource with the same tags.

Which one should be removed by Terraform?

Now either way lets ignore that.

You want to refresh infrastructure to know what to do. Without the state you have to go through EVERY API CALL on every service even those you did not create to be able to determine the whole state of the infrastructure which would be super super long action.

Without dependencies you would also have to maintain and build dependency tree EVERY TIME you would try to apply infra.
Same. We lived in SF for 10 years and saw something like that maybe twice? On the whole the city is pretty clean, and most of the dirtiness is because it rarely rains. That's what's keeping many of the other popular cities looking cleaner.

For reference we've been in DC for a year now and we saw someone literally pull their pants down and poop in the middle of the sidewalk the other day. I don't think that's any indication of the city though.

I think it's the kind of thing where many folks visiting would end up in the rougher part of downtown, see something unfortunate, and not really experience the rest of the city. And then the whole city is painted with that brush.

The bay area has many problems (housing policy is probably the worst in the country), but it's also a beautiful and vibrant place to live.
Standardized code generation in general is a huge opportunity. My preferred solution would be for everything to speak protobufs natively, and then you wouldn't need to do any other generation - you'd do what they do internally at Google and have tables with 2 columns (one for the key, and one for a fat protobuf that holds all the actual data), file formats like RecordIO as the default pipeline building block, and Capacitor [1] for columnar storage. But in the absence of good query syntax and columnar file formats that can handle rich data types, code generation it is - take the proto file, flatten it out (this is the tricky part, if you have repeated field names in a nested object model), and then you can generate all kinds of stuff from that:

* A table/column schema, which you can automatically synchronize into any DB backend you want via plugins

* Read/write logic in various languages - not an ORM, but a struct that represents a single row and handles the boilerplate.

* Maybe some kinds of richer query/join logic? If you go too far this becomes another ActiveRecord, but I think there's a middle ground.

* Batch pipelines with standard semantics - sort of like a materialized view, but computed via your big-data pipeline of choice rather than in-engine. Imagine that you have table A with 30 fields, table B with 15 fields, and you want to generate a downstream table with all 45. I think it's feasible to have a composable, declarative syntax that lets you create the 45-column table plus the pipeline that populates it with about 3 lines of configuration. Hard to turn into a product, because so much of that pipeline will depend on org-specific tech stack choices, but at the limit the "data platform engineer" could be entirely automated out of 80% of their job (and therefore be able to focus on more interesting things).

[1] https://cloud.google.com/blog/products/bigquery/inside-capac...
i am not sure, i feel that helping individuals remotely is sort of like giving people fish instead of teaching them to fish. i'd focus on projects that actually have an impact on a community by helping the community to develop themselves. the best i can think of to help an individual is to offer them a job, but other help ought to be more community oriented. unless you have the ability to actually move to those places and help through building friendship. but that is much harder to achieve.
I know a friend who made $14M shorting LUNA from $50 to all the way down to nothing
The risk is not the cost of the controller or the subscription service fee it's the cost of the games which for AAA is $60 a pop. People who bought those games on Stadia will soon have nothing to show for it.

My understanding is subscription services from Microsoft, Sony and Epic give free games every month which you own once you have downloaded them. By contrast Stadia is a subscription which gives you the right to play games on their servers but you have to purchase the games first, and if the servers get switched off (as will soon happen) all you have afterwards is a dead controller and your memories.
So this saves energy because cooling with water is more efficient than with air.

The Data center also needs to add water cooling for all power supplies and chips for maximum efficiency.
The fall of TerraUSD took everything from some stablecoin investors
This is what mediocre engineers that go into management keep repeating
It is such a powerful factor, it cannot be left out.
You don't need to store the full old configuration anywhere other than as part of the current configuration. All you need is a list of IDs that existed in previous configurations. Something like:

current_tables {
TableA {
Column1[string]
Column2[bool]
}
}
removed_tables: ["TableOld", "AnotherOldTable", ...]

Depending on your ergonomic preferences, you could also accomplish that by keeping the old table configs and adding an "is_deleted" flag. And once you've done one deploy, you can delete all the old tombstoned configs.
Author doesnt seem to understand all cases where state is simply required.

Terraform is not perfect, but looking at solutions we have available on the market -> its years ahead of competition.
AGPL does nothing to help here. AGPL simply requires you release the source for any changes. AWS is still free to host and sell the software without contributing any funds back to the project.
https://en.m.wikipedia.org/wiki/Server_Side_Public_License

What are you on about? How is sspl closed source???
Serious software bugs and hacks are not exclusive to smart contracts. Just look at the Equifax hack or the 737 Max tragedies. If you only look at the worst outcomes of a system of course you’re going to assume it’s all worthless, but that’s not a fair representation of the reality.
Smart contracts allow anyone to deploy an application to a global computer that will host the software indefinitely for all to access, with essentially zero downtime for five years running. That global computer will also take care of 100% of your logging and accounting for you and replicate it on millions of nodes around the world within seconds.

Banking APIs are a total integration nightmare, while smart contracts can easily integrate with one another through standard open source interfaces, allowing for contracts to build on top of one another’s code and liquidity in unique ways and in a fully transactional nature due to the shared execution layer.

You also don’t have to trust the developer of a contract to do what they claim, because the protocol’s code can be publicly audited and transactions can be simulated.

All I’m trying to say is yes, smart contracts are innovative - these are just some of the ways that they have improved on traditional computer programs.

Of course, you do have to trust a network. The 2016 hard fork was problematic, but Ethereum has come a long way in 6 years and is magnitudes larger in scale, with no similar breaches of consensus since. It has proven itself to be extremely trustworthy.

I would trust Ethereum, wherein every single fraction of a cent can be publicly reconciled and accounted for since inception, over Wells Fargo, which is involved in ongoing class action lawsuits over fraudulently opening checking accounts and stealthily reordering transactions to increase overdraft fees.
Most exchanges have some way to short most popular coins

Decentralized platforms like DyDx offer leveraged longs/shorts on a lot of popular pairs as well

Another way to theoretically short a coin is to borrow a lot of it against a stable asset on any asset lending platform like AAVE
Alleged insider trader caught after googling “insider trading” (2017)
FWIW, Git (since v2.13) uses an SHA-1 implementation that detects known collision attacks.