Live data from Hacker News

Chuck Moore, Extreme Programmer

cs.uni.edu

51–60 of 186 posts

Re: Chuck Moore, Extreme Programmer

#51
post #22

Earlier quoted context omitted.

> References middle-class suburban Iowa > This is truly a place for all. Edit- sorry I reminded you guys that there are other life experiences again.

Small town Iowa is probably not very well represented on most internet forums, so the commenter was happy to see that it was being referenced... That's all. Not sure where your negativity is coming from

White middle class suburbanites aren't well represented on internet forums?

Don't mean to be negative, it's just insane how insular and specific this community is and how little recognition that is given here.

Re: Chuck Moore, Extreme Programmer

#52
Charles' extreme minimalism philosophy aligns well with Forth, but it can work in many compact environments. Scheme and Lua come to mind. It is difficult at first but powerful and liberating to realize that one has full agency over their program. With other runtimes, there is no possible way to either understand the whole thing, or effectively fork it and fix what you want. Not so with Lua, Forth or a small Scheme.

I really like that Lua doesn't ship much in the standard lib, but what it does ship can be used to build the world.

Re: Chuck Moore, Extreme Programmer

#53
post #9

I want to take a moment to reflect on what a great community HN has. It never ceases to amaze me. The link is from the CS department at the University of Northern Iowa in Cedar Falls, IA. It sounds obscure, but that's my hometown. I grew up a couple blocks away from it. I sat in on classes there. I even know the author's family. That's small town Iowa, for ya. I never thought I would see anything related to that on h…

I went to UNI for CS as well. Dr. Wallingford was dept head at the time.

Re: Chuck Moore, Extreme Programmer

#54
post #51

Earlier quoted context omitted.

Small town Iowa is probably not very well represented on most internet forums, so the commenter was happy to see that it was being referenced... That's all. Not sure where your negativity is coming from

White middle class suburbanites aren't well represented on internet forums? Don't mean to be negative, it's just insane how insular and specific this community is and how little recognition that is given here.

Cedar Falls isn't a suburb. 2 hours to Des Moines, 3 to Minneapolis, 5 to Chicago.

Re: Chuck Moore, Extreme Programmer

#56
post #51

Earlier quoted context omitted.

Small town Iowa is probably not very well represented on most internet forums, so the commenter was happy to see that it was being referenced... That's all. Not sure where your negativity is coming from

White middle class suburbanites aren't well represented on internet forums? Don't mean to be negative, it's just insane how insular and specific this community is and how little recognition that is given here.

I'd imagine life experience for people living in small town Iowa is very different from that of people living in major urban centers on the coasts. You're assuming that if someone is white and not rich or below the poverty line that their life experience is equivalent to that of other white not rich/not poor people. That's a false assumption.

Diversity should be celebrated regardless of whether it's within or between different races. The OP was just celebrating a bit of diversity that they noticed and was relevant to them. They were not diminishing other forms of diversity that you may be more concerned with for whatever reason.

Re: Chuck Moore, Extreme Programmer

#57

> Moore also has a corollary called Do It Yourself!, which encourages you, in general, to write your own subroutines rather than import one a canned subroutine from a library. The other side of this coin is NIH Syndrome. I've seen that go wrong in all sorts of ways. One of the key skills of being a great engineer in the real world is exercising good judgment whether to "build or buy".

In the real world, anecdotally, my employers have always preferred to buy 160 hours of my time rather than share 480 hours of someone else's time with 1000 other customers.

It may have been because that person is then 1/1000th as responsive to their specific needs. It also may have been because that person wasn't cleared, and paranoia requires their code to be vetted before allowing it within breathing distance of our network. Or it may have been because buying a third-party tool requires approval of the manager's manager's manager, while rolling your own is the manager's call.

I have never seen a company that makes it easy to buy a third-party license, and never a company that makes it easier to use a gratis licensed software than a paid one. They're all afraid that GPL will infect the code, and it will dance out of our source control onto the Internet like children following the Pied Piper.

And on the other side of that coin, I have also seen licensed third-party software become vastly more trouble than it was worth, especially when it came time to upgrade it to a newer version. In general, though, if a third-party tool already does exactly what you need it to do, and you never need it to do anything else, it is always better to license it, configure it correctly once, and then never touch it again (aside from security-related patches).

Re: Chuck Moore, Extreme Programmer

#58
post #44

Earlier quoted context omitted.

Nobody equated that. The time when he made his is decades ago, so obviously nothing from those days compared to a modern EDA toolchain and associated bits and pieces. I think you subconsciously added the 'modern' in there somewhere and then argued against that.

You might actually be right. When I read this: > He wrote his own chip design software and analog simulator I immediately thought of a modern toolchain. Had I known that this was done decades ago, I might have reacted differently. Nonetheless, even decades ago, both Cadence and Synopsys likely had pretty advanced tools under development. I may be mistaken though.

Heh, I remember running Solo 2030 on Motorola-based Sun workstations almost 25 years ago...

Re: Chuck Moore, Extreme Programmer

#59
post #32
post #7

Quote from ( http://www.ultratechnology.com/1xforth.htm ): “ I wish I knew what to tell you that would lead you to write good Forth. I can demonstrate. I have demonstrated in the past, ad nauseam, applications where I can reduce the amount of code by 90% percent and in some cases 99%. It can be done, but in a case by case basis. The general principle still eludes me. ”

I'm not surprised that the general principle that helps Moore reduce his code size eludes him. Authoring something blinds you to your own style—both to your mistakes, and to your brilliances. It's why prose writers can't be their own editors: you need someone who wasn't in your head during the writing process to actually be able to see what's ended up on the page, rather than just seeing reminders that immerse you ba…

To clarify a little Chuck's projects were not rewrites in the usual sense, but they can still be read that way, as derefr suggests. His famous BASIC compiler for example was an implementation of BASIC, something that's been done a thousand times before but Chuck's was not a rewrite of any particular program.

Much of Chuck's code reduction comes from simply not implementing parts of the problem that most people would not think of eliminating. Other parts he will eliminate that most people would think inconceivable to eliminate.

Other "secrets" of Chuck's ways are that he uses the CLI as a front end, or, spends a great deal of time working on an algorithm and finds a simpler way that is good enough in the application he's working on today. So instead of spending time optimizing for speed or modularity he's willing to specialize his subroutines per application to optimize for concision or simplicity. Somewhat like Woz's optimization to save chips.

I bet most people who investigate Chuck's methods will feel disappointed that the methods don't seem as clever as the end product. What I think most people can take away from Chuck is skepticism about the utility of most programming technologies, which do automate tedium but tend to substitute their own architecture and complexity, for a net loss.

Post reply on HN