Approximity blog home
493 to 512 of 600 articles InfoSyndicate: full/short

Interesting Ruby page: semantics & semiotics; code manufacture   25 Sep 04
[print link all ]

Some very interesting ruby stuff:

  • Artificial Neural Networks: Implemented a multilayer backpropagating artificial neural network using a momentum term and optionally a weight decay term.
  • Borges mod_ruby Integration: I have managed to get Borges running using mod_ruby. I will produce a library ready version of that and check it in the Borges project.
  • and much more
  • link

Smalltalk with Style   25 Sep 04
[print link all ]
Stephane Ducasse posted this to the Squeak-ML. download
 Smalltalk With Style is now freely available.
 Thanks Suzanne, Ed, and Dave. This is a great book everybody should read!!

 I added the chapter 27 of Smalltalk by Example.
 I added a link to point to the book of Liu: Smalltalk, Object and Design

On reading a text file in Smalltalk   25 Sep 04
[print link all ]
(Source: comp.lang.smalltalk, Lex Spoon) If you accept losing one notch of performance, then you can make much clearer code in Smalltalk. The "file lines" idiom in this thread is very useful, because you can then use collect:, select:, etc., on the resulting collection of lines.

And it is important to consider that once you commit to, say, iterating over an entire file, that the file must be reasonably small anyway to get decent performance. The same issue exists with collections. Who cares if collect: creates an extra collection or if WriteStream wastes space at the end of a long underlying collection; if these concerns are really so important then probably this huge collection should not exist and/or you should not be iterating over the entire thing anyway.

To put it very simply: you just can not expect a program to work on large data structures just because you micro optimized everywhere. If you want to handle large data structures then it takes planning and specialized algorithms and test cases. If you are not going to put in that effort, then don’t sweat the small stuff. It is very liberating to code with an eye towards correctness and towards algorithmic performance, and not to worry about getting down the constant factor. It seems to lead to lower stress, faster code production, and fewer bugs generated.

Euruko 2003 Videos available at ruby-doc.org   25 Sep 04
[print link all ]

link[http://www.ruby-doc.org/downloads/Euruko2003]

The First European Ruby Conference was held at the University of Karlsruhein in Germany, from the 21st to the 22th of June, 2003. It was organized by Michael Neumann, Stefan Schmiedl, Armin Roehrl and with the help from many others.

Thanks to Michael, the presentations were digitally recorded and have been made available as AVI files. Some of theses are now available for download from ruby-doc.org The videos have had the some noise filtering and volume normalization applied, and have been converted to MPEG-1 to reduce (albeit slightly) their size.

Not all of the videos are available right now. Others will go up as time permits me to do the file processing.

I initially had some FTP timeout trouble uploading the files to ruby-doc.org, so I split them into chunks. I decided to leave them this way to help avoid marathon download sessions. To combine the chunks into the complete file you basically just need to 'cat' them in sequence. I've written a Ruby script to do this, available from the video download page. If anyone thinks they can mirror any of these files it would be a tremendous help.

If you know anything about video compression, and can tell me a way to make the files smaller without serious loss of quality, please tell me.

Rake 0.40. is out   25 Sep 04
[print link all ]
Rake is a make-like utility written entirely in Ruby. It allows to you specify build target and actions, with the action being standard Ruby code.

You can get Rake from rubyforge. If you have rubygems installed, then all you need to do is

  gem -i rake

If you have a very recent version of rubygems (i.e. from CVS), then the gen-rdoc option finally produces a decent rendition of the Rake documentation locally.

QuickStartExample

Smalltalk must be dead because ...   25 Sep 04
[print link all ]
Donald Raab posted this goodie to the st-mailinglist.

It’s probably because in order to post in the Java ng he has to be 10x as verbose as in the Smalltalk ng.

He probably has to declare himself, cast himself, wrap himself in a try catch block, bubble up any exceptions, use some external iterators, implement some interfaces, and wrap up his primitives in real objects. Maybe after auto-boxing and generics are supported, he’ll only have to post 7 or 8x as often.

Don’t worry James, we appreciate and understand your terseness over here. ;-)

A Little Ruby, A Lot of Objects   25 Sep 04
[print link all ]
This is a draft book titled A Little Ruby, A Lot of Objects. It’s in the style of Friedman and Felleisen’s wonderful The Little Lisper, but on a different topic.

Welcome to my little book. In it, my goal is to teach you a way to think about computation, to show you how far you can take a simple idea: that all computation consists of sending messages to objects. Object-oriented programming is no longer unusual, but taking it to the extreme - making everything an object - is still supported by only a few programming languages.

Can I justify this book in practical terms? Will reading it make you a better programmer, even if you never use "call with current continuation" or indulge in "metaclass hackery"? I think it might, but perhaps only if you’re the sort of person who would read this sort of book even if it had no practical value.

The real reason for reading this book is that the ideas in it are neat. There’s an intellectual heritage here, a history of people building idea upon idea. It’s an academic heritage, but not in the fussy sense. It’s more a joyous heritage of tinkerers, of people buttonholing their friends and saying, "You know, if I take that and think about it like this, look what I can do!"

link

Squeak: ObjectiveCPlugin process   25 Sep 04
[print link all ]
(Source: Avi Bryant, squeak-ML) A while ago, Alain Fischer announced his new ObjectiveC plugin, allowing Squeak to use Apple’s Cocoa and other ObjectiveC libraries. Todd Blanchard and I have since done some further work on it, and it’s at the point now where it can begin be used to build Cocoa UIs from within Squeak. As a quick test, I built a native OS X UI for the system browser, which you can see in this screenshot: img src="

The code is on SqueakSource: kilana.unibe.ch:8888/ObjectiveCBridge/ObjectiveC-avi.70.mcz You can get a prebuilt plugin (for use with Ian’s 3.7 VM) here: beta4.com/~avi/ObjectiveCPlugin The browser demo can be run with "CCBrowser test". It requires this nib file: beta4.com/~avi/CCBrowser.tgz You need to untar that and place it inside Contents/Resources/English.lproj of your VM application bundle. I’m announcing this partly because I’ve run out of steam on it for now, and am hoping someone else will take it the next step of building UIs for the various Squeak tools (browsers, debuggers, workspaces, inspectors, etc) in Cocoa. A custom NSMorphicView would also be cool, although might be pretty tricky. Anyway, if someone does try to take this on, I’ll be more than happy to answer any questions they have about the underlying bridge code.

Compiere 251d and Oracle 10g and Java 1.5 beta   25 Sep 04
[print link all ]
For all of you that want to be bleading-edge … Perez Juarez posted this to the forum:
 I have run Compiere251d with Oracle10g & Java 1.5 beta :-), and I am very nice.

 You have to make the step:

 1.- Copy the $ORACLE_HOME/jdbc/lib/ojdbc14.jar
 to $COMPIERE_HOME/lib/oracle10g.jar

 2.- Change into $COMPIERE_HOME/RUN_setup.sh  in the -classpath oracle.jar for
 oracle10g.jar

Why's (Poignant) Guide to Ruby   25 Sep 04
[print link all ]

(Source: whytheluckystiff) The (Poignant) Guide is a new approach to teaching Ruby, emphasizing the lingual traits of Ruby and illustrating its uniqueness with comics, visual imagery, and songs with accompanying hand gestures.

This date marks the release of the first three chapters. Feel free to tell your friends and family (a.k.a. Slashdot) about the news. With enough input and support, this book could see completion by next year. Hopefully this is a step towards explaining to the world why Ruby is such an enticing and voluptuous gem to behold.

Go and enjoy the book

Okay, I’ll keep this short. If you want to read more about my motivation, head over to the announcement on my site. motivation

Compiere - Linux-mag article   25 Sep 04
[print link all ]
Like the heart and lungs, accounts payable and accounts receivable keep a company pumping. Money goes out; raw materials come in. Products and services go out; money comes in. If more money comes in than goes out, the company prospers. At least that’s the theory — and the goal.

Of course, the devil’s in the details: there’s inventory to manage, backorders to fulfill, outstanding invoices to collect, orders to process, bills to pay, and customers to service. The goal of business may be simple enough — but the business of running a business is anything but.

Fortunately, computers are a natural for the back office, and software to manage a business — called customer relationship management (CRM) and enterprise resource management (ERP) software — has become a big business in itself. SAP, Oracle, PeopleSoft, and Microsoft charge plenty of beans for bean counting software. For example, Microsoft’s Great Plains Software division charges $50,000 for a license, $100,000 for implementation, and $20,000 a year for maintenance.

But just as Linux has provided a free alternative to proprietary operating systems like Windows and Solaris, Compiere, this month’s "Project of the Month," provides an open source alternative to commercial CRM and ERP solutions. link

Good ruby documentation   25 Sep 04
[print link all ]
Just in case you have not seen this for 1.9

Gametrak   25 Sep 04
[print link all ]
Gametrak. is a new videogames controller, giving you precise and intuitive control in 3D space. link

Unlike cameras, infra-red, RF systems or tilt technologies, Gametrak. allows movement forwards and backwards as well as up, down, left and right.

With Gametrak you can punch your opponents with your hands; sports games let you pick up and play using real golf clubs or tennis racquets . you can even bounce virtual basketballs!

Designed and manufactured by In2Games, Gametrak will launch across Europe o­n PS2 in September 2004 with the revolutionary fighting game, Dark Wind.

Future Gametrak titles include golf, baseball, adventure, dancing and basketball games.

FAQ

Comment: Microsoft's rush to next-gen could see the Xbox take a tumble   25 Sep 04
[print link all ]
(Source: Gamesindustry) from the article
 Microsoft may be making a colossal mistake by trying to force
 the industry into a next-generation cycle before it is ready
 to move. Sony, with its enormous dominance of the market, could
 probably just about get away with it - if it moved, the industry
 would have to move with it, however much it hated the idea. But
 Microsoft, still a relatively small player in the games industry,
 just doesn't look like a company that has the influence needed to
 force a shift like this. It may be backed up by the biggest
 software company in the world, but publishers will still look at
 the bottom line - in this case, installed base and cost of
 development - and base their decisions on that alone. Herein lies
 the arrogance; Microsoft isn't used to making decisions as an
 industry small-fry, and it's trying to act like an industry leader
 in an industry it simply doesn't lead.

PlayStation 2: Computational Cluster   25 Sep 04
[print link all ]
The NCSA has constructed a PlayStation 2 Linux cluster as a test bench for scientific computation on "toy" hardware. The cluster consists of 65 compute nodes, 4 user login and development nodes, and 1 prototype node for software installation tests. All the nodes run the Sony Linux distribution for PlayStation 2. The compute nodes fill a 24-inch rack; 5 shelves at 13 per shelf (see left); link Looking forward to see such solutions for the new upcoming Playstation 3.

This I believe! - Tom's 60 TIBs   25 Sep 04
[print link all ]
Tom Peters is back with more Big Ideas for your job, your company, and your life. The marketing and strategy guru holds forth on why audacity matters, why women are the future of leadership, and why diversity is crucial to business success. Those who have never read Tom will find an excellent primer here; those well-versed in Peters’ ideas can get up to speed on his latest thoughts. link direct pdf download

WebDav in 10 minutes: HTTP gave you read, now DAV gives you write access   25 Sep 04
[print link all ]
The stated goal of the WebDAV (DAV) working group is (from the charter) to "define the HTTP extensions necessary to enable distributed web authoring tools to be broadly interoperable, while supporting user needs", and in this respect DAV is completing the original vision of the Web as a writeable, collaborative medium.

But, people working on DAV have had goals which extend beyond simple web page authoring. Some view DAV as a network filesystem suitable for the Internet, one that works on entire files at a time, with good performance in high-latency environments. Others view DAV as a protocol for manipulating the contents of a document management system via the Web. An important goal of DAV is to support virtual enterprises, being the primary protocol supporting a wide range of collaborative applications. Importantly, a major goal is the support of remote software development teams. A final goal of DAV is to leverage the success of HTTP in being a standard access layer for a wide range of storage repositories — HTTP gave them read access, while DAV gives them write access.

Well, the website clains WebDAV in 2 minutes .. I think 10-20 minutes is more realistic :-). A good starter.

Apache2 already comes with mod_dav.

F*ing software patents will kill open source and small to medium size companies   25 Sep 04
[print link all ]

I just now came across this link on slashdot. The only thing I can say is that like in the RIAA (sic) cases one really wonders about our politicians. And this is the weakest way of putting it .. oh boy! Lessing has said it correctly: *If we don’t fight for our freedom, we do not deserve it*. I am so sick of all these stupid trivial patents like double-click, hyperlinks, etc. .. does anybody care that obvious prior art exists?

The /. link

Some nice quotes :-)

 Ministers were being trusted to represent the view of the government that sent
 them... but it seems as if business interests have found that these
 individuals are a weak link that can easily be "bought off" and convinced to act
 on their own.

 The corporations won the war.

Napkin Look and Feel   25 Sep 04
[print link all ]
Now I did it. I made a Java category in this blog. I think like Paul Graham about Java and C#, but oh well ..

I coped this from: Napkin Look & Feel is a pluggable Java look and feel that looks like it was scrawled on a napkin. You can use it to make provisional work actually look provisonal, or just for fun.

The idea is to try to develop a look and feel that can be used in Java applications that looks informal and provisional, yet be fully functional for development. Often when people see a GUI mock-up, or a complete GUI without full functionality, they assume that the code behind it is working. While this can be used to sleazy advantage, it can also convince people who ought to know better (like your managers) that you are already done when you have just barely begun, or when only parts are complete.

Root: An Object-Oriented Data Analysis Framework   25 Sep 04
[print link all ]

Sven C. Koehler, our hard-coding dataminer has sent me an email while his code was probably exploring the DNA of some beauty. I wonder whether it was the beauty the root-team uses in their logo? Hey, just because of the logo, one ought to give root a try.

 What I was impressed about:
 http://root.cern.ch/root/Mission.html
 ``We started the ROOT project in the context of the NA49 experiment at
 CERN. NA49 generates an impressive amount of data, about 10 Terabytes
 of raw data per run.'';

 ``Thanks to the builtin CINT C++ interpreter the command language,
  the scripting, or macro, language and the programming language are
  all C++. The interpreter allows for fast prototyping of the macros
  since it removes the time consuming compile/link cycle. It also
  provides a good environment to learn C++. If more performance is
  needed the interactively developed macros can be compiled using a
  C++ compiler.'';

 http://root.cern.ch/root/Architecture.html
 ``The backbone of the ROOT architecture is a layered class
 hierarchy with, currently, around 310 classes grouped in about 24
 frameworks divided in 14 categories. This hierarchy is organized in
 a mostly single-rooted class library, that is, most of the classes
 inherit from a common base class TObject. While this organization
 is not very popular in C++, it has proven to be well suited for our
 needs (and indeed for almost all successful class libraries: Java,
 Smalltalk, MFC, etc)''.

 

Powered by Rublog