Hacker News new | past | comments | ask | show | jobs | submit | kidfiji's favorites login

I got sucked down a Geometric Algebra rabbit hole a few months ago, which seems like a remarkably concise and intuitive way to work in a very wide variety of geometries, including 2D, 3D, 4D+, non-euclidean etc. I've wondered if GA would make a good foundation for a physics engine...

There are a few small rust libraries that look interesting [1][2], but none with a lot of traction.

Has anyone looked into this?

[1]: https://crates.io/keywords/geometric-algebra

[2]: https://github.com/Lichtso/geometric_algebra

If you dare, a good place to jump in might be Freya Holmér's Why can't you multiply vectors? - https://www.youtube.com/watch?v=htYh-Tq7ZBI - Then https://bivector.net/index.html


For my job search process I created a custom note type specifically for interview problems. My general process was go to LeetCode, find a medium/hard problem, hack on it for 30-60 minutes, then look at the solution if I couldn't get there myself. At the end of the problem, regardless of if I solved it or not, I'd create an Anki card with the following fields:

Title

Question

Additional Criteria

Example input/output

Insight (1 sentence maximum)

Insight explanation (can be longer/bullet-pointed list)

Key Data Structure (at most 1 data structure; if there are multiple, use the most important one)

Time complexity

Space complexity

Full answer code (can use syntax highlighter add-on)

Source (can provide link to associated question online; can include link(s) to solutions that the insight and/or code come from)

There are 4 cards that are generated from this template, which test the same question in slightly different ways. They individually ask for the insight, the key data structure, and the time and space complexities.

I found this note type to be critical to my success in the following interviews. In two cases, I was asked literally the same exact question I had already added to Anki; I was able to write out the solution from memory in one go. If you'd like to use my note type directly, I've exported an example here. [0]

[0] https://drive.google.com/file/d/12NsYNIBjIPI1Nhq5wE1xPljr9rH...


Two talks given by Ben Collins-Sussman absolutely changed my career path from being a hot headed programmer to thinking like a professional engineer.

The Myth of the Genius Programmer: https://www.youtube.com/watch?v=0SARbwvhupQ

The Art of Organizational Manipulation: https://www.youtube.com/watch?v=OTCuYzAw31Y

I rewatch these every few years, or before an interview. Puts me back in the right headspace.

If you're reading this Ben, thank you.


I was looking for 8 months until I found something. Most of the time, I wasn’t even making it to a tech screen.

Similar to you, I chatted to companies who were looking for concrete experience doing exactly the one thing they were currently working through. And the rug was pulled out from underneath me a few times.

It’s brutal out there, and it will fill anyone with self doubt. The only positive thing I can say is that interviewing for my new role felt normal and nice—the way I thought it’d be. That at least made me feel a lot better about myself.


> There's this iOS app called Flightly

I guess it's Flighty (https://apps.apple.com/us/app/flighty-live-flight-tracker/id...)

I love that people are into this. In the days before iPhones, I had "Microsoft Streets and Trips" + a USB GPS unit + Laptop. It was fun having it on a flight and seeing movement data in realtime. It was less fun answering questions from people who thought looking at the GPS data was somehow nefarious.


Well they're definitely making it easier for me to avoid Reddit going forward. I really do not like using the mobile reddit app and the whole 3rd party api debacle has me looking at alternative communities and I've found a couple of good stand-ins for the two most frequented ones for me on Reddit.

I can probably replace the video game related ones with some RSS feeds for some popular gaming news sites. No big deal there.

I replaced r/financialindependence with bogleheads and r/guitar with thegearpage.

I'll definitely miss some of the random subs, but whatever. Reddit has been a time sink for me for awhile this is a great excuse to move on.


I teach a nonfiction "writing at work" workshop that's all about effective communication. The format is simple:

We work together on your writing as you’re writing. You send me your work in progress, I'll respond promptly with feedback and advice. I'll ask questions, flag awkward sentences, and help find the right language to get your point across. My focus is less on grammar and syntax, more on structure and framing, and even more on the content of the argument itself.

We'll exchange a bunch of email back-and-forths until you have a well-written message. It's free, email is in my profile if you're interested.


I always do that, draft the email to my boss and hr, walk into my bosses office, send the email saying:

"I will be ending my employment with ${company} effective ${two_weeks_from_now}. I'm giving ${X} weeks notice to afford ${company} the opportunity to transition my work and knowledge to other employees as they see fit. I appreciate the opportunity ${company} has given me and wish you all the best as you continue to advance ${company mission}"

Then I say, "I'm quitting, my last day will be in ${two_weeks_from_now}" and there's already a record of how that conversation came about. No one's going to walk out and say they fired you and you're pretending to quit or strange shit like that.


United States Digital Service (USDS) | Senior Software Engineers, Product Managers, Designers, and more! | Washington, DC or Remote USA | https://www.usds.gov/

The United States Digital Service is a team of cross-agency federal technologists who work on some of the biggest issues affecting the American people, including: streamlining immigration, helping veterans get benefits, modernizing health care, reforming hiring, improving school safety, fixing procurement, and more. Check out our most recent impact report for examples of what you could be working on: https://www.usds.gov/resources/USDS-Impact-Report-2020.pdf

We're looking for the most empathetic, mission-driven, and tenacious technologists who are committed to untangling, rewiring, and redesigning critical government services. We hire folks from all walks of life who have demonstrable experience tackling complicated problems in the public, private, or non-profit sectors. We're hiring for:

  * Software Engineers (Frontend, Backend, Full Stack, DevOps)
  * Site Reliability Engineers (SREs) and Security Engineers
  * Product Managers
  * Data Scientists
  * Designers (Generalists, Strategists, User Researchers, Interaction Designers, Content Strategists, Design Operations, and everything in between)
  * Procurement Specialists
  * Bureaucracy Hackers
  * and more!
  
We are currently hiring for both remote employees and people who are local to Washington, D.C.

Come join us in shifting government tech in the right direction -- no prior government experience required!

Read more about getting hired here: https://www.usds.gov/faq

Apply here: https://www.usds.gov/apply


I have some odd feelings about this. It took less than a year to go from "of course it isn't hooked up to the internet in any way, silly!" to "ok.... so we hooked up up to the internet..."

First is your API calls, then your chatgpt-jailbreak-turns-into-a-bank-DDOS-attack, then your "today it somehow executed several hundred thousand threads of a python script that made perfectly timed trades at 8:31AM on the NYSE which resulted in the largest single day drop since 1987..."

You can go on about individual responsibility and all... users are still the users, right. But this is starting to feel like giving a loaded handgun to a group of chimpanzees.

And OpenAI talks on and on about 'Safety' but all that 'Safety' means is "well, we didn't let anyone allow it to make jokes about fat or disabled people so we're good, right?!"


I’ve been posting where helpful, but early stage companies are still hiring!

If anyone is struggling and is on the mid/senior/director side of their career (3+ yrs), I'm helping place people at my friends' Seed and Series A companies. Email me at j{at}markovmanagement.com if I can help ya!


If fritzing gets #1 spot on HN I would like to wholeheartedly recommend https://www.kicad.org/ as well. IMHO much saner workflow and good UX in the latest version.I did a simple PCB and got it manufactured on https://jlcpcb.com/ for a couple bucks. Quite a rewarding experience.

I would also suggest that anyone who cares about computers gets to know basic electronics. How do transistors work, what is a bus (e.g I2C or SPI) and how is it all connected? (Drumroll ... a PCB of course). There is a ton of tutorials on youtube that do it end to end. E.g Phils Lab https://www.youtube.com/watch?v=rLDqQ2L_mUQ for a PCB design. Or Ben Eaters excellent beginner tutorial "Hello World from Scratch" https://www.youtube.com/watch?v=LnzuMJLZRdU


The author of this series has done an excellent job breaking down some of key aspects of React's rendering into good explanations with some nifty illustrations.

As linked in this article, folks might also be interested in my very extensive post "A (Mostly) Complete Guide to React Rendering Behavior" [0], which goes into a lot more detail on the nuances of this.

I also generally recommend reading some of Dan Abramov's posts that explain how and why React works, including the "Complete Guide to `useEffect`" [1], "React as a UI Runtime" [2], and "Before You memo()" [3]. Finally, it's worth noting that some of React's batching behavior will change in React 18 to always batch renders even across event loop ticks - see the React 18 Working Group post on "Automatic Batching for Fewer Renders" [4] for details.

FWIW, some of this material is being incorporated into the upcoming React docs rewrite [5], which I'm really excited to see go live.

[0] https://blog.isquaredsoftware.com/2020/05/blogged-answers-a-...

[1] https://overreacted.io/a-complete-guide-to-useeffect/

[2] https://overreacted.io/react-as-a-ui-runtime/

[3] https://overreacted.io/before-you-memo/

[4] https://github.com/reactwg/react-18/discussions/21

[5] https://github.com/reactjs/reactjs.org/issues/3308


Sidebar | https://sidebar.vc | Front-end or full-stack engineer w/ React expertise| NY, SEA + Remote | Full Time

We’re a VC-backed pre-seed startup building a virtual office that brings back the feel of working with your team. Drop-in voice and video rooms allow you to instantly connect with colleagues, join impromptu hallway conversations, or start a meeting without needing to schedule.

Work-from-home is hard. Employees feel disconnected and miss out on valuable training and mentorship. Slack is all about async, and Zoom doesn’t work for the impromptu/informal conversations that collaboration requires. To make remote work truly viable, we need a platform that puts synchronous, spontaneous communication at its core. Like a mix of Slack, Zoom, and Clubhouse.

We’re looking for an experienced React engineer to help us architect, build, and scale. We’re shipping our alpha for web in a couple of weeks. Later, we’ll be building for desktop and mobile. Our stack is React, MobX, React Native, Ruby on Rails and Electron.

Our founding team is Micah Springut (https://www.linkedin.com/in/micahspringut/) and Justin Faulkner (https://www.linkedin.com/in/justinfaulkner/)

If you join Sidebar, you’ll have the opportunity to: 1) Work remotely forever. 2) Build a great engineering culture. 3) Craft products from the ground up that change the way workplaces communicate.

It’s early days but we can offer a competitive mix of salary and equity. Please contact micah @ sidebar.vc


The Action Network | Back-end (Node.js or C#), Mobile (React-Native/Swift/Java), Front-end (React/Redux/Next.js), Devops (AWS, K8) | REMOTE US or Onsite NYC/SF

The Action Network is an exciting sports media start-up that builds products and creates content to inform and entertain the sports bettor. The sports betting and fantasy sports space is massive ($170bn in the US), growing and underserved from a product and content perspective, and we have the talent, domain expertise and passion to win the space.

We are seeking Engineers who operate with integrity and are highly motivated, creative, and excited about joining a fast-paced start-up. Our primary BE technologies include AWS (lambdas, SQS, SNS, etc.), Node.js, C#, Postgres, Docker, and K8. On the FE we use React/React-Native, Next.js, and Redux.

Please see our careers page for more specifics on each position and links to apply: https://jobs.lever.co/actionnetwork


Surge | Full-stack or Frontend Engineers | Full-time | SF, NYC, or Remote | surgehq.ai

Our mission at Surge is to build the human infrastructure for the next AI revolution. Recent advances in NLP have produced powerful new models capable of understanding the subtleties of language, which need larger and more complex datasets to learn. Our first product is a platform that allows ML teams to tap into our highly skilled annotation workforce to create new datasets at much higher quality and much more quickly than other solutions.

We're a team of former Google, Facebook, and Twitter engineering leads, and we work with top companies at the forefront of machine learning. Our tech stack is Ruby on Rails, React, and Python. We’re rapidly growing, and we're looking for full-stack and front-end engineers to join the team and help develop our product.

Some examples of the problems we are solving:

- The datasets we work with come in a variety of shapes and sizes. What’s the best way to help our users assess the quality of their data, understand edge cases, and iterate on their machine learning work? - Labeling for subjective tasks like hate speech typically involves a lot of nuance, and annotators are often expected to read and retain long documents to understand the guidelines. How can we build a product to communicate the same information to annotators in a more interactive way? - What tooling will empower our workforce to label text, speech, images, and audio in the most efficient way possible? How can we extend our tools to incorporate machine learning to automate simpler work and help annotators focus on the most difficult decisions?

To apply, please email team@surgehq.ai with 2-3 sentences describing your interest in Surge and mention HN in the subject line.


Stytch (https://www.stytch.com) | San Francisco & Remote (US only)| Full-time | Visa Transfer

We build user infrastructure that makes it easy to onboard, authenticate, and engage your users. Improve security and user experience with flexible, passwordless authentication solutions.

Open positions include:

* Software Engineers - Frontend / Backend / Platform

* Product Designer - Consumer Experience

* Product Manager - Consumer Experience

Learn more and apply: https://stytch.com/about

Tech Stack: AWS, Go, Node, Typescript, React

I also recently spoke on the Business Logic podcast about our founding story and how we're thinking about team growth (https://businesslogic.fm/e8-julianna-lamb-on-organization-de...).


Slab | Software Engineer | San Francisco, CA or Remote | Full-time | REMOTE

At Slab (https://slab.com), we are on a mission to make the workplace a source of learning and purpose. Our product is a knowledge base, reimagined to be powerful enough for engineers and remain intuitive enough for the entire company. The founding team has previously started and sold a productivity company to Salesforce and we are backed by top-tier investors, including Matrix Partners, CRV, and NEA.

With our core values (https://slab.com/about) in "Stay Lean" and "The Best Prevails", we achieved seven figures in revenue with a small team, while attracting brands like Asana, Benchling, Fivetran, Glossier, and Vox Media as customers. Our team has been globally remote from the start, so we have the infrastructure to enable flexible work arrangements.

Technologies we use:

  * TypeScript + React
  * GraphQL + Apollo + Absinthe
  * Phoenix + Elixir [1]
  * Postgres
  * Docker + Kubernetes
  * Google Compute Platform
We are currently hiring for:

  * Software Engineer
  * Senior Frontend Engineer
  * Senior Backend Engineer
  * Infrastructure Engineer
  * Software Engineer, Support
You can find our job descriptions and apply at https://slab.com/jobs?ref=hn.

[1]: Our Elixir story is featured on elixir-lang: https://elixir-lang.org/blog/2020/11/17/real-time-collaborat...


> with anything else meaning “upgrade to PRO” which, by the way, costs EUR 0.99 monthly or EUR 8.99 per annum.

This is exactly what I expected to read when I started reading. So many apps have done this to me that I'm now hesitant to install, and become dependent on, any new apps.

I'm genuinely sorry, but I'm not paying a subscription for an app that doesn't do a lot of back-end work (that's valuable to me). No, syncing doesn't count; I have iCloud and Nextcloud and the share sheet functionality for that. No, social features don't count either. This goes quadruple for apps that have a feature enabled and then sneak it behind a paywall many updates later.

And when I write that I'm genuinely sorry, I really am! I know that developers need to earn a living but I'm not willing to sustain it on the back of 10 or 20 or 30 "low annual price of just $9 or $15 or $25 or $49 per year!" subscriptions. If that means fewer apps or fewer people making their living at being app developers, that is bad and I hope that applies pressure on Apple and Google to add features to their app stores that make a better balance.


I have worked at Microsoft, Google and Facebook as a software engineer, going through the full interview process every time.

The thing to realize is that being good at technical interviews (as done by the above companies) is a skill unto itself but it is a skill an intelligent person with a comp sci background has the ability to get significantly good at after a 1 to 2 months of disciplined preparation. - I went to a top ranked school myself and had a comp sci degree but was very intimidated by technical interviews until I realized that this was no different than all the other other intellectual hurdles/gauntlets I had successfully navigated up to that point by giving myself time to thoroughly prepare.

Get "Elements of Programming Interviews" and give yourself 2 months to prepare. Start to with "1-month" plan in the book spending at least an hour a day at the very minimum. (I have worked through both Elements of Programming Interviews and Cracking the Coding Interview in their entirety and while both are good, in my experience Elements of Programming Interviews was clearly the better preparation in terms of technical depth, breadth of exposure to the kinds of questions I faced in the full-day interviews, and succinctness of coding solutions)

Get dry-erase paper/notebook or a white-board and work through the problems by hand including the coding (important!). For the first week or two give yourself an honest focused couple of hours to wrestle with a problem before looking at the solution. it is not enough to settle for "I think I know how to solve this" - Actually code up the solution by hand and step through it with some simple cases. This is important and it allows you to develop confidence in your ability to think methodically through a problem as well as giving you an opportunity to develop mental heuristics for how to tackle and test unfamiliar problems. Developing confidence in your ability to think through interview-style problems is every bit as important as exposing yourself to interview-style problems. As you progress, you will be working towards being able to deconstruct a problem and be ready to start coding up a high confidence solution in 15 - 20 minutes.

"Talk to yourself" as you try to solve a problem to simulate explaining your thought process to someone as you go along.

When going through the solutions in the book, do not gloss over a detail you do not understand. Go online and find alternative explanations/references if you don't understand some detail of the solution provided.

After a few weeks of this kind of daily disciplined prep, you should start feeling pretty good and your confidence should start building nicely. Lots of interview questions are variants of each other and once you have enough breadth, you start quickly being able to key into the "type" of question and possible solution approaches almost as soon as you hear it.

Last thing is when you feel ready to start doing interviews, do not interview with your "top choice" first. If you can find someone that has done interviews to give you a mock interview, great! If not, schedule interviews whose outcome you are not as attached to (relatively speaking) first.

Hope that helped.


Consider applying for YC's Summer 2025 batch! Applications are open till May 13

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: