skysight-inc/HackerNews huggingface dataset:
I was pretty excited when I originally learned about ORMs. But I quickly found that their usefulness is very limited in the enterprise, where most of my career has been spent.

You will likely find, as I did, that enterprises literally have thousands of databases of all kinds and many crazy data models.

They have tomes of huge SQL procedures that are still to this day running their business processes. Maybe even a nice older gent that is the only one that really understands how any of that shit works?

If this sounds familiar to you, then don't waste too much time on ORMs. In my experience, they're only good for mapping out your POJO or POCO objects and performing simple CRUD operations.

Use them to stand up simple REST routes that do CRUD on your entities. That can be the API that you use to do development and testing, and possibly even use those CRUD routes to do larger business operations.

But in reality, the business "requirement" is going to come down to you, the developer, in the form of some old terrible blob of shit SQL. Two thousand lines. Ten thousand lines.

You're probably not going to bother deciphering all that and re-writing it. The ORM is going to barf all over itself if you even try to use its API to execute that query. Even if you could express all those joins and case statements via the ORM, it is going to pick an execution plan where the query finishes sometime after the next Hanukkah.

At this point, don't bother with the ORM. Drop down to some driver where you can just run raw SQL and run the raw SQL.

Create a REST route that just calls this whack query directly.

This all may sound cynical and it is. But I know what I'm talking about. Do yourself a favor and remember what I said.
Quick survey for folks:

How long does it take to push a spelling fix out to customers?
(In)convenient Truths About Applied Machine Learning
People with residential property often don't want the supply of such property in nearby area to increase.

Property owners, who are also voters, have incentives for keeping zoning a problem.
A test architecture for DevOps, CI/CD, test levels and automation
Last time I checked x86 decompilers were not that useful.

They were producing code that is not compilable, often completely failing on more complex, translating code compiler boilerplate into code.

This was a while ago so maybe things improved since then.
I'm surprised with comments that puts all the blame on the investor and make the impression that authors never do similar things (rely on systems they don't fully understand). The thing is, software is all around us, some is more or less harmless (web browser) and some can create a lot of damage (self driving car, buggy aircraft controller, bank software).

The thing is that we generally have absolutely no clue what is the quality of the piece of the code that is controlling our destiny right now. What if the airplane we are flying right now decides to dive? What if bank looses all our record? What if Nest thermostat goes crazy and burns thousands of dollars on heating during your vacation? What if your 401k disappears because of the obvious bug in the bot's script? I can go on and on.

To be able to live in this world without going nuts we have to trust that those systems are correct and if something goes wrong we do need a legal way to punish responsible party (if there is a fault on their side).

The weird thing is that we still treat software and real engineering differently. If you enter the bridge that collapses under you feet because it is a bad design - you will sue. But if you trust a company that sells a superhuman trading bot which makes silly decisions and loses your money -> it is your problem. Following this logic - don't step on the bridge without reviewing the design and making sure it is safe.
Ask HN: What would you learn/do if you had an entire summer free?
An app for recovering art looted by the Nazis
Was there a book used for that course? If so would you recommend it?
In the US the home owners policy like auto insurance isn't to protect the home owner. It's to protect the bank holding the mortgage.

The flip side of that is the risk of a geek installing a power monitor without permits pales in comparison to someone plugging a 1500 Watt wall heater an an ancient wall outlet.
In F#, you get type providers like

https://fsprojects.github.io/SQLProvider/

or

https://fsprojects.github.io/FSharp.Data.SqlClient/

What is not obvious if you have never seen this before, is that this dynamically connects your database WHILE you are coding and automatically gives you auto completion, fully understands the types, and will give compile errors if your code doesn't match the database. Feels like Magic (or LinqPad if you have ever used that )

The only downside is you need a DB available for your CI build tools ( which is not too difficult to do ). Some F# people will also opt for a light weight mapper like Dapper.
> They used to do that a long time ago.

Pretty happy they don't do that anymore, then. It sounds terrible for security.
“Data Manifesto”
Enable ExistentialSpecializer by default · Issue #19820 · apple/swift
> I found myself doing it when I get quotes for home repair or construction.

My quite recent conversation with a contractor about estimating our home renovation project went more or less like this: "Demolition: 2 days, foundation: 3 days, ground zero: 3 days, exterior walls: 3 days, floors: 1 day, ceilings: 2 days, attic and chimneys: 2 days... so about five months in total". I felt right at home and want to hire them. The jump from how much time each tasks seems to require in pure work effort to how long it may realistically take given the unknowns, downtimes, logistics and various overhead seemed similar to the way I do estimates. An hour here, a day there, another four hours for that... yeah, I need two weeks for this task.
not. there that was simple.
It's not a "zoning problem." It's much simpler than that.

* Airbnb flophouses are not obliged to conform to fire, health, or safety codes, and they don't pay taxes. Right off the bat, they're scads cheaper than hotels because they don't bear those costs.

* Visitors and residents have very different incentives. Tourists may wish to stay in cute residential areas, but they are not necessarily interested in being neighborly -- they're not particularly invested in the comfort and safety of the people around them, because they'll be leaving soon.

* People do a lot of gross stuff in a hotel that you probably don't want to encounter in your apartment building. Drugs, prostitution, loud parties.

No amount of "zoning" is going to make the commingling of apartments and hotels attractive to full-time residents, nor will any change in "zoning" make flophouses less profitable.
Flutter code: https://github.com/flutter/flutter

and docs: https://flutter.dev/docs
Never fear; the Cruze has been discontinued, along with the Volt, which was frequently confused with the Bolt.
Wow, that certainly took a sharp turn into melodrama at the end.

What happened to truth is that there wasn't much clarity to begin with and then the schedulers found out that they could meet expectations by using that ambiguity. Mystery: solved!

Now lets see if they complain about current and electrons going in opposite directions...
> Supports XML, YAML, JSON and SQL formats

XML is the default on the page, but wow the SQL is _so_ much shorter and more readable than the others! To the extent that I wonder what's the point, the obvious is machine readabaility, but one not three, and is SQL really so machine-unreadable that it's worth the extra depth and complexity?
Interesting device. I think RAM shouldn't be the bottle neck, but CPU/GPU speed and memory might be. Do you already know how to get your own software on there?
I'm playing with the PIC10F320 at the moment. Minimalism is fun. $0.50 in 1 off quantities. 6-pin SOT-23 package. 16MHz. 0.5K of program space. 64 bytes of RAM. Waveform generator. ADC. Timers. PWM and the coolest thing a configurable logic cell which works while the CPU is asleep.

I've got a semi-working morse iambic keyer in that and it uses 40uA of current running flat out. I'm working on sleeps now. I reckon I can get it down to 100nA average based on the wake time and 20nA sleep current. I can't actually measure down that low even with my 5.5 digit HP 3478A
I've thought of trying this before with a toy sterling engine and a tinfoiled satellite dish. You can make ice that way when the air temp is up to 9 or 10 celcius if you put a shot glass of water in polystyrene foam with an opening at the focal point of the dish.
You can literally talk to any employee if you want to buy something, and they'll whip out their Square-equipped iPhone/iPad.

There doesn't need to be a dedicated employee for sales. Just ask one of the employees roaming around the stores.
You essentially pay for the software upgrade gurrantee by Google.
you seem pretty confident in predicting that outcome - why?
The emulation is a feature with well understood trade offs. One of the point is to decouple as much as possible from the OS, I believe one of the advantages is that in flutter's mdoel it should be easier to make one-off apps that need less updates.
Fluorescent lamps have the same issue with power supply (but not heating). And compact fluorescent bulbs had the same issue of only bad power supplies being available.

We urgently need some standards over electronics longevity, like the ones we have over power consumption.
Yes this is my experience as well. ORMs are really nice for simple queries, not so much when queries start to get more complex.
where did you come up with 25,000? The article says the LEDs were supposed to last at least a decade, which is the length of the warranty.
The low color quality, specifically the very warm hue, is a feature for nighttime lighting. Blue light messes with sleep cycles of humans and animals.

The very narrow spectrum benefits astronomers because it's easy to filter out light pollution from low-pressure sodium lamps.
One does seem to get a pass from (possibly multiple) financial failures. In fact, one very high profile American with a history of bankruptcies comes to mind...
IMO, UI frameworks that try to mimic native components virtually always fail, because they end up being an almost-but-something-I-cant-put-my-finger-on-feels-wrong situation, e.g. performance isn't quite there or the physics is different.

Much better IMO to go for a "minimalistic", neutral interface where people won't always be comparing your app to better native controls.
Flutter apps can now target the chrome browser (preview at this point). So a chromebook can run Flutter apps via the browser OR via an Android Flutter app.
Is this not the case?

Not really, no. This whole industry is very fad driven, and there is a tendency to always aggressively jump on the "new shiny"... and once that happens, anything deemed "old" gets treated - by some members of the community - as though it is completely dead, obsolete, verboten, whatever. But rarely is that actually the case. Quite often "old" tools and techniques are quite useful for specific things.

As an example, the box-end wrench didn't become useless because the air-ratchet was invented. As another commentor said, "use the right tool for the job".

All of that said, sometimes the older techniques do legitimately have major shortcomings, or limitations, or may simply be superseded by better tools. As somebody else said, one of the biggest limitations to some older approaches to "expert systems" was making them scale. Some of that we got for free thanks to Moore's Law. In other cases, we may still be waiting for some new algorithmic breakthrough or whatever.

Anyway, things like CLIPS, OPS5, etc. still have uses, even if they didn't turn out to be the be-all end-all of AI as they may once have been perceived to be.
Why Capitalism wants to eat you
Accurate time estimates need to be associated with specific individuals. Someone who is familiar with the relevant code is simply faster than someone who is not. Further, interruptions don’t just cost time, they also reduce productivity around them.

Now, you can try and do effort estimates using hypothetical people. But, at that point you have already given up the possibility of an accurate answer.
are you sure that you've gone through some critical thinking before saying that?
As a user, I care quite a bit. As a developer, though, I get paid to tell people that their software doesn’t follow platform UI conventions and I run their code through mental checklists (“does the title animate properly during a controller pop, does this custom view break accessibility”) so I think it’s pretty obvious that I have a very specific slant on this issue. Keeping that in mind, I think that many users do care but they don’t necessarily make it the only thing they care about, nor are they particularly good about vocalizing their concerns. To them an app is just “weird”, or “unusable”, depending on what the framework actually breaks.
I am using a lot of apps that still have a jellybean feeling to them, if it does not crashes and it is not a swipe-hell (I have an underpowered phone) it is fine to me.
If you just use that all the time, your coworkers will rightly complain that it's not idiomatic or using the tooling available in code review.

I'm all for SQL, but if the project's set in its ORM then it doesn't make sense to do ORM.raw(...) or whatever out of preference alone.
I'm talking about the commentariat as a whole. It has become polarized and negative and absolutely infused with groupthink, which is a very specific concept.

Too bad you can't accept the truth.

And speaking the truth to the willfully ignorant is not bragging, and the ad hominems you just slung at me prove that you're the petty one here.

The first step to fixing problems is to admit that they exist. Until then, feel free to keep downvoting folks like me and pretending that everything's ok but know that that is NEVER the solution to any problem, especially a software systems problem.
For backlighting LCD screens, sure. But for street lighting, I don't want a good CRI. I want to minimize blue light, harsh shadows, and glare. The old yellow sodium lights were nice. The new LED streetlights around me are terrible.
> The new LED lights will consume 50% less electricity than the existing High Pressure Sodium (HPS) lights.

Not sure how they're going to achieve that. LEDs produce 37 to 120 lumens/watt, HPS and LPS produce 50 to 160 lumens/watt. The sodium lamps lose out only because they are omnidirectional and a mirror is required to aim their light down, so some of the light is blocked by the lamp itself. But overall LEDs don't save 50%.

> Compared to HPS lights, LED lights make it easier to see the contrast between an object and its surroundings;

This is true, but it's a red herring. While that might increase safety in one regard, the light cast by an LED is very blue, which affects both humans and animals, making their bodies think it is still daytime. This disturbs the natural hunting and migration patterns of the animals, and more importantly, disturbs the sleep of the humans.

Sleep deprived humans are for more dangerous than ones that have a harder time detecting object edges.

Also, shouldn't we consider quality of life issues when making these changes, and not just efficiency?
I fell out with a lot of the popular ORMs and decided to create a very lightweight query library with the features I really wanted, namely an ENTIRELY statically typed query interface.

Link to fully working sample:
https://github.com/cjdell/ts-sql

The idea is that it should be impossible to write an invalid query, and also to ensure the returning data type is exactly representative of what has been queried.

Currently using knex.js to actually generate the SQL behind the scenes. It's experimental but I'm already using it in a couple of projects. I enjoy the fact the my queries have so little boilerplate now. :-)
In my experience ORM always shoots you in the foot when your use case exceeds what an ORM can provide. ActiveRecord has been a terrible mess for us because the facade masks the underlying behavior (transactional behavior) or often doesn't do what it advertises (commit hooks, timestamps, auto-increment).

ORM is great for startups trying to build out an MVP, but beyond that scale it's an anti-pattern.

The best solution I've ever seen is jOOQ, which is essentially typified SQL. Your queries have to pass compilation, but the DSL is essentially SQL itself. It's an added layer of security yet still manages to feel like it's easier to write than raw SQL.

More languages need a jOOQ. It's so good that I'd choose Java just for the ability to leverage jOOQ.
Frankly, I have much better things to do than writing my own ad-hoc, bug-ridden implementation of Lisp^h^h Make.

I did look at SCons years ago, which is a Python-based build-system, but as I recall it ended up being the worse of both worlds by attempting a declarative syntax that was marred by its imperative warts.
> Now, you didn't watch Rauf play, so all you have to go on are the stats. I did. I was a huge fan of him in college. He averaged over 30ppg as a freshman (his scoring dipped in year 2 because he had to share the court with Shaq) and had the prettiest stroke I've ever seen. He had some of the best ball handling skills since Maravich. He was a basketball savant.

> So what happened?

I mean, mostly what happened is that he got blackballed out of the league for refusing to stand for the national anthem, but also, yes, I don't think Phil's comparison was crazy. I do think Abdul-Rauf, in a modern run and gun/SSOL offense would have been Steph-before-Steph (I also think Nash would have been much the same if he'd hunted for his own shot more).

Oh! Forgot to add, tho, that your initial comment was wack; every player is limited in some way and Steph is probably the best shooter who's ever played and he bends the gravity of the game in a way that basically nobody ever has before, which would be reason enough to put him in the running for MVP even if he wasn't routinely among the leaders in counting and advanced stats.
My experience with Flutter was it was only really suitable for UI code. Lack of efficient parallelisms among other things really kills the ability to do non-trivial work. If you happen to be able to stay in Flutter's async APIs then the illusion holds up OK, but otherwise you have to just kick over to native code to do anything interesting. At which point the multi-platform story obviously falls apart.

It's really not unlike the web platform. If you're in the semi-narrowly supported "good" path it's great, but if you hit the limits of things you're pretty much immediately out of options.

And also really bad interop with some really critical components like WebView.
Really interested in your blog post, especially on generating types for the database. Can you give some short insights on how you achieve it?
I think this is pretty accurate. I think psychedelics are basically like the electrical box in your house, but for your brain. You can flip the breakers and see what happens with different circuits disabled. Since normally everything in your brain operates simultaneously this can be very instructive for learning what's happening.

Once you come back to sobriety, you can then use what you saw to start training yourself to move your attention between those circuits, giving you basically better brain control.

Neural nets are trained on the tiniest tiniest slices of human experiences so their feedback has a similar character to partly disabled brains.
Maybe. On the other hand, historically there have been too many 'slap on the wrist' punishments that don't even reach the total profit that was by the illegal activity....and that definitely sends the wrong message.
Related, we extended an offer out to a younger lady who did well on our interviews; pretty sure this was going to be her first job outside of school. She declined our competitive offer and went with Uber, right smack dab in the middle of the media frenzy on what was happening at Uber. I heard that she really liked us but wanted the bigger name on her resume.
Did Jung mention anything about alternating between both? Am I right in thinking this is a spectrum so it's perfectly fine/possible to be somewhere in the middle or is the argument this really is an either/or?
Even with a MEE your Homeowner's policy may deny a claim due to non-UL listed components installed along the mains.

I won't touch electrical on my house and will happily contract it out to a license+bonded electrician for the exact same reason.

That said really cool project and Kudos for tacking it, just make sure your smoke detector is working :).
It starts under 1s without modules. That is enough fast and still infinitely distant feature-wise of cmd.exe. You can make it go over 1m+ if you have a lot of modules to load, particularly with method of writing modules where you put functions into separate files (and no SSD) and/or some specific cmdlets in the profile. It can even be worst then that in particular environment - for instance within VSCode some of my scripts can take several minutes loading (while being otherwise instant).

In other words, you can balance your environment for speed vs features.

I believe Pwsh will get considerably faster in the future given that optimizing it will pay out on nano server which currently boots faster then PowerShell is loaded in it afterwards (which rly sux).
again, why do you think simple compliance precludes the possibility of police violence? I can think of several examples literally off of the top of my head where this was not the case, many of which were already cited in the comments. So, why are you so sure that this would have been the outcome in this case?
It's not a surprise that a decent number of Bernie voters voted for Trump instead of Hillary. At least I saw a lot of highly upvoted comments on Reddit from people saying they were going to do that after Bernie lost.

Also good: https://www.npr.org/2017/08/24/545812242/1-in-10-sanders-pri...
Why would Honda invest in a company 80% controlled by a competitor? Why would GM let Honda invest?
I don't know about (any) Google data breaches but the Facebook data breaches are neither fake nor sensationalist.
> but how?

I think it's quite simple - subjective experience. Under the assumption that others experience things (much like you do) you can just ask or infer what would they prefer, and what would cause pain. You can be wrong about what would they prefer (and they can be wrong), but it doesn't mean there's no coherent morality hiding under such mistakes.

And I don't think that it's much to assume. I think it's no more that the general assumption that "causes have effects", or that there are any invariants we can attribute to the universe (like laws of physics).

Note that this notion of morality extends beyond humans - for example to animals and potentially AI systems.
A Quantum Origin for Spacetime
But it does not matter, if google download all the images when for all your emails then showing them to you is just a fetch from their own servers. Similarly to the ad-blocking extension that clicked all ads on the page (in isolation) so that tracking would be useless.
https://www.cnet.com/roadshow/news/waymo-lyft-self-driving-c...
Does qualifying for that report help Tesla in any way?
>Seems a textbook case of using a view for sharing query logic.

Views are just terrible outside of data analyst style work. Unmaintainable, restricted to SQL structures, require absurd hacks or custom dlls, not properly source controlled, difficult to perform performance analysis on, hard to update.

You can't combine views easily, you can't cache results, you don't get static type checking.
I had just read this and then my colleague came over and showed me his Pixel 3a. I thought they just released it?! Turns out it was delivered in an hour and it was just ordered after the announcement. Nice.
Only 355687428096000 years old? Mustn't have even finished college!