HN user

hagmonk

107 karma
Posts2
Comments29
View on HN

DARPA has been thinking about this: https://www.darpa.mil/attachments/AISS_ProposersDay_LeefSlid...

(aside: fascinating example of a US military slide deck, like a 90s fever dream made in Harvard Graphics)

Here’s also a Voices from DARPA episode, which suggests they’ve been funding research since at least 2012: https://blubrry.com/voices_from_darpa/30975140/episode-17-gu...

In terms of ensuring designs are not tampered with seems like watermarking is the direction they’re exploring.

Another fascinating concept was the “silicon odometer” to ensure recycled chips aren’t reintroduced into the supply chain.

Asianometry has a fascinating video on that issue: https://youtu.be/7epnv43jGV8

Yeah that's a great point, the data really makes you pause and say "is this worth the cost?"

The other wearable that has had an extreme impact on my lifestyle has been a Dexcom CGM through Levels. I could write pages about this, but in some ways it has been more impactful than anything else. Knowing how your body reacts to particular foods, and seeing the immediate feedback is super eye opening.

And it extends into sleep as well, looking at what your blood glucose does overnight based on stress, exercise, what you ate, when you ate it, it's quite amazing to see how this subsystem in your body is reacting.

I'll never forget the first time I ate sushi (which mentally I thought of as a "light" food, even a snack) only to see my blood glucose rocket past 200 mg/dLf.

You can also see the effect of alcohol here. Not just with carbohydrate heavy beers, but with the fact alcohol itself suppresses your blood glucose levels, since it causes your pancreas to spike insulin, which disposes of glucose. So it's yet another way alcohol causes a disturbance in your body's attempts at homeostasis.

Alas, a CGM through levels is quite pricey because of US healthcare bullshit about giving CGMs to people without a diabetes diagnosis, but doing a month or two of CGM once per year I think it's a great investment (approx $200 for three sensors which last a total of 30 days)

In terms of wearables, it's quite unobtrusive because it's literally just a ring. There is no display to become distracted with. The inside of the ring will glow when it's taking measurements (red for blood oxygen, green for heart rate) so that might surprise you when the lights are out, but that's about the extent of how "intrusive" it is.

The battery life is very good, I typically get several days to a single charge, which is far better than the Apple Watch. But most importantly it's comfortable to wear during sleep - indeed it takes the majority of its measurements only while you're sleeping. YMMV but there's no way I can wear an Apple Watch to sleep, while the Oura ring works perfectly. I've worn the last two generations of Oura ring and would definitely recommend.

Sharing my own anecdata: my Oura ring shows that on days I drink, RHR is 10bpm higher and HRV about 15ms lower. Exercise has a huge impact on sleep quality too.

My theory is that when you're young, your body has a much wider margin for error. A few drinks or sloppy exercise routines never seemed to impact my work. As I've aged, the margin has shrunk, and now there's a measurable effect that I can no longer ignore. Aging is in itself a handicap, but now after too many drinks, the next day both my cognitive sharpness and motivation to even care about shoveling bits around a network have declined.

Now I need to actively stack the deck in my favor, rather that engaging in behaviors that further handicap myself. So that means exercise, a sleep routine, zero alcohol most days of the week, reducing stress, all that goddamn stuff I never had to worry about ;)

Another way to think of it is this: at 40 or 50, can you afford to be lugging around a 20% RHR penalty all day? That will surely come home to roost, probably in the form of atherosclerosis. Remember the most common clinical presentation for a heart attack sufferer is not chest pain, but being dead on arrival.

I bring this up because it's worth nothing that our bodies and minds are remarkably good at covering up problems until far too late. When you get those early warning signals (high RHR, feeling of cognitive decline, etc) trust your body, be proactive, and employ countermeasures.

I don't get to exercise my dusty algorithms knowledge nearly enough to follow this nearly as well as I'd like. Are we talking about the bin packing problem and approximation ratios? So, is the intuition here that when the ratio of bins to objects goes up, the worst-case performance for the algorithm goes down into the toilet?

Slightly younger old-timer here: I feel I've gone on the full spectrum on .emacs files and keybindings, at least for emacs versions commensurate with my own vintage.

In the early 2000s I used emacs while writing C++, I was writing Lisp macros without any idea what I was doing just purely so I could avoid using one of the bloated Motif IDEs[1] or vanilla `vi` on SPARC boxes. No vim here, thanks, and the nice IT folks at the investment bank didn't permit you to install your own software, so emacs was a fantastic end-run around their rules. We used `pine` for email because somebody had done the leg work to get it working with the corporate Lotus Notes servers, but I got email working in emacs too. Somehow. Having to actually use your windows box was either a sign of weakness or an encounter with insurmountable corporate policy. Anyway, it never occurred to me to customize the emacs key bindings. At that stage in my career I assumed some godlike personage had chosen those key bindings for a reason, and I had better just go with the flow.

Then I left emacs behind for too many years, but rediscovered it through spacemacs, which let me put off learning what I was actually doing for a few years more. Then on to doom emacs because it would make it "faster", then I finally had my epiphany and realized I would have to do this myself. Emacs of all things should not be slow, there is no excuse for it to be slow on these supercomputers we take for granted. So my config is now tangled from an org mode file to keep it nice and organized. When I add a new thing and it becomes slow, I stop immediately and figure out why. And I kind of stick to the original emacs keybindings where possible.

I have no idea what people are complaining about when it comes to RSI. My only non-negotiable change is to reassign (at the OS level) caps lock to control, simply because ctrl is such a small target on most keyboards, which are apparently made for FOLKS WHO NEED ALL CAPS way more than you or I use ctrl. Scary thought. I would argue RSI is going to come from the R part: repetitive. You spend most of your time, even when coding, just typing strings over and over. Likely the RSI suffers never learned to touch type and so the real strain comes from well established bad habits. Try using an Ergodox-EZ ortholinear split keyboard, you'll soon learn whether you're truly touch typing or not. I can't see how emacs shortcuts would be the source of pain. Maybe if you're typing on a 2000-era Sony Vaio or Nokia handset and never learned to touch type? Reminder: old curmudgeon talking here, I may have just got lucky.

If you like emacs keybindings and happen to be using macOS (which out of the box in most text fields supports the basic emacs key bindings anyway), a kind soul has put together a KeyBindings.dict that extends support even further: https://gist.github.com/cheapRoc/9670905

Mentoring newer engineers, it's remarkable how many of them are at the terminal holding down the backspace key, waiting for individual characters to be deleted over long seconds. The idea of using option-b or ctrl-a to move backwards blows their mind. Ctrl-k to delete everything forward of point is also revelatory. It's curious that they get stuck in this rut, totally dependent on the shell day to day, but wholly accepting of these inefficiencies. Yet their forebears - who actually wrote and hacked on these shells, if anything went overboard giving you ways to do everything they could conceive of with the bare minimum of keystrokes. How many of them know you can hit ESC-t to transpose the two previous words in bash? (M-t in emacs for the same).

I'm tempted to blame the children but honesty if you give a child a claw hammer and they point at the end with the V shaped prongs and say "what is that for?" you will explain it to them, or they will eventually figure it out. Maybe its purpose will never occur to them, but it's a rare user of hammers who has driven nails but never encountered the need to reverse that operation. How exactly do we design software such that someone notices the existence of option-b and how much time it could save them?

Maybe it's all the fault of the mouse? Better yet: Windows and the mouse!

[1] I'm sure you can empathize with a feeling of horror that once upon a time, Motif felt bloated and slow. Perhaps we are doomed to always be at war with slow abstractions, independent of the hardware capabilities.

In my mind, a media organization censoring a story that could aid Trump just days before the election is acting for the greater social good. I don't feel that optimizing for Greenwald's personal value system at this particular time would be the right tradeoff for America as a whole. Greenwald having the satisfaction of doing the right thing while the rest of us endure the rule of a strong man hell-bent on becoming America's Putin is not a fair trade.

It sucks that we don't live in a society where "The Truth" - if it could only be exposed to sunlight - would stand taller and brighter than everything else around it. If Greenwald wants to cosplay Walter Cronkite, and who wouldn't, he has to understand the impossibility of that in our current context. Everything is turned into spin for the disinformation machine. Everything is distorted, filtered, weaponized, super concentrated, and targeted directly to those it will anger the most. Truth has no power and no legitimacy in this context. Have we not learned anything from watching Trump these past four years?

We have to solve that problem before we can enjoy the benefits of truthful journalism. A problem for which we have to take some responsibility, since our technology is being abused to create this wretched hellscape.

It sucks and it isn't the world in which I want to live. I have young children myself. They will grow up with no Walter Cronkite, no trusted source of information. They will grow up in a world where truth is disconnected from reality. It's broken, and we can't ignore that, no matter how much it hurts us personally.

I ordered two of them (one by accident, LOL) two months ago. Haven’t heard anything since. No order updates. Emails to their sales team have gone unanswered. Not sure if my case is typical but that might have been $450 I never see again …

Yahoo Pipes 7 years ago

And now, Pipes can be mobilized and viewed on any mobile phone using SMS and WAP! Simply get the RSS feed of the Pipe and mobilize it using the 411Sync Mobile API. Within seconds, view it on your cell phone

Oh wow. There is so much in this paragraph that was best left forgotten.

Yahoo Pipes 7 years ago

Surprised to see no mention of Apache NiFi, Quartz Composer, or Simulink:

https://en.wikipedia.org/wiki/Apache_NiFi

https://en.wikipedia.org/wiki/Quartz_Composer

https://en.wikipedia.org/wiki/Simulink

I feel like every few years GUI based workflow tools make a revival, but then slowly die out. In the 1990s the selling point was that your "business logic" could be written by "the business" instead of those expensive programmers, and we all know how that panned out.

There is obviously something here, however, especially when you consider what people are doing with Simulink. But why do these tools remain niche? Is there some threshold of complexity past which these tools don't scale well, but source code does? Considering these tools are effectively representations of a program's call graph, could there be a future where I toggle between text and graphical versions of my program depending on what works best?

I'm not offended in the slightest. Except by your misuse of the apostrophe. I agree that nobody was hurt in "it is making." Note that this is my idea of fun, and you don't have to be offended by it.

The purpose of my comment was to point out that gender charged images are going to draw attention in the tech industry, and that is worth avoiding. I made no commentary that suggested the image was not fun, or was offensive. You made those extrapolations all by yourself. Someone out there will make a very similar mistake to yours, by extrapolating a nonexistent gender message in the logo of this project.

That's where the real time wasting starts. My advice to the project maintainer is to skip all that bullshit by picking something neutral. I genuinely wish this was not the kind of stuff we have to worry about, but I have at least one friend whose industry reputation was needlessly tarnished by people who didn't see the same joke he did.

This is perceptive. As a society we must tolerate a diversity of opinions. Everything must be open to question and debate. But after questioning and debate, there must be a final disposition that lets us move on to other challenges. How we reached that disposition should be so clear that it invites renewed debate only in circumstances where new insights have been made.

I feel like we already use this pattern in a variety of settings. The legal system comes to mind, where we build this collective body of decisions that either prove useful and are built on, or modified and removed if not. But there is not a sense of anything being "inappropriate" to question. The very core of the legal system is challenged on a regular basis and we don't feel the need to censor those who challenge it. We have a general level of confidence that the system has checks and balances that let justice prevail.

Two observations. One is that this reminds me of eventually consistent systems. The law lags slightly behind reality but we know it catches up eventually. Reality is always changing and so we don't expect the law to always be up to the minute perfect. Perhaps we can embrace this notion of imperfection as a reason to keep discourse constantly open.

Second is that the law is effectively the source code for running society. It has procedures set up around it very similar to how we'd run a successful open source project. Integrators, reviewers, unit testers, engineers, project managers, pull requests …

Perhaps in the case of Yale and other institutions, what is needed is the same level of transparency we have in a well run source repo or legal system.

1) everything is written down somewhere, is properly attributed, and openly discussed. 2) systems are in place to propose changes, understand the impact of those changes, and integrate or reject those changes. 3) there is an understanding that this is an evolving system, it has a past, present, and a future. 4) history is recorded so that present and future discussions can be made with the appropriate context in place.

I feel like this is the solution for incorporating dissenting views, converging on the set of beliefs that identify the underlying priorities and preferences of the participants, and making it clear why certain things are the way they are.

It is entirely possible that institutions may converge around policies that are abhorrent to some, but being clear and transparent about that at least makes people know what they're getting in to. It's possible that a system like this at Yale would result in some students or faculty deciding that their views would not be welcome there, which is better than discovering that after the fact.

Potato paradox 11 years ago

"announced the acceptance by the journal Theoretical Computer Science of a more efficient algorithm for pancake sorting than the one proposed by Bill Gates and Christos Papadimitriou."

Bill Gates!

I wholeheartedly agree with the need to make cultural fit bigger than just "happy hour" fit, but primarily on moral grounds. I haven't seen strong data to make a technical case here.

Do we observe discrepancies between company performance that are correlated with diversity? They say this is observable at the team level in controlled studies, but at the macro level do we see it?

Put another way, if diversity was a strong influence on success, why do elite institutions in banking and tech not appear to exhibit much of it?

Yes, @dreamcatcher is misinterpreting my sentiment, or I was not clear in communicating it. I absolutely do not support any racial stereotypes of Indians or anyone else - my point is that others do this because they wish to oversimplify the immigration argument.

I have an Indian guy on my team going through the visa process just like me, so slandering of Indian workers hits especially close to home. He's the only other person in my entire office who knows for sure that cricket is the superior sport … without him I'd be alone and defenseless amongst baseball nerds!!

The article comes across as whiny because he's a New Zealander. So cut the guy some slack, he can't help it :)

As an Australian working for a large tech company, I totally feel this guy's position. It never leaves me, the sense of being an imposter in this country on limited time. I've paid hundreds of thousands of dollars in taxes in this country, hired dozens of Americans as a manager, and mentored many of them to greater heights. I am lucky to work for a company with deep pockets that wants to invest in my green card process, but if I step outside this bubble I step immediately into the world this author describes.

It is madness for the United States to put road blocks in front of skilled immigration. As a hiring manager, I can tell you that I always prefer to hire a local American where possible, simply because it's easier. That in itself is not great - to serve this large American company's interests on American soil, I should hire the best possible talent, not the most convenient talent, no matter their origin.

But in my case there is little American talent to hire. It is not because I'm a picky arsehole (although some would say I am), but just a function of the kind of positions I hire for and the place I do it. Once you cut it down to:

1) people who want to relocate to the Bay Area

2) people who want to work in the South Bay

3) people who want to work for this company

4) people who want the job

5) people who can actually do the job

There is just a tiny trickle of people left, and frequently I'm in competition with other tech companies to acquire them. And for foreign candidates, you can tack two small items on to that list:

6) people who want to move to the United States

7) people who qualify to get a work visa for the United States

Folks carry around this assumption that foreign workers are cheap Indians on H-1Bs who can blow in and out of the country on a whim, and that a large % of unemployed Americans are waiting in the wings to swoop in and take those positions if tech companies only paid the prevailing wage to attract them. The reality is way more complex than that. Not every immigrant is an Indian and not every unemployed American is a reprogrammable robot, able to do any open position I have on my books.

What I want to bring to this country - not that the United States government factors this in to my immigration status - is growth. That is what gave me the opportunities that got me here, and that is what I want to give back. Right now, I can go talk to my boss and create a job. I can create a job out of thin air! That pays >$100k a year! Me, a foreigner, I can do this. There is always more work to do.

And if I can hire the best and brightest then I can be more successful, and create more jobs. I stand a decent chance to create economic circumstances that bring opportunities across a spectrum of skills inside and outside my company. With more jobs, I can take risks on hiring under-qualified Americans to train them, just like people took a risk on me, a university drop out. And with more success I can attract more of the best and brightest Americans too.

My tangible contribution to this conversation is that work visa holders should have a full year to find another position, and should be allowed to start companies during that year. That would enable valuable economic risk taking for the people already here. For those trying to get in to the US, that's a diatribe for another day.

I know where you're coming from there. It depends on the company. I think hiring is the most important thing a company does, so it's really critical to get everyone wanting to participate. I'd suggest that most push back folks get is because people generally dislike having to interview - they are tired of meeting lots of B grade candidates and even a few hours a week feels like a drag.

Having said that, there are ways to offload. There's a biotech startup (I'd have to dig for their name, I remember they did all their coding in mathematica) that described their hiring process to me. Hopefully I'm not messing up the details too badly.

I recall one guy who went through it said it was way more stressful than his final year university exams. They tested candidates, all candidates, on physics, math, chemistry, biology, computer science, and more. Candidates were given projects in each area, and a week to complete all of them.

It was deliberately structured so that there was no possible way that anyone could humanly complete the entire set of tests, much less while also working a full time job. This was deliberate, so that they could observe how candidates chose to prioritize. They also wanted to give people more than they could do to stimulate a "by any means necessary" approach they knew would be required in the actual job.

Finally, it also caused a lot of people to say "erm, no thanks. That's a ridiculous amount of work", which they rationalized as being a good test for candidates who saw a mountain of work and then baulked.

Not sure if I'd use a technique like this myself, but I found the idea interesting!

Yes, the candidate should know in advance if there is a particularly structured interview technique being used, for sure.

Because it also requires a lot of mental commitment from the interview team as we'll as the candidate, I'd recommend using this technique as the final hurdle. I don't think you want to phone screen someone, then just toss them into this process. You need to have them cross some basic technical gate (like FizzBuzz, a take-home coding project, whatever), and have them meet a handful of people first, just to make sure they pass those early smoke tests.

In fact I think this technique works best when you want to seal the deal with a very strong candidate who is entertaining several options. Interviews should always be a two-way process, and if a candidate walks away from your interviews thinking "I had real trouble getting my point across to those people, I would never work there" then that represents success for the interview process.

The strongest candidates tend to be the ones least influenced by money and more interested in the problems, the people they will be working with, the culture and the environment of the organization. So having your interview process structured around revealing that gives you the best possible chance of matching your team with people excited to be there.

Conversely if you're a candidate, even if the company you're applying with doesn't seem to have thought too deeply about this stuff, don't despair. Hiring is one of the hardest things to do and also tends to be done by the seat of the pants (Amazon seems like a notable exception) You can impose your own structure by asking the right questions and making special requests of the recruiter. Tell them you want a chance to write code with someone! Or that you want to mock up a UI that solves a problem they have. Or you want to see what their strongest engineer thinks of your design for this service you've put together.

It doesn't matter if you're desperate for the job, or whether you wish they'd stop calling you ... this kind of stuff makes you stand out in the crowd as proactive and motivated by the right reasons.

So I tried a new approach inspired by this kind of interview question. In a nutshell: it aims to simulate the interactions you'll have with the candidate when they receive their first project, without the time burn of a full pair programming day.

1) determine the system the candidate will design. It should be an internal system or an internal oriented problem, not an external thing like Monopoly or URL shortening services.

2) stack your interview team with a mixture of people who can contribute different thoughts to this problem. Engineering, UI, marketing, management, etc.

3) first interviewer of the day introduces the topic and helps the candidate understand some of the internal lingo and bootstrapping questions they'll have right off the bat. The first interviewer is pretty crucial because the candidate has to be prepared to write things down and carry information across each interview.

4) all subsequent interviewers come in and ask two questions:

* What problem were you given to solve?

* I'm an expert in technology / business area X. How can I help?

By the end of the day when they're having their likely optional interviews with more senior people, they should look disheveled but pretty happy, because now they're pitching to senior management an idea they collaborated on with a wide variety of team members.

They should have a whiteboard full of stuff, stacks of paper, whatever. You should get a good idea of how they organize themselves under pressure.

The interview team should have a good feel for how the candidate leveraged them for answers. The interviewers should have done a lot of talking! There should also be clear evidence of the candidate getting better towards the end.

At the conclusion they're tasked with taking a step back to the higher level to explain the idea to management - regardless as to whether management is technical or not, they should be expected to walk away understanding the big picture. Having non-technical "business" people contribute to the interview is critical, since they help the candidate understand some of the human requirements.

I could go on and on, I'm pretty excited about how this technique has worked so far. The key element is deliberately having the candidate carry knowledge between interview teams. I'm sure I'm not the first person to think of this :)

EDIT: styling

I can't see myself recommending this guide to anyone. A few things stand out:

- the invitation to "go away" if you confuse ESR's definition of hacking with the definition the general public uses.

- the suggestion that hacking is something for those with above-average talent for programming. Perhaps you should keep reading if you count yourself as above average?

- the proposal of a system for learning how to hack that is apparently so robust that it is self-evident. No examples need be brought in to support this proposal, nor does it need to defend itself from alternative systems.

- it is suggested that hacking is the only way for software architects to train their design sense. Ok, sure.

The biggest problem I have is that the vast majority of ESR's suggestions are really good ones. I agree with plenty of things he's saying. I just wish, like many open source products, it was packaged in a more digestible fashion, so I could recommend it to less experienced friends.