Older blog entries for mslicker (starting at number 49)

Some comments on Paul Graham's latest essay:

I think he is right about the term "Computer Science", it is a misleading term for an agglomeration of activities. The greatest computer scientists: Church, Turing, Godel are all mathematicians. However, people trained in computer science have little to do with the tradition of the these great mathematicians.

Graham is too derisive about mathematical foundations of computing. He equates programmers understanding the theory of computation to painters understanding the chemistry of paint. This analogy is wrong. A more direct analogy to the chemistry of paint is the physical make up of computers. For all intents and purposes, we don't care to understand the physical processes that make computers work. The computer is assumed to be digital, operating in discrete states.

Moreover it is oversimplifying to make direct comparisons to the work of a programmer and the work of painter. Although a great deal may be shared in the creative process, there are great differences in the function of the art. Programming is a precise art form built on logical foundations. There is simply no notion of correctness in painting, where in programming correctness is vitally important.

Graham says "a good programming language should, like oil paint, make it easy to change your mind". What about water color painting? There is little room to change your mind in water color painting. Programs, by fact of being entered interactively, are changeable. Graham connects this to an argument for dynamic typing. Dynamic typing may or may not have merit, whether painting can give us the answer is another question entirely.

Graham call for empathy in programming is welcome.

Overall I think Graham overemphasizes hacking and code in talking about programming as an art. Somehow "hacking" does not conjure up images of an artful process. Programming is about ideas, precisely that is what ties us to all other forms of art. In mathematics or music composition, the symbols are but a representation for the real ideas mathematicians and composers work with. In contrast to Graham, I find myself more and more working out computational ideas in pen and paper. Code, if it is produced, is only the final expression of this process.

tk, Yes, axiomatic systems are not infallible. Godel showed at best higher order logic is either inconsistent or incomplete. Does that mean we throw logic out the window? All Russell is saying in the quotation is that if we value logic, at some point we must rely on axioms and these axioms are necessarilly self evident, known without demonstration. Although ancillary to my point, this quote comes 1911 (The Philosophical Importance of Mathematical Logic), well after Russell discoverd his paradox (1901).

For now I am in agreement with Marx, his analysis of society, yet I have only read a fraction of his works. "Marxism" seems to have taken a life of its own, sometimes contradictory to Marx himself. How the "Marxists" Buried Marx is an interesting discussion of the Marxism phenomenon.

8 Apr 2003 (updated 8 Apr 2003 at 21:14 UTC) »

More nonsense from tk,

Surprising that only mslicker is protesting, even though I blasted several philosophies all at once............
Blasted several philosophies? In what way? Creating programs to spew nonsense? That is more a blast to yourself, the only criticism you can offer is mocking nonsense, others have done far better. I respond, not protest, because you referenced me specifically, perhaps you are just trolling. It is perhaps wise not to repond to such nonsense.
Anyway, mslicker claims that Marxism is the most scientific philosophy in the world,
Where do I say this? I say Marx's method is the scientific method, this is what has distinguished him from other socialists in his day, he put socialism on a scientific basis. He showed in economic terms capitalism was historically limited. The law of the falling rate of profit is particularly felt by capitalists, who have increasingly moved their production to nations where labor is cheap, just to stay in business.
then says that he's not a "quintessential" "Leftist" (but of course, he's still completely scientific! duh).
Comming to Marx's defence makes me the quintessential "Leftist"? By what logic do you arive at that conlusion?
He extols the virtues of self-evident truths, then criticizes people who arrive at their own self-evident truths.
You arive at your own subjective truth and try to pass this off as objective truth, truth for everyone. The fallacy is obvious. Self-evidedent truths are beyond debate, indisputably true.
Not to mention that he didn't seem to see the part that Left/Right is a false dichotomy.
I think it is false. My justifcation is that there so many degrees political thought, there are rarely just two positions to be taken. Libertarians might be thought of as "rightist", yet many of them oppose the war against Iraq. I oppose the war but in no way associate myself with Libertarian thought.
And of course, his reference to Russell was so laughable, especially in the light of Russell's paradox.
Explain, why does Russell's set theoretic discovery make my reference laughable?
Who's bogus, who's not? You be the judge.
I don't know what it means to be bogus. I don't withhold the possibility you may have something worth while to say, but your present examples do not inspire much confidence.
8 Apr 2003 (updated 8 Apr 2003 at 08:27 UTC) »
tk writes:
On a related note, "Leftists"[mslicker] and "Rightists"[Zaitcev] are both bogus. Then again, the "Left"-"Right" dichotomy is itself bogus.
Ha! Acording to tk I'm the quintessential "Leftist" and bogus. Why? Because tk says so. Under tk's religion truth is declared, it is not supported with facts or reasoning. I cease to be amazed by such idiocy.
28 Mar 2003 (updated 28 Mar 2003 at 18:17 UTC) »
XML Can Represent Pretty Well Anything

This is a quote from one of the people behind XML. As an outsider I've always puzled about XML, what is it supposed to solve? It seems like a nothing technology, the product of the extreme intellectual degradation currently plaguing computing. For the creaters of XML it should be noted the digits '1' and '0' have succesfully represented everything for quite some time, and I didn't have read thousands of pages of text to understand this encoding.

XcolorForth

I suppose I should annouce my port of colorForth. It runs in the X windows environment, instead of interfacing the hardware directly. It should be of help for those who have had trouble running the standalone colorForth. Screen shots can be found at my site.

5 Mar 2003 (updated 5 Mar 2003 at 20:33 UTC) »
google censorship

It appears google is censoring my posts to comp.lang.forth (this is the only group I post to). No notification was given nor any report of what was considered abusive.

I don't post there frequently, but where I have posted, I think I am having a very positive effect on the community. I have caused people to reevaluate their assumptions, and to some extent I have bridged the gap that has split the Forth community in two. My posts are at times colorful, often quite critical, but this is expected for usenet. The decision to censor my posts, made by whom I don't know, seems entirely arbitrary.

Indeed, in google's Terms and Conditions, they explain quite clearly google can do whatever it wants with what is posted through their service:

Google reserves the right at all times to disclose any information as necessary to satisfy any applicable law, regulation, legal process or governmental request, or to edit, refuse to post or to remove any information or materials, in whole or in part, for any reason whatsoever, in Google's sole discretion.
Google reserves the right to terminate or restrict your access to any or all of the Groups at any time without notice for any reason whatsoever.
If this was not bad enough, then comes the license grant:
By posting communications on or through the Service, you automatically grant Google a royalty-free, perpetual, irrevocable, non-exclusive license to use, reproduce, modify, publish, edit, translate, distribute, perform, and display the communication alone or as part of other works in any form, media, or technology whether now known or hereafter developed, and to sublicense such rights through multiple tiers of sublicensees.
Of course it is google's service, and by using it I agree to these terms. However, far more importantly I feel google has betrayed my confidence. Two of my posts are lost, and creative energy imbued in them. I could try to rewrite, but it is not the same. there is an energy in the moment and trying to recreate that can be difficult. A simple notification telling me I can't post through google would be far preferable, as I don't have to waste time and energy, and I can find a service that will post my messages.

And there is issue of far greater importance then my personal mishap. That is the amount of faith currently endowed to google. Many aspects of google's services are of high quality which has lead to google's popularity which in turn has given google a totalitarian position on the web. Their operation for the most part is good natured at present. However given their power, they could very turn down a far darker path, if they haven't already done so. Will the internet be able to break free of google's grasp should this happen? It should not be forgotten freedom from censorship is what makes the internet such a distinct medium. Compare the range of views found on the internet with the highely censored medium of television.

Also is there an alternative to the google group service? It seems there should be a public archive of usenet independent of the "sole discretion" of a single corporation.

--- Update

I found an interesting article which expresses precisely my concerns. It seems I am not alone in my concern of Google's position. As to what should be done, and what difference I can actually make I don't know. I feel public access and distributed public archives are a must for the future health of usenet.

bjf, I admire your veracious replies to mglazer's daily right-wing propaganda, but I take exception to some comments you wrote:

I still stand by my recent thesis: rational and logical discourse with extremists is a waste of time. It is the same if they're religious zealots, Marxists or fascists - their sacred "self evident truths" are unassailable by logic and reason. The best one can do with these kinds of people is to attempt to sideline them, make them irrelevant in order to neutralize their poisonous influence on society.

However, self evident truths form the very basis of logic and reason. To reject self evident truths is to reject logic and reason. As Bertrand Russell puts it:

In so far as it is primitive and undemonstrated, human knowledge is thus divided into two kinds: knowledge of particular facts, which alone allows us to affirm existence, and knowledge of logical truth, which alone allows us to reason about data. In science and in daily life the two kinds of knowledge are intermixed: the propositions which are affirmed are obtained from particular premises by means of logical principles. In pure perception we only find knowledge of particular facts: in pure mathematics, we only find knowledge of logical truths. In order that such a knowledge be possible, it is necessary that there should be self-evident logical truths, that is to say, truths which are known without demonstration. These are the truths which are the premises of pure mathematics as well as of the deductive elements in every demonstration on any subject whatever.

To group religious zealots, Marxists and fascists as the same is simply dishonest. If this is your method of sidelining or making irrelevant what you disagree with, the world is a better place without such commentary. In particular Marx (a philospher and economist) in his day was one of the strongest opponents of religion. His method of analysis was the scientific method of analysis. Marxists were among the first to recognize the rise of fascism and the dangers it posed to humanity. To say Marxism is poisonous influence to society, is simply a reflection of the ruling class's views. To this day Marxism poses the primary threat to their established practice. Hence the constant suppression of Marxist thought in every sphere of society. This is no more true in than in the United States. There is no party of the working class in United States. The lines of debate between the Democratic and Republican parties (the two main parties in the United States) are predominantly between maintaining social services vs. eliminating social services (eliminating "big government"), gun control vs. less gun control, pro choice vs. pro life. The distinctions between the two parties on each of these issues are primarily rhetorical. Most importantly the two parties remain in substantial agreement on foreign policy, economic issues, and the rights of citizens ("homeland security").

Finally bjf writes:

However, ultimately, the power to change the world lies with ordinary people like you and me. In democratic countries where voting is optional, vote!. The system is designed specifically to allow anybody who wants to get involved, to get involved. Vote, join a political party, or support your favorite political causes. Only then can our governments stand a change of reflecting the wishes, desires and aspirations of the majority, rather than a purile corrupt minority. Many people stuggled, fought and died for centuries to build and preserve our system of political freedoms; however our relatively enlightened political systems are constantly under threat unless enough people step forward to make the system work.

The first sentence is indeed true, the true power for change is with the majority. As you continue, you misunderstand the political situation the majority face in so called "democratic" countries. In the United States, major political events fostered by ordinary people such as protests and demonstrations are barely reported in the American media. When these events are reported the participants are marginalized as "extremists". Their views do not come across, there is no debate or recognition of the views from the establishment.

I've briefly outlined the choice U.S. citizens have at the ballot box. Third parties at best can hope to influence the politics of the main stream. From the last presidential election, the significant vote for the Green Party and the policies they represent have had virtually no effect on current policies. The will of the American public can simply not find its expression in the current political system. Not to mention the U.S. presidential election of 2000, where the will of the majority was undemocratically overturned by the unelected right-wing majority of the Supreme Court.

The reason I don't reply to mglazer's daily propaganda is that I understand that he is just one node in the right-wing propaganda network. And it is likely he is a terminal node at that. It is a noble a effort to attack the lies of this network, but probably much more effective to go after the root nodes. In particular, in this log there is no explicit support of mglazer's writings. Refuting his writings is not likely to enlighten many here. In challenging your writing I hope to shed light on issues often misunderstood by left and right alike.

Dijkstra

There is a pretty amazing documentary of Dijkstra on his site

He talks about elegance and his computing experiences. The film itself has an elegance to match, beautiful photography, smart editing. It is 300 MB, but quite worth the download if you are a fan of Dijkstra.

It is hard not to notice the similarity to Chuck Moore's thinking. Both came to computing before the rise of the modern computing industry. Both are exceptional thinkers who value elegance and simplicity in computing. It would seem the art of programing is quickly slipping away in the hands of contemporary programmers.

Linux(used figuratively, as the media) has often been critized in the media as "not ready for the Desktop" (i.e. not enough like windows). Now the criticism is that it is "too much like windows". The irony! It goes to show you can't win with the idiotic media. It is best to do your thing and solve your own problems, not try to meet the expectations of people who write stupid articles.

raph, The important question about automated proof checking, is will it improve the practice of Mathematics, and in your case will it improve the practice of programming?

I believe the main things lacking in the practice of programming today are the lack of good problem solving skills, and clear ideas about software's function and purpose. If basic competence of programmers could be cultivated that would be a large step forward. To believe programmers are going adopt a level of rigor even greater than that of professional mathematicians is quite far fetched, at least in near future.

To some extent, I think projects like GNU/Linux help cultivate bad programming practice. There is an effort to create libraries for every concievable problem. Now, I'm not against reuse, I think reuse is good practice, but perhaps reuse should be on level of ideas and algorithms, instead of sets of functions and data structures. Programmers don't evaluate the code they are using. How well does it really solve the problem, how close is the solution to the actual problem they wanted to solve? Developing problem solving skills natually leads to a precise understanding of the function of code.

Language also contributes great deal to the level of rigor of the programmer. The dominant language of GNU, the language which serves as the foundation for all other software of GNU, is also one of the most intelectually lazy languages of the lot. I'm talking of course of the C language, examination of ANSI standard shows the true fuzziness of the C language semantics. How is a programmer expeced to be precise in a language when the language designers wern't precise in it's creation. What percent of C language programmers understand the precise semantics of the language?

Then there is the issue of design, too much design is layed out in advance, too much design is taken for granted. When is a programmer ever given a clean slate? Linux serves to abstract the hardware. Hardware is viewed as something grotesque, to be covered up. To some exent I agree, but Linux is not an overwhelming improvement. File systems are the single most overused overated abstraction in existence and also the most taken for granted. The OS is the creatation of a programmer designed to protect other programmers from their actions. Hardware designers express similar motivations in their hardware design. The possibility of designing hardware which trusts the actions of the programmer is rarely considered.

In the current state of things, I find it hard to believe automated proof checking is going to advance state of programming practice, or really even make a dent of impact for that matter. If there is any value in automated proving techiniques for programming, I think it is in fully automated proofs of program properties. ML makes a strong contribution here. The pattern matching of ML ensures all clases of input are handled by he programmer. Static anaylsis of programs is large field of computer science, which has a steady stream of results. For example, things as complex as program termination have been proved automatically for large clasess of programs in Prolog. Perhaps these analyses can instill a greater sense of rigor in less skilled programers, but the larger deficit of design and problem solving skills remains unanswered.

40 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!