HNHacker News
TopNewBestAskShowJobs

gosu

265 karma · joined June 11, 2012

submissionscomments
gosu··on CMU 10-701 – Introduction to Machine Learning
There are also videos and slides of the same class being taught by the chair of the machine learning department at CMU.

http://www.cs.cmu.edu/%7Etom/10701_sp11/

Direct link to the videos is here:

http://cc-web.isri.cmu.edu/Panopto/Pages/Sessions/List.aspx#...

The viewer is sadly Windows-only, but you can use the RSS feed option (in the top-right) with something like gPodder to download .mp4 files directly:

http://cc-web.isri.cmu.edu/Panopto/Podcast/Podcast.ashx?cour...

gosu··on Ubuntu will switch from X window server to Mir
Brutal.
gosu··on Dwarf Fortress: Ten hours with the most inscrutable video game of all time
I actually got bored towards the end of my first game of DF because it was too easy.

The interface adds a lot of illusory difficulty, but that's not an issue for people used to reading manuals. On the other hand, when you're not wrestling with the system, there's not much fair challenge. When your underground fortress is filled to the brim with traps and completely self sufficient, no one is ever going to touch you unless you handicap yourself.

Once I had my base built out the way I wanted it, there wasn't much left for me to do. Kind of reminds me of how Minecraft feels once you've built a satisfying shelter, but I think that Minecraft's music and FPS perspective can motivate people to keep playing for the sake of creativity. With DF: sure, it's fun to imagine my fortress and all, but then I might as well move away from the keyboard and just do the whole thing in my imagination.

gosu··on Is 2013, the year of Linux gaming?
What you're saying is reasonable, but I'm amused by the fact that the standard template for this discussion is NOT "it's the year of the Linux desktop, I just know it!" but rather:

"Is this the year of the Linux desktop now?"

"No, that's a cliche. But Linux is getting better and Windows is bad as ever."

"Next year will be the year of the Linux desktop!"

gosu··on Official Steam client for Ubuntu released
> There seems to be the profiler that is windows only. I never used it so i can't report on that.

nvvp? It works for me on Linux.

gosu··on Massive Dosing - the LSD Thumbprint
I generally agree with you, and find myself revolted by pseudo-(or not-pseudo-)-religious tripe of the sort in the OP.

But I also don't think that it's unreasonable to say that altering your manner of cognition for a while can cause you to reflect on yourself in a new way and realize something new.

In practice, though, I've never really seen this theory come to fruit. Having acid trips was really fun, but my cognition really was more impaired then altered, and I didn't learn or realize anything.

gosu··on Yours vs. Mine
>it seems damned impudent of them to be assuming my voice

I agree. This is something that has been bothering me every since Windows XP. I think less about what marketers want and how desperate it may or may not be, and I spend more time feeling offended that someone is presuming to intrude into my personal space in my program on my machine and tell me how I plan to use it. It's like they're misrepresenting me to myself, and it never fails to provoke much scoffing and eyerolling from me. I consider it a major signal of BS in software.

On the other hand, software which uses "your" or no pronouns at all can do almost exactly the same stuff - like creating a default organization of data - and I don't mind. I see it as a respectful suggestion which has my best interest in mind, and I'm more likely to actually incorporate their idea into the way I do things because I'm not immediately on the defensive.

Edit:

This reminds me of when I was staying at one of those tropical beach resorts and one of the souvenir sellers was announcing "shopping time, everybody!" to everyone that passed by. I didn't like that he obviously wanted me to participate in a dishonest exchange, but he was presumptuously "reminding" me that giving giving him money is a natural part of my day, the same way that I have an "eating time" and a "sleeping time".

gosu··on We Need to Have Sympathy for Those With Depression. It is an Illness
>no matter what it says there are many people who love you

I hear this platitude all the time and I don't think that it's constructive. Disconnectedness and depression go hand in hand, in my experience. You may be blessed to have many people who love you, but a decent portion of the human population objectively doesn't, and can recognize it. So saying such a thing to a depressed person seems to run a high risk of rubbing their loneliness in their face.

gosu··on "I Will Ruin Him" – How it feels to be stalked
That did go through my head when I was writing. I'd say that there's different ways to use that word, and that usage felt somehow different to me than the one that you're referring to.
gosu··on "I Will Ruin Him" – How it feels to be stalked
A mentally ill person - even one who is criminally so - is still a person, and not "the animal". Maybe you're just trying to hammer home the predator/hunt thing, but it still sounds really wrong to me. Whatever bad thing happened to you, don't let it corrupt your own sense of humanity.
gosu··on Linked lists in C, with open source ADT
This isn't how I'd do a linked list in C. Having to malloc separate storage for the next/prev pointers imposes a big cost in terms of performance (it's hardly O(1)) and robustness. Your linked list operations can all fail now - sooner or later, that's going to put you in a very tight spot.

I prefer to store next/prev pointers with the data itself, and to use offsetof/containerof to find a pointer to the data struct which contains a given set of next/prev pointers.

One example of such an scheme is the list used in the Linux kernel:

http://lxr.linux.no/#linux+v3.7.3/include/linux/list.h

http://lwn.net/Articles/336255/

gosu··on Ubuntu in 2013
Perhaps the issue is that Mark hasn't been the only one working on Ubuntu. Maybe other people who have contributed their time and effort in some form are unhappy to see it go to waste. (You probably don't want those people to go away, by the way.)

Maybe people who haven't contributed anything are unhappy to see a good thing go seemingly bad, as a matter of principle. Or, like someone mentioned, they're sad that Ubuntu's remaining community resources (which might not strictly be Mark's to spend) will now be spent in a way that doesn't benefit them and their friends.

Then there are people who might be offended that they were excluded from Ubuntu's audience in the name of "not excluding people from Ubuntu's audience".

gosu··on Ubuntu in 2013
After hanging on to vanilla 11.04 (the last gnome2 release) until it became too out-of-date to use, I switched to xmonad with a dzen workspace display in place of gnome-panel. It took a fair amount of time to customize (which I can do now, no thanks to you, Ubuntu), but now my DE is optimal again.

I eventually wound up switching off Ubuntu altogether when I realized that I seriously disagreed with its general direction of removing customizability and features for marketing reasons, that I disliked most of its core applications, and that Arch, with its AUR, had a more complete and up-to-date repository of software that I cared about. That particular switch was pretty time consuming, but I learned a decent amount about the modern Linux userspace. I have a nice sleek system now that does what I want it to, and not the other way around.

Have a nice life, Ubuntu. Good luck getting grandma to install you.

gosu··on Dear Open Source Project Leader: Quit Being A Jerk
That was snarky and uncalled for. I think IRC is rubbing off on you, whether you want it to or not.
gosu··on I’m writing my own OS
Agreed. I just wanted to talk in general to make sure that people weren't too intimidated. I think a hobby OS is a great way to become a better programmer.

About the course: the extent to which we were guided was minimal by design. It wasn't a matter of "here's a skeleton, here are steps A, B, and C to get it working", but rather "here's an API, implement it; here are some general design ideas". I think that this is comparable to what you'd get if you sat down with a book on your own, and so I hope that it might give people a decent idea of the level of difficulty of such a project.

I emphatically agree with your point about the difficulty of a newbie + PCI situation, although a year still seems steep.

gosu··on I’m writing my own OS
At my university, students in groups of 1 or 2 write a fully preemptible, multiprocessor unixy kernel and userspace on x86. Essentially nothing is provided except a bootloader, a build system, a syscall spec, and some moderate protection from the details of some hardware beyond the CPU. This is considered doable in a semester by college students, some of who have no preparation except a general "here's what a CPU register is, here's what caching is" course. No one reads 20-30 books, but rather most students work from first principles and wind up reinventing the usual algorithms on their own.

I thought I'd offer a more optimistic counterpoint. I think that the 10,000 hours figure is way, way overestimating the amount of time needed in order to create something usable enough to make you satisfied, and which could teach you enough to understand any real operating system at the level of source code.

Although, yeah, if you've got commercial aspirations like OP, then I think you're in for it.

gosu··on Early sketches from web designers
I used to draw out little graphs representing data and more exotic structures, but I found that trying to focus on the paper would ruin my train of thought. I try to visualize that stuff in my head now, and it's gotten easier with practice.

It's not intentional, but it seems like my method has turned into "stare at a wall for an hour, and then write function prototypes."

gosu··on Show HN: P2P Marketplace for renting stuff
Great idea. I'd use it, if there were things to rent in my area.
gosu··on Eye movements could be next PC password
Further in the future, eye-movement scans could also help security officials determine if someone is ill or emotionally distressed.

Sounds like a Voight-Kampff test.

gosu··on More people should write
I think that the author of the post was trying to address exactly this question of purpose. I'm basically going to reiterate what he said, but here's my own take on it:

You can get over your hurdle in two ways:

- You can trust that your writing will be exciting for the future you. When I started keeping a journal, it really did seem so forced. But sure enough, when I read it a year later, I was captivated by the forgotten person and experiences on the page.

- You can trust that the activity of writing will help the present you to collect and develop his thoughts. Usually, I start a journal entry by writing about some dream, memory, or recent event. In thinking about my reaction to the event, I wind up making a general observation about one of my own beliefs or characteristics. At that point, I forget the event and just go on a tangent about that general topic. An example would be "Steve was wearing a hat today. I don't like it when people wear hats. I think that hats are [insert thesis here]."

I wind up thinking deliberately about something that I've never paid much attention to before, and the act of constructing a written linear narrative forces me to be thorough and precise in a way that my mental narrative isn't. If the topic is some concept that's unrelated to me, then I'd say this helps me to form actual opinions about the world, and to be a more confident in my decision making. I'd also agree with what the post said about "preoccupations". And if the topic is myself, then I find that it somehow helps my self-esteem to look at myself from a distance. Everybody looks more graceful from the outside.

In trying to collect my thoughts on the original topic, I usually find myself making more claims about other interesting topics - and so I sometimes run out of time to write before I run out of things to write about. An example of this would be the claim that I just made - "everybody looks more graceful ...".

gosu··on A Modern Space Cadet
So X will translate keycodes from the keyboard press/release events that contain keysyms + modifiers + more (look up X keypress event) that get sent to your terminal emulator. Your terminal emulator will translate those into ascii chars or sequences in order to send them to your editor. (Note that, without translating some of these X keyboard events into escape sequences, you can't express the full range of possible keys and chords in ASCII.)

You can define custom translations keysym for some terminal emulators. I've done this in urxvt in order to free up C-j and C-S-[letter] combinations for my own use.

urxvt will allow you to translate the Shift_L keycode into "(" or "()" or "i_love_hacker_news_<3". And it still does it's job as a modifier too. The only problem is that "i_love_hacker_news<3" will be output as soon as the press event is received, so you'll output "(" even when you press shift as part of a chord.

You can write perl scripts in urxvt that can capture X keyboard events, and maybe your script could only output "(" if it detects that no intermediate X event was detected between the press and the release of "(".

I'm not totally sure that you get THAT much info from urxvt, but it's the best approach that I know of. As an alternative, maybe you could write a program to intercept X events before they reach the terminal (and/or any other program).

That's about as far as I care to go right now.

Let me know if you get something working, I'd be interested in using it too.

gosu··on An Interview with Brian Kernighan on C and The C Programming Language
I'd say that it's bad to put #pragma once in your minimal set, since it's nonstandard. Why not use plain old include guards?

For me, container_of() is also indispensable. Although maybe it's on the level of 'errno' as being "not really a dirty macro".

gosu··on An Interview with Brian Kernighan on C and The C Programming Language
For me, modern C means modern C features more than modern C style. I use the following "new" features all the time: compound literals, designated initializers, variadic macros, and anonymous arrays.

Dr. Dobbs did a nice series on C99 features, so I'd recommend that as a supplement to K&R.

http://www.drdobbs.com/the-new-c-compound-literals/184401404

gosu··on An Interview with Brian Kernighan on C and The C Programming Language
I use #define to do things that plain C just can't do, and I wind up wanting to do these things pretty often. Two of the most important strengths of macro functions, for me, are VA_ARGS and the related ability to write a macro that counts the number of arguments which it has been passed. Oh, and using container_of() to write generic data structures.

Given that Kernigham and Ritchie were using C to write an OS, it's not surprising that they'd be wary of dynamic allocations.

gosu··on An Interview with Brian Kernighan on C and The C Programming Language
the debugger knows how to print them.

I just want to emphasize this point, as this is the main advantage in my eyes.

gosu··on To Encourage Biking, Cities Lose the Helmets
To be fair, what you've just proposed is also a conspiracy theory.
gosu··on To Encourage Biking, Cities Lose the Helmets
And no one would ever ride a bike again.
gosu··on Ask HN: What are your hobbies?
Math and my toy OS. A little lame for a programmer, but you do what you love, right?
gosu··on Show HN: We got tired of asking 'What browser are you using?' and created this
Tried it with Conkeror on Linux:

"We're sorry, but something went wrong."

gosu··on A proposal for improving HN : it should cost a user Karma to post
Yes, your post does sound "grumpy". If you're aiming for civil discourse, then there's no reason for you to phrase your attacks as condescending rhetorical questions.
← PreviousPage 3 of 4Next →