Recent submissions

Comment · 3 years ago
I am a PhD student looking for a summer internship, my research area is programming languages and compilers

    Location: West Lafayette IN USA
    Remote: yes
    Willing to relocate: no
    Technologies: Java/Kotlin, Rust, C/C++, JavaScript/TypeScript (Node.js and web), Swift (iOS), Coq (formal methods)
    Résumé/CV: https://jakobeha.github.io/Resume.pdf (https://jakobeha.github.io is my personal site with more info)
    Email: jakobeha at gmail dot com
Comment · 3 years ago
I am a PhD student looking for a summer internship, my research area is programming languages and compilers

    Location: West Lafayette IN USA
    Remote: yes
    Willing to relocate: no
    Technologies: Java/Kotlin, Rust, C/C++, JavaScript/TypeScript (Node.js and web), Swift (iOS), Coq (formal methods)
    Résumé/CV: https://jakobeha.github.io/Resume.pdf (https://jakobeha.github.io is my personal site with more info)
    Email: jakobeha at gmail.com
Comment · 3 years ago
Comment · 4 years ago
It's another bare-bones OS.

I've taken the class at Purdue. The way the class works it was divided into 4 "projects" where you had to add features to Xinu. In my semester those were: a more advanced scheduler, locks, process permissions, and a file-system.

Comment · 4 years ago
A UI can be represented as a set of concurrent/asynchronous prompts. UI takes the model and possible next actions, presents this to the user, gets a response, and returns this as an action which is then applied to update the model.

Alerts and login forms are clearly prompts. But so is an complex editor: it constantly prompts the user for the next action, e.g. enter text or change existing text’s formatting. Or a social-media site: possible actions are “login”, “view post”, “create post”, and so on.

Even an FPS can be warped into a prompt-based UI, where the model is the game state (or what the player sees of it), and the prompts are “move, turn, shoot”. But you probably shouldn’t do that. Asp bad examples: a weather or stock viewer where your options are null, and the model is the weather or stock which you can’t change.

Nonetheless prompt-based UI is really useful for many otherwise-ordinary cases. It lets you write a UI like a CLI and automate your UI very easily; it tells you which state is truly part of the “model” and which is just part of the UI; it’s composable spatially (more elements) and temporarily (series of steps). I don’t know if it’s been explored much.

In prompt-based UI, the UI is sort of a pure function of the model. It’s an asynchronous function which takes the model and returns a stream or future of the next action(s).

Comment · 5 years ago
I think this is more of a thing for college students who are getting their first job.

IME I've heard a lot more people interested in side projects than the other commenters. But I'm also a lot younger, and heard this usually in different universities.

Once you actually get a job, you put that on your resume and it's better than a side project.

Comment · 5 years ago
Honestly I consider my running and other forms of exercise as "work", even when they're fun.

Exercise maintains physical health, which IMO is more important than any amount of career success.

Comment · 5 years ago
I should've mentioned that I actually took Spanish classes a few years before Duolingo. Those classes taught me the grammar and why the rules exist, but I didn't memorize many words (or I forgot) and I had serious trouble understanding actual Spanish speakers.

Duolingo "teaches" alternate tenses weirdly and IMO too late. But it does well for memorizing words, and it has people speaking with actual Spanish accents and forces you to understand them. So it's particularly helpful for me.

Comment · 5 years ago
Not quite, but I experience very bad logic and logical inconsistencies in dreams. For example:

- Can't even do basic math, or I solve it wrong (e.g. 2 + 3 = 7) - Impossible (non-euclidian) spatial arrangement - Leave out big gaps of details, which I have to fill in if I remember the dream. Not that I'm forgetting stuff, I just never thought of it in the first place - Misremember stuff from the past

Comment · 5 years ago
I use Duolingo to learn Spanish. It's very simple but the streak system has kept me making slow progress. I've only gotten to "Checkpoint 3" (of 7) but it seems to be working well - I don't speak fluent but I can usually read signs etc. in Spanish and actually understand them.

The main issue I can see them facing is: it's very simple, so easy to clone. And Duo has its flaws, so I wouldn't be surprised if of those clones are a lot better. I like Duo, I use it now, but I could switch to another service in 1 second.

Comment · 5 years ago
This looks a lot like existing co-op programs, where undergraduate students are hired as (typically paid) interns and take a break from classes while they work. AFAIK these programs usually work really well, to the point where my undergraduate college became very competitive and popular solely because of its co-op.

Co-op work is not classwork, so it removes the incentive for students to submit lazy contributions for bad grades. Yet co-op students actually benefit their companies because said companies continue to hire them.

Of course, the main difference with open-source is that nobody is paying the student. But still - either investors in FOSS can "hire" students to work on various open-source projects, or the students can choose to work unpaid (perhaps for less tuition, or part-time work on the side, to make ends meet). But I really think adopting a co-op model would be easier and more effective than trying it in the classroom.

Comment · 5 years ago
This seems to be what Apple Arcade is doing. You pay a subscription to Apple and get access to curated games with no ads or microtransactions. Apple pays the developers, although I don't know how.

AFAIK it's going pretty well. I don't actually own Apple Arcade, but the games all look really nice, and no ads or microtransactions. Maybe someone who knows more can comment.

Comment · 5 years ago
I really wish internet games were the future. Both from the producer and consumer side - as someone who tried to make games before, and currently owns a low-end mac (great for productivity but bad for gaming) - I really believe the ideal is web-games that are easy to start and work everywhere.

The issue is that at least in my experience web game engines suck. JavaScript is slow and awful for large-scale software, even today. Frameworks which compile into JavaScript and WASM (e.g. libGDX) compile incorrectly, leading to obscure awful bugs, and they're still slow because JS. Your best bet is a general-purpose game engine like Unity or Godot which can export to web, but still, the web export is often broken, missing features, and just slow. Even tiny games I've played on itch.io either don't load or play super slow, and sometimes that might be the dev's fault, but often I think it's the state of web-gamedev in general.

Comment · 5 years ago
Cool, thanks for the response.

Btw, I suggest adding links to https://m3o.dev from https://m3o.com and vice versa. Until your response I didn't see that the former site existed.

Comment · 5 years ago
I'm probably missing something - some of these APIs I get, but some just seem useless.

Why do I need an API to convert images? Find emojis? Convert "John" to "Hello John"? (ok the helloworld service is just a demo.) I can do that on the client using Javascript.

Moreover, why this instead of something like AWS Lambda, where you code your own service? Instead of prebuilt APIs, why not make it more general?

Don't get me wrong, this seems like a great service and I can see some niche use cases. Also basic APIs for things like database operations and authentication which can actually get pretty complex, and like getting the weather which you can't do yourself. But I can't really see the benefit to some of these APIs, and a custom lambda-style service-creator seems better than a lot of niche APIs and "submit a form if you want your API here".

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton