HNHacker News
TopNewBestAskShowJobs

azhenley

25,360 karma · joined December 4, 2014

Applied science at Microsoft. AI and developer tools. Ex startup, ex professor at Carnegie Mellon University.

http://austinhenley.com

submissionscomments
azhenley··on Ask HN: What's the best paper you've read in 2020?
What's Wrong with Computational Notebooks? Pain Points, Needs, and Design Opportunities https://web.eecs.utk.edu/~azh/pubs/Chattopadhyay2020CHI_Note...
azhenley··on Between two Lisps
I am often wishing I knew of an easier way to compare Lisps. I haven't used any dialect enough to fully grasp the subtleties. For example, the differences between Racket and Clojure.
azhenley··on Between two Lisps
Time to make a new Lisp!
azhenley··on “I've had to relearn coding to get through the new interviews”
A colleague of mine teaches “Digital Archaeology” as a graduate course where students “mine” git repositories.
azhenley··on Ask HN: C/C++ Project Ideas?
An operating system?

Check out my blog post, Challenging projects every programmer should try:

https://web.eecs.utk.edu/~azh/blog/challengingprojects.html

azhenley··on Yes! High level languages should be used to write systems software (1975)
Sorry, I thought it had public access through ACM.

https://dl.acm.org/doi/pdf/10.1145/800181.810318?casa_token=...

azhenley··on The Road to the JIT
No, this isn't inlining. They're managing their own call stack and relying on undefined behavior. See the quote from the article:

> BEAM/C generated a single C function for each Erlang module. Local calls within the module were made by explicitly pushing the return address to the Erlang stack followed by a goto to the label of the called function. (Strictly speaking, the calling function stores the return address to BEAM register and the called function pushes that register to the stack.)

> Calls to other modules were done similarly by using the GCC extension that makes it possible to take the address of a label and later jumping to it. Thus an external call was made by pushing the return address to the stack followed by a goto to the address of a label in another C function.

> Isn’t that undefined behavior?

> Yes, it is undefined behavior even in GCC.

azhenley··on The Road to the JIT
Putting multiple Erlang functions into a single C function to avoid using C’s stack sounds awesome but also horrifying.
azhenley··on Raytracing in One Weekend (2016)
This has been on my todo list for... over a year. But I hope to do it over the winter break! (I also want to make a non-trivial Lisp too)
azhenley··on I Built My Own Shitty Static Site Generator
It’s such a simple thing to make. It’s easier than trying to figure out and customize someone else’s.
azhenley··on Notation as a Tool of Thought
This is Kenneth Iverson's 1979 Turing Award lecture.
azhenley··on Risp (in (Rust) (Lisp)) (2019)
Nicely written article. I too attempted a Lisp interpreter to learn Rust, but gave up when I couldn’t figure out how to implement a linked list in Rust.
azhenley··on See when you are likely to die (median death based only on gender and age)
If I delete the default date, it crashes instantly and says “An unexpected error has occurred.” Guess I have to type in each piece without deleting the others?
azhenley··on Str: Yet another string library for C language
Every time I think to use C for something, I re-realize how terrible it is to do anything involving strings. Although this library looks nice, I’ll still have to compose and manage them myself , which is a major headache.
azhenley··on Progress bars still lie
Aren't they tracking every app launch? Data on update times would be a drop in the bucket.
azhenley··on Progress bars still lie
Author here. Anyone have thoughts on my data-driven approach described as Solution #2?

Basically: tell me how long it took other people.

azhenley··on Progress bars still lie
Whatever Apple is doing for iOS and MacOS updates isn’t cutting it...
azhenley··on Progress bars still lie
I agree that spinners really aren't useful (for anything that takes more than 5-10 seconds). Solution #2 from the post is what I want!
azhenley··on Error codes are far slower than exceptions
Definitely interesting. Makes me wonder about the performance of sum types for error handling (e.g., Result in Rust).
azhenley··on Show HN: Making Python one-liner-fit with the new pwk (Python With Kurly braces)
There is also Bython: https://github.com/mathialo/bython
azhenley··on You began a PhD and now you have depression
Odd. It works for me.
azhenley··on Hemingway Editor
This seems like it might be nice for technical writing, but won't it reduce creative writing to a boring, uninspired prose?
azhenley··on macOS Big Sur
I've been trying to update and it keeps failing. Now my Mac won't open apps despite restarting multiple times.

Happening to other people too: https://www.macrumors.com/2020/11/12/macos-big-sur-download-...

azhenley··on Guido van Rossum joins Microsoft
I’m excited to see what kind of teams they get going that focus on Python tools!
azhenley··on Vigil: The eternal morally vigilant programming language
I remember PLTGames. I'm sad that it didn't last that long!

I think something like that could do really well now since there seems to be so much interest in the topic now based on all the Reddit and HN posts.

azhenley··on Apple unveils M1, its first system-on-a-chip for portable Mac computers
Yes, they have an Intel emulator (Rosetta I think they called it) and are pushing developers to produce "universal apps".
azhenley··on Apple unveils M1, its first system-on-a-chip for portable Mac computers
If you didn't see the event, they've put the new chip into the new MacBook Air, MacBook Pro, and Mac Mini that will start shipping soon.
azhenley··on So you want to buy a farm?
I was also curious, so I looked it up on Google Ngram Viewer. Looks like the phrase became relatively popular in the 1940s and then started a steep rise around 1994 up until 2012 when it peaked.
azhenley··on Randy Pausch Last Lecture: Achieving Your Childhood Dreams (2007) [video]
Another fantastic talk of his is about time management: https://youtu.be/oTugjssqOT0
azhenley··on Minimal 16x16 Dots Coding Environment
This is awesome and could be a nice educational tool. Although I just want to extend it to allow simple games :)
← PreviousPage 14 of 34Next →