skysight-inc/HackerNews huggingface dataset:
I think Canada is losing far more people to the US than the other way around, at least at the higher end of the market. Canadian salaries just aren't competitive at that level.
It depends on what the cancellation policy is, if the cancellation policy says that the responsibility to return is on the buyer, then absolutely it's stealing.
Admittedly this is low impact, but it is critical to maintain rational optimism in regard to the challenge of climate change. Doomsday-ism doesn't help anything. If you feel the same way, come be productive and join the conversations going on at https://collective.energy
> valueless

You mean "invaluable" here (cannot be given a value, as it's too important). "valueless" is the opposite (worthless)! https://en.wiktionary.org/wiki/valueless
Good point - there are a ton of SMBs that have good business metrics, usually as a result of being around for a long time. I would think that these companies would be the primary audience for this - they would use the flexibility that a securitized revenue stream allows them to smooth out any cash flow problems they had.

The majority of startups use investment to get to profitability / stability. This is why I think debt is a poor choice in general for the startup and tech market. I'd hope BigCash, co. models out default rates, not just SaaS metrics, and the adage, 9 out of 10 startups fail, while a bit harsh on revenue generating startups, doesn't bode well.

If offered, I can see a very well positioned startup who has access to VC preferring to raise debt to avoid the hyper growth push of VCs and grow at their own pace.

But also if offered, I can see a lot of high default risk companies use it to get cash because other options are not available, and the riskiness is why I didn't even think of an institution offering it in the first place - or just a repeat of the mortgage crisis.
Whichever PowerPC computer was the last one Apple released. (Then you can use Tiger + Classic Environment).

But, you could also use Mini vMac, which is a very capable emulator.
Nice, also look into AsciiDoc, which is a surprisingly well designed markup language for similar purposes.
Show HN: Go outside, put your computer away
Enjoy your Sunday outside.
The game Myst was originally written in HC, and a game engine (Mohawk) had to be written for Windows to provide similar functionality in order to port it. There's a documentary about it: https://youtu.be/EWX5B6cD4_4 Definitely one of the rare indie game success stories. They really poured themselves into making it as awesome and expansive as technology would allow. IIRC, they're still writing games for fun.
It is just awesome that I stumbled upon this post. I remember previously I had faced similar issue while running a command like

find . -name *.gradle | blah blah

Instead of finding the root cause, I by-passed it by

find . | grep "\.gradle" | blah blah

It just feels great to now connect the dot and know the real reason for the issue.
The Tokyo Linux User Group

I have been running the Tokyo Linux User Group for the last 13 years. The club was started in 1994. I was first involved in 2002.

We have an event once a month alternating between technical meetings were we have speakers and Nomikai's[1] (Japanese drinking party).

Its hard to say exactly how big the group is because we have a lot more users lurking on our mailing list then people attending any given event. Our events attract between 10-30 attendees, and they are mostly different people depending on the time and topic being discussed.

Open source software dramatically changed the way a lot of people used computers. A lot of open source software runs on Linux which made TLUG a great meeting place for a diverse group of people.

1. https://en.wikipedia.org/wiki/Nomikai
Trust cannot be decentralized. The whole idea of blockchain/Bitcoin[1] was eliminating trust from a process that would have required trust (keeping track of a ledger of funds). A system that provides trust in a trustless way is as paradoxical as it sounds. However you implement it, what some humans say have to serve as inputs to the system, and in reality that's who you're trusting.

The best you can do is have just one central reference store of trust/reputation. China's social credit score is a working implementation of this. I don't think the West will ever be ready for that though, so you're going to have to deal with the fragmentation.

[1] The innovation was requiring a computationally difficult problem to be solved to participate in the network and using hash functions to prevent tampering. This made any participant (miner) in the Bitcoin network a dumb cog in the machine that could be replaced by another. The people aren't special; the computational work is special.
> I don't see a way of living in the US, and not feeling complicit in all the evils of the country

Hyperbole much? Do you lose sleep over tar sands?
Your comment about compilers is most likely true. The exception being if he needs to vectorize or if he had the opportunity use these special-purpose instructions that are seemingly built to accelerate particular algorithms.
Question: about "There's no running "todo" list with items that keep pushed back day after day" - but what if you have items that you don't manage to do, and they accumulate, example of such low priority items: pause car licence (nothing bad will happen if you don't), cancel some subscription, let's say you have many of those, where do you put them and how do you avoid this growing list? let's say every day I manage to do one such low priority item but I have two new to do etc.
For that matter, qemu can emulate a powermac.
Microsoft and Amazon used to park people that didn't get H1B in Vancouver. Wasn't that the same as what Google is doing now?
I remember there's a privEsc on old versions of fail2ban.
From all of the interviews I've read of Atkinson, he seems like one of the most humble programmers of all time.

"I have realized over time that I missed the mark with HyperCard," he said from his studio in Menlo Park, California. "I grew up in a box-centric culture at Apple. If I'd grown up in a network-centric culture, like Sun, HyperCard might have been the first Web browser. My blind spot at Apple prevented me from making HyperCard the first Web browser."

"If I thought more globally, I would have envisioned (HyperCard) in that way," he said. "You don't transfer someone's website to your hard drive to look at it. You browse it piecemeal.... It's much more powerful than a stack of cards on your hard drive.

No pussyfooting around it, no "My idea was so much better, it should have taken off," no "It has been demonstrated repeatedly that what has happened was bad," just flat out: "I messed up, and missed the boat."

So much better than almost everyone who also nearly struck the same gold mine as Berners-Lee.
I took linear algebra with him at UCSC! Super nice guy
Is your employer spending the same in all these places? If not it should bother you.
Which barriers?
The blog author is completely missing the angle that Lisp implementations are heavily built on macros. The ability of users to define macros is almost just a side effect that.

Without macros, the Lisp implementor would be stuck with making every necessary piece of syntax a "special form" that is built into the compiler (and separately into the interpreter, if there is one).

Pretty much no language that is some kind of Lisp will bootstrap without its macros.

Even if you don't write any macros in your own program, you will use the ones that make up the language.
We're in a weird transition period where developers are being forced to do ops. People will wake up to the fact that this so-called automation was just changing one type of work into another. Eventually there will be jobs called "build system engineers" and there will be a whole department that does this bookkeeping for you.
If you get into a senior role at one of the big tech firms, pay matches the valley. For lesser roles, Canada is cheaper, but the gap is closing rapidly as talent runs dry.
The Haskell runtime itself helps out here! Compiling the program in “profiling” mode supplies a large number of runtime switches so that you can profile performance, space usage over time, and so on. It’s not perfect, but it’s much more than many languages give you built-in.

https://downloads.haskell.org/~ghc/latest/docs/html/users_gu...

It also gives you the ability to “tag” sections of code for profiling, so if you suspect that the internals of some named function are giving you grief, you simply add a tag (some pragma comment thing I think) and get profiling information for it. It’s much quicker than having to refactor just to profile sections of code.
Coping with Vicissitudes
My wife is a UofT grad, so spent 4 years in Toronto. That's where her snow feelings come from – she still tells stories of marching to class in -20C and snow. It may not be Calgary, but it's not California either. Maybe we're wimps, but such is the situation we find ourselves in!

Maybe we'll be back some day. Toronto is the most likely.

On topic for the parent – we're both Googlers but right now Google has no tech employees in Toronto proper (it's all sales and marketing). Waterloo is the only product/eng office and that's a tough commute. I'm not sure if that is changing with this announcement.
Reasons not to become famous
Those kind of tasks would go in the online calendar, scheduled on some future date.

> The one outside tool I use is an online calendar, and I put everything on this calendar, even things that aren't actually for a fixed time like "make a coffee table at the workshop" or "figure out how to recruit new PhD students" — I'll schedule them on a date when I want to think about it. That way all my future plans and schedule are together, and not a bunch of lists I have to keep track of.
Allowing to park people and outsourcing is not a tech boom.
Different mindset, different understanding, different risks, limited upside at the end. A country on salary.
I do this too, since 2005. Part of the reason I do this was because between 1995 and 2005 I experimented with a bunch of different software, and the software kept being deprecated. I forget a lot of the software that existed at the time. I used a bunch of early web apps, in the 1990s, all of which disappeared, and I used some interesting experiments with desktop productivity apps, all of which were discontinued, and I used a 5 or 6 different PDAs (this was in the era before the smart phone, when cell phones were dumb and we used PDAs to take notes) all of which were abandoned by the companies that were selling them (most of them were pushed by hardware companies that had no strategy for building important software that would survive over time).

Having been burned, many, many times, trying apps and formats that all were abandoned, I eventually realized that the only thing that would definitely last, over the long term, was a simple text file. The simpler the better. Simple is the only guarantee that something will last. Unix text files have not changed much since 1970s, it is the only thing in the tech world that has demonstrated longevity.

So I stick with a simple text file, and I will do so till the day I die.
Assuming you are interested in learning not just Assembly but how to use it in conjunction with a high-level language (almost always C/C++);

Background:

--- Matt Pietrek's "Just Enough Assembly Language to Get By" - http://bytepointer.com/resources/pietrek_asm_pt1.htm

--- Hongjiu Lu "ELF: From The Programmer's Perspective" - http://beefchunk.com/documentation/sys-programming/binary_fo...

Books:

--- Computer Systems: A Programmer's Perspective (3rd Edition) by Bryant & O'Hallaron - https://www.amazon.com/Computer-Systems-Programmers-Perspect...

--- Modern X86 Assembly Language Programming by Daniel Kusswurm - https://www.amazon.com/Modern-X86-Assembly-Language-Programm...

--- Low-Level Programming by Igor Zhirkov - https://www.amazon.com/Low-Level-Programming-Assembly-Execut...
I wrote a Linux general purpose library for x64 assembler: https://2ton.com.au/HeavyThing/ and in recent months I decided to start doing video tutorials about the "how and why" of same. Learning I think is made easiest in Linux by learning how to navigate the syscall interface and how "man 2 write" becomes an important skill. Edit: Videos link as well: https://2ton.com.au/videos/
I graduated in 2000 from Computer Engineering (in Canada). A solid fraction of my peers ended up in Silicon Valley. It’s not just for the wages. Silicon Valley just where most of the jobs are and it remains the best place in the world if you’re an engineer.
Foxconn's plans to restart Apple device production called off by Authorities
There's little difference between this situation an one in which someone buys a property that then becomes famous in a movie or show.

Except in my hypothetical example your response makes you sound like some sort of communist outraged by the profit your neighbor made off their house, when you bought the decidedly unfamous one next to it.

> His is just trying to extort society for that money by threatening to help criminals if we don't give it to him.

Is he? Where's your proof? Perhaps he's just sharing his very novel experience of a property he owns that the world honestly should know about for security reasons. What if this man dies in a few months and we didn't know about this, then his kids sell it to the NSA or Russia, would you rather that?
We don’t pay 50% in tax...
Even at the higher income scales
I have deep experience with operating Kubernetes and no experience with Google's Borg but I imagine Borg is significantly more challenging to operate? Kubernetes is designed to be a workload scheduler that a three or four person team can operate.
I haven't gotten into the parenting business yet, but my impression is that it also depends a lot on the parents. The article gets into this at the end when it suggests outsourcing to more experienced day care providers because they can read the signs better. Presumably this sign-reading skill is a learnable skill like any other, but there's a danger zone where you think you know the signs and actually don't.
I've implemented these since then, I also read the database file from environment now.
Not to mention the entire T-series of virii.
> That's why people are talking about this coronavirus and largely blasé about the flu

I disagree. People are talking about coronavirus because the media is talking about it, because it makes great headlines out of context.

In January 2018, influenza and pneumonia in the USA had a CFR of 10.8%. That's horrific, but didn't earn media attention. Over 500,000 people die globally from influenza-related respiratory problems every year.

Break out of the 24/7 news cycle.
> Converting them to a cleaner ReaderT led to a 10% total run time regression, so I had to revert it. It makes me wonder about the speed penalty of code I designed better to begin with.

I have heard from other Haskellers that you can sometimes get good performance by hand-rolling an application monad, and then writing out the MonadFoo instances so you get good ergonomics:

-- Instead of this:
newtype App a = App { runApp :: ReaderT AppEnv (ExceptT AppError IO) a }
deriving (Functor, Applicative, Monad, MonadIO, MonadReader AppEnv, MonadError AppError)

-- Try this:
newtype App a = App { runApp :: AppEnv -> IO (Either AppError a) } deriving Functor

instance Applicative App where ...
instance Monad App where ...
instance MonadIO App where ...
instance MonadReader AppEnv App where ...
instance MonadError AppError App where ...
If your prose is obtuse enough in just the right way, you can come off as profound and let people read all kinds of things into your words that are not really there.
1. Flutter, Qt

2. OpenMP is easy to use, just put #pragma statements

3. Rust is the leader here. It's doing very well.

4. I have read a few studies like this. The takeaway was that it took about the same time to write a program in every language studied (it included Haskell and FP langs). Language/paradigm also did not have much of an effect on correctness and bugs.
You might find my other posts in this thread a good starting point for your study.
Senior roles in SF/NY pay >600k in total comp.

I was flat out told there are no such jobs in Canada two years back. Has that changed?
Palawan by Drone – El Nido and Coron, Philippines Aerial Video
MorphOS 3.13 – Public Release
> nearly everything (minus housing) in Canada is pegged to the US dollar

This is another persistent myth I wish would die. For example, between 1998 and 2018 (a recent 20 year period for which data is readily available), USD/CAD exchange rate has been as favourable as 0.989 CAD per USD and as unfavourable as 1.570 CAD per USD [1], approximately a 59% difference between the highest and the lowest.

During the same period, purchasing power parity has only fluctuated between 1.185 and 1.248 CAD per USD [2], only a 5% difference between the highest and the lowest.

Contrary to the popular online belief, Canadian currency is not a proxy that is only good for exchanging for USD to buy good and services. It is an independent and strong currency on its own.

[1] https://data.oecd.org/conversion/exchange-rates.htm

[2] https://data.oecd.org/conversion/purchasing-power-parities-p...
Until they understood what sorry of internal info they could get, then they'll pay that 500k before anyone else could bid it up.

50/50/90 a chunk of my work records for the past ten years could be accessible if someone hits this domain and just sponges it up. Shivers.
I promise you you can, with a previous particular incantation.

Answer to come.

PS. the response is not important.
^ It can, but I've found it to be not particularly pleasant to use. Lots of weirdness, particularly around input. It may have been my setup, but still.

Mini vMac by contrast is quick, pleasant, and plug n' plug. (It's also emulating a completely different era of course, but it's enough for hypercard.)
6-hour time limit on free instances, there’s a banner at the top of the page linking to an announcement with this detail.

Might be wise to make this more visible on the pricing page.
What do you mean by "senior roles"? Something like a "Senior Software Engineer"? (or more like a Senior Staff SWE / director)

Can guarantee Senior Software Engineers don't make >600K in SF.
Such a great documentary. Really recommend it to anyone considering. Myst / Riven were both awesome games.
I also learned Z80 first, and I can say categorically that learning 16-bit x86 is NOT a good idea. To do anything useful in 16-bit, register starvation is a constant. Segmentation issues are actually hard problems.

I submit that if x64 existed early-on, no one would have bothered with higher-level abstractions. x64 is actually -pleasant- to code in natively.
The US is the NBA, the stars definitely do go there. A pretty good life strategy is to work in the states from 30-45 while you're young and healthy, then come back to Canada for peace and safety to raise your family. I've seen a few people do that. I'm not sure it ends up being that bad for Canada. On the one hand they lose stars during their productive years, on the other hand they come back during their spending years with more money/knowledge/sophistication than they would have had.
Meanwhile my WiFi-enabled HomeKit devices happily run on a segmented network.
Before you download it make sure your PowerPC system is compatible with it: https://www.morphos-team.net/hardware
I have made a funny Sierpinski carpet clicker recently, it's only 30 lines of code in react and unfortunately not one div, but it's still quite performant (safe to open, even on low-tier phones)

https://recursivebuttons.mcalus.dev/

i love all kinds of fractal generative art :)
I believe that programming languages should never make the meaning of a program depend on the context in which it is executed. So many obscure bugs are directly caused by such behaviors. There should be exactly one possible interpretation for a given statement, and if that cannot be executed, then the program should abort. In this case, the glob should never have been passed on to find. It should either have expanded to the empty array, or failed.
Flat Assembler is actually easier to get your head around early on than any of the *asm variants IMO: https://flatassembler.net/
> At least with the “hacky” app I’ll understand at a base level what’s going on. It’ll take the same time to implement, but when problems eventually crop up I’ll know what’s going on and how to fix it.

Being able to understand and remember a system is what allows you to control and operate a system. If you build a simple system, you may need to intervene more often, but most interventions will be simple. If you build a complex system well, manual interventions will be less frequent, but they are likely to be a lot harder.
The future of contracts is code
Any other JIT manufacturers in the US getting slammed by China shutdown?
We run a small consumer electronics startup here in CA and we're getting dangerously short on a few key items in our BOM. All suppliers in China have shut their doors. This has left me scrambling to find either domestic or non-Chinese suppliers for li-ion cells for our gear. Not too many of them around it seems. Anyone in the same boat?

We here stories about how the big companies (Hyundai, Foxconn, etc.) are getting hit hard by the shutdown of Chinese factories but I've got to think that the little guys are hurting more.
Blackmail and extort executives with the leaked data
Federal higher income bracket is not 50% but you have to factor the province as well so yeah well above 50% in Quebec for instance.
>>The end of the article the owner talks about why he doesn't just give the domain name to Microsoft for the good of security,

Microsoft should buy it for the good of security. Why gift anything to a Trillion dollar company?
Glad to find another person who uses this book/method! We used it on our son (22 months). I’m just really glad we decided to go diaperless cold turkey, because I’ve heard from other parents that it’s really hard to transition from night-diapers/pull-ups. We also used cloth diapers which I hear helps.

We plan on starting earlier with our other one. Honestly I think we start potty training way too late here in this country. It wasn’t perfect at 22 months but that investment is far better than wiping poop off his 3-year old butt now, or changing his pull-ups on the mornings.
It is not subject to GDPR, but Switzerland implements everything in GDPR by themselves. Ukraine, former Yugoslavia, and Turkey do the same.
Using a metaphor of "used care dealer" is gratuitously provocative according to you? Does that standard apply consistently? It's not a flattering comparison, but it is not even remotely gratuitous. Used car dealers are real people earning perfectly acceptable livings. It's also a perfectly apt metaphor. I understand that used car dealers have a job to do and that it involves convincing me to buy a used car. I also understand that they may not see it important or relevant to their situation to tell me the bad along with the good, and that it is in my best interest to have the car inspected by someone with no skin in the game. It's an obvious case of making sure incentives do not align against you.

It applies perfectly well to Mormonism. If you had only trusted me to tell you about my religion when I was a missionary for 2 years in South America convincing people to become Mormon, you would have gotten a very whitewashed and carefully selected story. This is not because I intentionally deceived people. It was not out of self-interested deception. It was because I felt it important to my God-sent mission that people learn to love the church so that they can be baptized. There were so many facts that hadn't been taught to me, and in addition there were plenty of facts that I didn't see necessary to teach people.

You think I'm demonizing my own people and myself when I use the used car dealer metaphor? That is simply an incorrect and strangely motivated interpretation of what I said.
The Trouble with TypeScript