skysight-inc/HackerNews huggingface dataset:
Can't help wondering if some of the fall-off in Rails usage is due to a similar attitude toward deprecation of formerly supported APIs, which has made upgrading large Rails apps to a new major release a pretty significant project.

Things they've removed have included the entire original ActiveRecord query API, and the RJS templating system for Javascript. Those two required rewrites of significant portions of any app that tried to bridge the transition using only supported APIs. And every new point release (say, 5.1 to 5.2) brings a enough more minor deprecations to make an upgrade not a task, but a project. That's forcing a lot of significant rework, and every one of those gives people a chance to just take their project elsewhere.

(There's actually a third alternative. The release after these two major components were removed from core Rails, they were still semi-supported as add-on libraries. In both cases, core support for those was ultimately cut off -- but people with old apps could try to keep at least portions of them working to minimize the damage. I've done that to help avoid rewrites in components of an older Rails app. I didn't support all of either old API -- for example, rewriting uses of deprecated options to `belongs_to` was easier than keeping them on life support. But on balance, it was easier than the rewrites.)
The same argument doesn't work for your physical inbox, right?
Didn't we already learn (post-WWII US) that aluminum wiring is an unreliable idea?
The Joker: How a “Typical Hoodlum” Character of the ‘40s Attained Cult Status
>I think the evolutionary argument, as usually stated, rests of a big mistake about what nervous systems, immune systems, genetic regulatory nets, etc., evolve to do. This is not transmit information from one place to another, or be "flexible" in some abstract sense, but cause actions which enhance the fitness of the organism they happen to be in.

Biological systems don't evolve to do anything - they randomly mutate and are selected by a stochastic process that loosely correlates with Darwinian fitness. Chaos is the default state of all matter; most systems operate on the edge of chaos not because there is something desirable about that state, but because any amount of order emerging from chaos is highly improbable.
It is a very useful service that they provide, there are many homes that are difficult to find in the United States and around the world.
good information thanks for always telling us about these contents
Haha, you don’t but I do know you from the Pythonista list.
If it’ll make you feel better, Maggie Thatcher killed-off the UK’s then-nationalised BT’s plans for nationwide FTTP in the late-1980s because it was anti-competitive to the nascent cablecos who were busy carving up our pavement (sidewalks) laying coax: https://www.techradar.com/news/world-of-tech/how-the-uk-lost...
> "$language developer" is only slightly more useful

I would argue that this is not a useful distinction at all. Any good developer should be able to pick up any language quickly. At the companies where I've worked, even the interns have no expectation of knowing the language before they're hired, and the vast majority of them learn quickly enough to ship useful code within their ~3 month internship.
> Firefox is a consumer product, unlike BSD. I know this is disagreeable on this forum, but RMS' values although certainly commendable are not super useful in building popular consumer products. As evidenced by absolutely negligible proportion of consumer software created with values as uncompromising as RMS (measured by the number of users who actually choose the software, not people who use it without knowing, because that has nothing to do with consumer products or values).

Have you ever heard of Krita (GPL3)? VLC (GPL2)? Inkscape (GPL)? They are far from being negligible and they have a huge consumer following across the world. So I find the claim that Free Software principles are not super useful to build successful consumer products largely false. And such software is actually chosen by end users for the examples I provided (and there's more), because of their intrinsic qualities.
You would have to be insane to move because you've recently been given remote work privileges, especially in the middle of a recession caused by an ongoing pandemic.

This is why I'm staying put in San Jose, at least for now.
I am observing many companies have released their courses. In the process what any of that makes them special?
Why some people may be ignoring you
excellent article, it is really useful!
As of now, what we have here is a finished process of firing a customer, who got their money back and got their data back. Nothing was deleted or withheld.

The quick toxic behavior got what it deserved (except for insults, which I find unnecessary). Learn your lessons, both sides. Be polite and give time to respond, don't act quickly, and always part ways with people who think mindless emotion or self-centered thinking is a good part of business.
If nearly 40% of Americans aren’t working, what are they doing? (2015)
I guess I am stuck trying to understand if the assertion being made here is that folks who use a library to connect to PostgreSQL are not really writing software, but maintaining vendor garbage.
It is a very useful service that they provide, there are many homes that are difficult to find in the United States and around the world.I recommended it.
Amazing video!! i was waiting for this incredible post
I think you hit the nail on its head. There's also the fact that there's no hard line between the "vendor-ops" and the "real programmers". Rather, it's a continuum, and one crucial skill is knowing when to use someone else's tools and when to write your own. And when you do, the experience of having used external libraries and frameworks can be very useful.

Otherwise if you want to write everything from scratch, you can always write embedded firmware for 8-bit MCUs. It better be in assembly, because otherwise you're just doing "vendor-ops" with a external IDE and some company's compiler. Although technically, you're doing "vendor-ops" for a chip made by someone else, so maybe you should make your own soft core in VHDL and use an FPGA... At some point either you'll be making your own transistors because that's the only way to be a Real Engineer, or you'll accept that there's no problem depending on external vendors as long as you understand how to use the tools you have.
FWIW, as a Mozilla employee, I think this is one of the best summaries I've read of the state of Mozilla.
I feel like IM is a pick-your-poison kind of deal. Signal is technically superior, but it's UX is laughably bad. Facebook, Microsoft, Google and Apple are cartoonishly evil corporations. Telegram is a bit rough in places, but has to me been the least offensive of the bunch.
Good service ,really useful
As one of those conservatives who always whined about major changes:

Nah, that's not the moment of doom.
The moment of doom came when google chose to spread their browser bundled with freeware and people all around ended up just having it as their major browser. Many not even knowing how that happened because they never remove the check marks on the installers. I'm still pissed that people where I installed Firefox now use Chrome as their main browser without having even realised when that changed....I wish there would be a way to block just google/Chrome installers.

Most of the people don't know/care about where Chrome comes from or that it's good to un-google or whatever. It's just a minority caring about this. This minority is not relevant to the overwhelming dominance of google.
how does pareto distribution apply in considering hn comments? you're saying a small % are aware of Turing tests and the rest are gullible? perhaps.
Great service. Most recommended.
Can I think of one-forms as partially applied (curried) dot product?
(Forgive me for the usage of pseudo-Haskell notation below.)

Let V F be a vector space over F. The (curried) inner product is

dot :: V F -> V F -> F

Now I take each vector in a vector v :: V F and apply it to ''dot'' partially to get a covector/one-form v* :: V F -> F.

If I take all vectors in V F and apply each of them partially, I should get the covector space V* F :: V F -> F over the field F.

Now, if this makes sense, tell me how to construct

V** F

from this and show that it's isomorphic to V F.
No, that's not software engineering.
I think they’d need some hardware to verify that the transaction happened. A small business owner can use their own phone, but other businesses need a smartphone per point of sale, which might be more expensive than a card reader (that one likely has to have anyway)
> If your goal is to ship a product, there is no reason to reinvent anything that is not your core business.

It's certainly not that clear cut because most of the largest tech companies primarily ship products but also have invented their own programming languages.
Excellent content, really it is the most relevant and valuable. Really, I recommend this content.
I thought that i++ ++i difference is related to the inner data structures of C++ iterators and that when using the former you need to keep 2 states compared to just one for that fraction of execution.
I love that. Chunking by textual grouping is great. Sometimes that is totally enough. One really nice thing about sub-objects though is you can pass them to and from functions like:

info = get_owner_info(event.owner)
info.record_duration(event.span)

I usually like that better than:

info = get_owner_info(event.process_id, event.thread_id)
info.record_duration(event.start_ns, event.end_ns)

If several attributes are passed around together through several functions, I'm much more likely to consider making a sub-object. It's 100% true that sub-objects and hierarchy have costs of their own. Nothing is free. If the sub-objects are not pulling their conceptual weight they should probably be removed. I used the Bonsai metaphor because those trees require constant trimming and shaping. There's a name for unchecked growth, budding sub-objects willy nilly: cancer.

The bigger thing though is pushing functionality down into the sub-objects. For example if my server has these three attributes:

self.connection_address
self.connection_start_time
self.connection_status

I'd be highly likely to create a Connection sub-object because I'd feel very confident that I'd want it to sprout methods like:

self.connection.is_alive()
self.connection.drop()
self.connection.get_duration()
self.connection.stats.get_total_bytes()
self.connection.stats.get_mbits()

My article only talks about objects and attributes and doesn't say too much about methods. I think having lots of methods on an object is often fine. Numpy's ndarray object has around 15 attributes but over 50 methods. I don't have a problem with that, especially for such key object.

There's a big difference between attributes and methods. Adding an attribute to an object increases the complexity of every other method in the object, and every future method yet to be added. As the article says an attribute is just a global variable to the object, adding even a few globals can tip the scales to where the object is a confusing mess. But adding a method is fairly harmless, it doesn't really make the other methods more complex.
How are the expenses of Mozilla increasing at such a pace without having a sustainable business model? Seems like poor management.
Location: Italy

Remote: Yes

Willing to relocate: No

Technologies: Python, SQL, Javascript, C++, Linux, etc (on resume)

Résumé/CV: https://dueacaso.it/about/cv_andrea.pdf

Email: on resume
I think you can thank the support practices of large tech companies like google and amazon for this, where kicking up a fuss on social media is literally the only way you can hope to have a human at the company look into it.
Very helpful, thanks alot ️
That's me! It's a pretty exciting time for BQN because I've just put the self-hosted version online where you can try it out. In addition to exploring a lot of new APL ideas[0], BQN is also a test of the Co-dfns[1] approach to compilation, meaning that with an appropriate runtime the entire bytecode compiler could be run in parallel on a GPU. It's still in proof-of-concept stage, so that the online compiler is very slow and one running on dzaima/BQN, another implementation, compiles only about as fast as Go despite having a lot less features. However, having written several thousand lines of BQN I'm very happy with the language's fundamentals, and I feel it's a big advance over APL or J.

[0] https://mlochbaum.github.io/BQN/doc/index.html

[1] https://mlochbaum.github.io/BQN/implementation/codfns.html
TinaCMS: Inline Content Editing for React
VERY GOOD most relevant and valuable. Really, I recommend this content
I'm inclined to agree with you, but I'm guessing OP is referring to "craftsmanship in software engineering", which is probably a mix of both computer science and other habits formed over many years of conscious focus on improvement?

One of those habits could be how to generally solve a problem, versus how to just duct-tape together a solution. If we don't understand something from first principles, we don't really understand it in my opinion.

I'm lucky to mostly work with people who're both good at their craft, as well as good at "getting the job done". For me personally it would be frustrating to be subjected to massive tech-debt generation and sub-optimal solutions just because the team is unwilling to step outside a walled garden.
> I actually bothered to load both side-by-side and check. Firefox loads pages faster

Are you comparing current Chrome to current Firefox? Relatively recently, compared to the overall trend we're seeing here, Firefox got much faster than it had been: https://blog.mozilla.org/blog/2017/11/14/introducing-firefox...

The discussion above, however, is about how Chrome came to grow so much while Firefox shrank so much, and for that the question is how did Firefox and Chrome compare historically. There was ~10y from Chrome's release until Quantum came out.

(Disclosure: I work for Google, speaking only for myself)
Its very helpful. Thanks a lot.
Brave's made a big mistake in the past, so I'd hold out on using it until there's no other non-Chrome option: https://www.theverge.com/2020/6/8/21283769/brave-browser-aff...
Blocking Slack Invite Spam with Machine Learning
This comment has info about a community license: https://news.ycombinator.com/item?id=24166978
> The really lean startups want to get places quickly and blending together a dependency soup is usually the most efficient way to get there. More established companies sometimes have the resources to allow more R&D and home-grown libraries and tools. They are really different jobs in a lot of ways but we haven't done a lot to distinguish them in how jobs are presented.

IMO the correct thing is to hire people who are good at both and know when to use which approach. Otherwise the learn startups will never be able to transition to established companies. And likewise, the established companies have many problems to solve that don't require home-grown tools, so you don't want people who only know how to start everything from scratch.
First tax year with Stripe Atlas
currently doing their best trying to avoid their workers unionizing
Maybe the macro world doesn't have the butterfly effect either given enough time (millions of years?)
A brief introduction to definite clause grammars (2004)
Same here. If TreeStyleTab existed on Chrome (or, hell, even in Safari), I wouldn't care that much which browser to use.
Just to name and shame, Christian Schwarz-Schilling was the minister of infrastructure at the time. Despite his actions and reputation, he never had to go to court and seems to be currently enjoying retirement.
> If it is a spectrum, why keep insisting to put arbitrary labels on parts of it.

Yeah the title of the article is "spectrum" but the contents are about a dichotomy.
Use https://bearblog.dev instead
Exactly this. Undefined behaviour exists for the purpose of portability, not optimization; actively going out of it's way to abuse it is a compiler bug.
At least you have mesh options in NYC which are arguably cheaper, faster and more reliable.
It is a total hassle to keep up with Googlers changing everything constantly. It's not just GCP it's every platform they control. Try keeping a website on the right side of Chrome policies, a G Suite app up, a Chrome extension running.

Thousands of engineers chasing promotions by dropping support for live code. If it was their code they wouldn't do it. The org is broken. If you want to see what mature software support looks like, check out Microsoft. Win32 binaries I wrote in college still run on Win 10. Google looks unimpressive by comparison. But they all got promoted!
Hello, very good post, I like it very much, continue like this, I predict SUCCESS!
Whenever this happens to me, I create a StackOverflow self-q&a or a GitHub Gist synthesizing the knowledge. Then I use google to find my own content because I more or less remember the keywords of what I wrote. Also, many times, my coworkers find my answer on SO and get amused :)

(I could probably write some of those stuff on my personal blog, but SO has an added advantage of soliciting comments and alternative answers; people on blogs are less keen to do that IMO).

Fun fact: when I was interviewing for my last job, I got stuck on an unexpected issue when coding. I could use google, and found my gist from few years before with similar problem which got me unstuck (I totally forgot about having it written) as #1 item in Google.

IME, SO and gist index really well in Google and often end in top of results. HN, less do (unless you explicitly put hackernews or site:... in query).
This is a very awesome service you're providing it's lovely!
It's a great service. Thanks for sharing.
Isn't that more to prevent corruption and dealing with conflicts of interest?
Excellent service. I love it. It is very safe and complete. It helped me a lot, thank you!
Couldn't one argue that most open-source projects are born as someone's "own little castle"? If people didn't build their own little castles, we wouldn't have, for example, UNIX.

I agree about hiring and working with people ("engineers") who take full advantage of existing tools and libraries; and can contribute to well-documented and battle-tested libraries in the community.

But, as someone who (also) fits the description of a "programmer", I see the value in building our own little castles for fun and profit, to create libraries and frameworks for our own purposes. If existing solutions don't quite do the job, someone has to start these well-documented and battle-tested libraries to benefit the community - even if "only they can understand" it at the beginning.

Perhaps the contrast and tension between these approaches are about the inherent risk of innovation. In a team environment, we don't want people inventing their own language or operating system from scratch - unless it directly contributes to the core business, which is rarely the case.

For the largest tech companies, they can afford to risk the investment into innovation, to develop and maintain their own languages, frameworks, and libraries - if they bring competitive advantages. This caveat is often unclear though, whether this (re)invented thing actually delivers.
Esta genial esta información me ha sido de mucha ayuda con las direcciones y ubicaciones gracias
On the contrary, every time someone comes to me with a suggestion to build something in-house or use an open source solution when a aws service exists I say the hell with that. I don't want to maintain it, build features into it or operate it.

I want full in vendor lock-in, it saves an immense amount of time.

You just need to pick a vendor that gives a shit about it's customers to be locked in to - and that's simply not google.
The rules of snooker explained [video]
> Once you've established yourself as the "default", it can be ridiculously difficult to convince people to switch to something else.

Not very believable as FF actually gained a much bigger market share than default IE over time.
You should strongly encourage your daughter to commute from home, since her college is only 10 minutes away. Students will take precautions during classes which will limit the spread, but in the evenings when they return to their dorms, they will let down their guards and the inevitable will happen. COVID spreads easily in dorms.
Thanks, you're right, I was going by some very old StackOverflow answers.

I've posted a new answer there on how to configure the check in VS2019.
Thank you very much for giving information.
What’s your definition of a “good developer”? I’m the first person to call out companies that think they need “ninja, rockstar developers” to build their Node CRUD app. But, how many developers are there that are out of work that could actually contribute meaningfully to Firefox? Writing a modern browser engine/Javascript engine and the related underpinnings is hard. Not even Microsoft - the third most valuable company in the US - wanted to keep taking that on. Every other company in the world besides Mozilla who wanted their own browser thought it was better just to use Webkit or Blink.

Even though I am a developer and work for Big Tech, I got in through the backdoor via cloud consultancy. I looked at what it would take to even be competitive to not embarrass myself during the interview process and decided I wasn’t interested. I’m assuming that Netscape has similar standards . I can’t imagine that anyone who is good enough and disciplined enough to get through the process can’t get a job.
Thanks for providing this information. It is very helpful to me
Emotional Intelligence and Mindfulness
Can anyone recommend a good unbranded alternative?
They can be very good when there are multiple objectives / tradeoffs. I wrote my thesis on that, which includes an introduction to the concept and how it works if you're interested. http://master.matsemann.com/
still worth for the conversion of radiative energy to biological activity

nuclear waste may become green :)
The problem with Safari from the web developer viewpoint is that it constantly doing something different. There was a horrible time back in early 200x years when we needed to check our HTML and CSS in all the browsers. Today this is mostly over: 99% of layout and scrips are behaving the same in Chrome, Mozilla and both Microsoft IE and Edge. Except for Safari. It is especially annoying for devs working on Linux or Windows machines: we need to have a separate Mac machine to debug Safari issues, and it is twice annoying to be forced to deal with MacOS/Apple special ways of implementing UI/UX.
They aren't actual animals that we have to approach scientifically; it's better to look at them through a literary lense.

I personally assumed they were intelligent. I thought the game was making an attempt to draw parallels to the way real life colonialists dehumanazed the native people.

You could definitely read them as being more inspired by scifi aliens like the zerg, though. It is a very common trope for zerg/flood/bugger style aliens to be initially percieved as lacking higher intelligence, but twist they're actually as smart or smarter than humans. But that's not necessarily the case in factorio (afaik, I never got to the endgame). If they aren't intelligent, how does that cast the player's actions? I guess it puts you more in the role of being harassed by wolves?
I, for one, think the HTML API (as in, the interface presented to the programmer, not talking about any other API meaning here) couldn't be worse.

How many attributes do you need to enable to place two pictures side by side in vanilla CSS? Is that composable, would the same set of flags work for two paragraphs? What about two tables?

HTML/CSS was never designed for the web we have ended up with, and I don't see how flexbox and any newer standard is making developers lives anything but miserable.