HNHacker News
TopNewBestAskShowJobs

craigching

881 karma · joined October 21, 2012

submissionscomments
craigching··on Cost of a Integer Cast in Go
They even went one further and explained the answer they're looking for:

You lose data due to overflows which is what we expect

Seems like a reasonable question, though without more context that may or may not be true.

craigching··on Software engineering books
Shame these books didn't make the list:

Structure and Interpretation of Computer Programs: https://mitpress.mit.edu/sites/default/files/sicp/index.html

Concepts, Techniques and Models of Computer Programming https://www.info.ucl.ac.be/~pvr/book.html

The former is probably mentioned and well known enough, but it's surprising to me how few people know about the latter, or at least I rarely see it mentioned in "best computer books"

craigching··on Log4j: The pain just keeps going
Ironically, logging is one of the ways to help mitigate/detect security vulnerabilities.
craigching··on Log4j: The pain just keeps going
> We are all in this together.

The last line from the article and my favorite from Brazil which seems fitting?

craigching··on Learning Go as a Python Developer: The Good and the Bad
Having done both Python and Go for quite some time now, yes, Python modules are a mess, but it wasn’t so long ago that the same could be said for Go (glide-> dep -> go mod anyone else?) Go mod is finally maturing, but there are still some painful edges as well.
craigching··on We Halved Go Monorepo CI Build Time
That’s how I understood it as well.
craigching··on Ask HN: Non-violent video games with great stories?
Second Fez, such a good game!
craigching··on Two Vexing Problems in Functional Programming
I think you're being downvoted because your tone is a bit hostile, so I'll bump you up because I think you make a good point.

I love functional idioms as well, but you have to know the cost of those idioms in a non-functional language. The first thing I did when I had to learn go was determine if I could use functional idioms (map, fold, etc.) and did some research and testing and found that, no, functional idioms are a really bad idea in go. It just isn't meant to be used that way.

For the record, I had to learn go because the team I joined used it.

craigching··on Ask HN: Should I give up and get a job?
That idea sounds a lot like https://materialize.com/

It’s a cool idea though.

craigching··on Rust started as a personal project in 2006
I think I remember that before there was git, I was following the monotone project of which Graydon was the lead. I think I remember when he left monotone to work on some new language for Mozilla, which was Rust.
craigching··on Blade Runner 2099 Sequel Series Coming from Ridley Scott
I’m liking Raised by Wolves, but the birth kind of was a let down. I’m thinking there is way more to it so I’m holding on to hope.

I also liked the Alien prequels. They weren’t as good as the original, but I thought they were still interesting enough. I loved the old ship with the pilot in Prometheus, but I feel like it wasn’t finished either and there could have been more.

craigching··on Blade Runner 2099 Sequel Series Coming from Ridley Scott
The original is a masterpiece, but I wonder how much I’m reminiscing. Sean Young and Rutger Hauer we’re fantastic, though, so I do think there is something timeless about it. I have watched 2049 a couple of times now and still don’t see what everyone else sees as great about it. I’m willing to keep trying though.
craigching··on Alaska's one-house town, home to hundreds (2015)
I saw the post on CNN before seeing it here, remembered your thread, and went back and read it again. It was fun reading the first time around and I enjoyed it again!
craigching··on Books that changed my career as a software engineer
SICP has already been mentioned a couple of times and I agree with that 100%. What I find helps me more than anything to be a better programmer is to find those gems that take you out of your day-to-day routine and help you see programming in a different way. So a couple of other books I’d throw in with SICP are “The art of Prolog” and “The Little Schemer.” I still today admire Prolog’s declarative style so much today. Even though I haven’t had the opportunity to use it professionally, I still come back to it now and then to refresh on it.
craigching··on Books that changed my career as a software engineer
Second this. I credit this book for making me the programmer I am today. Scheme is such a wonderful language having come from C/C++ before it. Of all the subjects that affected me by learning Scheme, using Scheme to implement OO as message passing opened my eyes compared to C++.

Link to a pdf of the book: https://web.mit.edu/alexmv/6.037/sicp.pdf

craigching··on Sonic: A fast JSON serializing and deserializing library
There is this one though: https://github.com/minio/simdjson-go

EDIT: Apologies, simdjson-go is included in the benchmarks and discussed as well.

craigching··on Grafana OnCall: an easy-to-use on-call management tool
Thanks for your comment! We are working on doing more in open source to help pay back our use of open source. We can and will do more!
craigching··on Grafana OnCall: an easy-to-use on-call management tool
Target uses go alert across the enterprise for all on call. Definitely enterprise capable!
craigching··on Old photos of Bedouin nomads, 1898
Ah, thanks a lot for that link, much more information! The OP looks to be a bit misleading as well, not all of the photographs were necessarily from 1898:

  The majority of the images depict Palestine (present day Israel and the West Bank) from 1898 to 1946.
craigching··on Old photos of Bedouin nomads, 1898
1898 is pretty early in the technology of photography, maybe I didn't read carefully enough, but I would like to know what was used to take these photographs. They are very interesting and look better than I would expect for 1898!
craigching··on B-Trees: More Than I Thought I'd Want to Know
I just implemented one in go, working on the repl now. I plan to eventually write it in C++ for a real database, but I’m doing this for my team to teach them the difference between LSM trees and Btrees. I’m hoping to show that a specialized concurrent btree, though harder to write, performs better than LSM trees for the same data. Maybe I’ll make a blog post about it.

EDIT: For more context, this is for time series metrics, so super specialized data.

craigching··on B-Trees: More Than I Thought I'd Want to Know
Postgres has great documentation for their concurrent btree algorithm based on the Lehman Yao paper: https://github.com/postgres/postgres/blob/master/src/backend...
craigching··on Ask HN: Which book or course gave you an unfair advantage?
The course: Object Oriented Programming at the University of Minnesota The book: Structure and Interpretation of Computer Programs

This was back in the early 90s, we learned OO with Scheme. SICP is where I credit my programming ability even today. I think that if I'd taken OO via C++ my eyes wouldn't have opened like they did with Scheme and SICP.

I was, at the time, programming products in C++ for my father's software company while taking classes and I remember a student ask the professor (Dr. Maria Gini, an amazing instructor) why we were learning OO with a dead language instead of a language we'd actually use like C++. And I remember thinking to myself "I'd like to learn something other than C++ anyway". Dr. Gini simply said "because this is how I choose to teach the subject." (something like that).

It was an amazing experience, definitely one of my top 3 classes taken at University.

craigching··on The matrix calculus you need for deep learning (2018)
I refreshed on linear algebra and multi variable calculus through Khan Academy before I took a theory-based machine learning class. For me, it was a really good experience and I can’t overstate my appreciation for Sal Khan’s teaching style.
craigching··on Ask HN: What entry-level telescope should I choose?
Yes, you absolutely hit what I was thinking! I was thinking the 6" Dobs would be portable, the 8" still ok, but past that ... probably not so much!
craigching··on Ask HN: What entry-level telescope should I choose?
Agree on the Dobsonian on being a great entry level option unless you need to be mobile. You can still be mobile with a smaller dobsonian, but the bigger you get, the harder mobility becomes.
craigching··on Go 1.16 Release Notes
Oh, come now, calling C++ templates generics belittles their power. :p Honestly, the one thing I miss in any language is the complete power of C++ templates, but I definitely understand others' reluctance to include something like them in their language. Something that allows me to write simple generic functionality a la Java generics and not have to write the same code multiple times is good enough for me in go.

Luckily I do have some ability to use C++ at my current job, so I can get my fix again there :)

craigching··on Ask HN: Recommended books and papers on distributed systems?
Any of Lamport's papers are classics and great reading for understanding distributed computing!
craigching··on Ask HN: Recommended books and papers on distributed systems?
I used the 2nd edition of this book for a class at the University of Minnesota. I didn't like it at first, but eventually I got used to the style and now it's my go to for reviewing distributed systems concepts. It's good at the introductory stuff, but I would like to see recommendations that would be good follow ons from this.
craigching··on Problems with AI-based monitoring startups (2018)
I don't think of anomaly detection as being the end, it's triage. It shouldn't do more than "I found something that doesn't follow the normal patterns, let me page someone to take a look." And you need to use it strategically, it's not for use everywhere. Like anything, it's a tool and it really depends on how you use it.
← PreviousPage 2 of 20Next →