Even if it doesn't go anywahere, I'm encouraged to see this kind of experimentation happening around Smalltalk:
Hello Smalltalkers, i've been experimenting a Smalltalk VM made in Python these days. Yes, it works fine but it's extremely slow of course. It's just an experiment; i will publish the code soon tough.
Leander Kahney doesn't have kind words for the Rhapsody music service, but I think his raspberry is somewhat misdirected; the real problem is in the OS:
To cut a long story short, every step has been a pain, from downloading new firmware for the player to updating the Windows' underlying DRM software. And that was just to get it working.
Once up and running, the first batch of tunes I downloaded generated nearly 10,000 errors. I couldn't believe my eyes. I wish I'd taken a screenshot.
Since then, the software has been dog slow and unpredictable. It's constantly downloading tunes that I'm unable to sync to the device.
The problem likely isn't specifically with Rhapsody - rather, it's with the excitement of DLL Hell on Windows. A few weeks ago, I wanted to do a COM Connect demo for Smalltalk Daily. I couldn't get VW or ObjectStudio to talk to iTunes via COM. At first, I thought it was a problem on the Smalltalk side (COM on VW does not have a good reputation). I got suspicious when the same problem arose in ObjectStudio. I started swearing when I had an engineer show me code that worked fine for him.
Uninstall, reinstall (of iTunes and XPlay), with many reboots in between. Everything worked fine after that. Which is where we get to the uniqueness of every Windows install
Ever pay close attention to installer messages? Periodically, they tell you (or warn you) that some DLL somewhere is being overwritten. Some of those DLL's are shared by multiple apps. That's what happened with iTunes here; I'd guess that some set of DLL's on Kahney's machine weren't quite correct, but the Rhapsody installer assumed they were. It's as I said in the title - every Windows installation is unique, and each has its own problems.
Technorati Tags: Microsoft
The sad thing is, reading this story doesn't immediately raise the BS filter - the MPAA and RIAA have done and said enough outrageous things (i.e., the assertion that every mp3 player is owned by a thief), that this seems possible:
Los Angeles , CA - The MPAA is lobbying congress to push through a new bill that would make unauthorized home theaters illegal. The group feels that all theaters should be sanctioned, whether they be commercial settings or at home.
MPAA head Dan Glickman says this needs to be regulated before things start getting too far out of control, "We didn't act early enough with the online sharing of our copyrighted content. This time we're not making the same mistake. We have a right to know what's showing in a theater."
I can actually imagine the MPAA asserting that, too. It's getting harder to satirize these people - I almost pity "The Onion"...
It's tales like this one, from Mark Cuban, that breed distrust of the media. I don't trust the reporting from overseas any more than I trust the local stuff - if they can't accurately report an email thread, what can they accurately report?
It's not as if Cuban is the only one noticing this - Dave Winer has opined on this, and instances of fauxtography have been widespread in war reporting over the last few years. It's not new, either - remember the exploding gas tank incident staged by NBC for Dateline?
The trouble is, reporters play at being objective observers, but they aren't. They are as susceptible to bias as the rest of us, and are just as willing to cling to a worldview (even if the facts don't fit) as anyone else. Look at that BusinessWeek story (first link) Cuban got savaged by - in the reporter's mind, Cuban is a loose cannon, willing to say just about anything. Never mind what he actually said; the story just writes itself.
Technorati Tags: news
I thought Scoble's counting of HD's in the home sounded high...
I see a day when every home will have 10 or more hard drives. Heck, in mine I’m already up to 10. Two in my MacPro. Three external. One in my PVR that’s coming on December 12th (yes, we’re finally hooking the HDTV up to a satellite dish). One in my Voodoo machine. One in my Sony Vaio. One in my Xbox. One in my Thinkpad.
But then I counted the ones here. There are 13, plus a few USB flash devices. I think he might be betting low...
Looks like there'll be no end of excitement on the mound in NY next year:
On the day the Yankees officially welcomed soon-to-be 38-year-old Mike Mussina back into their Kate Moss-thin rotation with a two-year, $23 million deal, Brian Cashman said he believes Randy Johnson and Carl Pavano can be counted on to fill in behind Chien-Ming Wang and Mussina.
Johnson has reached his expiration date. I think Pavano passed his the first time he threw a pitch. Looks like it'll be another year of cringing at the starting staff, followed by horror when the bullpen is summoned...
This qualifies as a question that's almost too obvious to answer:
I have been traveling quite a bit lately and have had to rely on public Internet access. Much to my dismay I have found that most hotels and airports still do not offer free Internet access. Why isn't airport and hotel Internet access a standard free feature?
Umm - maybe because people are willing to pay for it? And seriously - since those of us passing through airports and hotels have no real way to protest the charges, what changes do you expect? Ever noticed the (huge) hospitality tax charged by hotels? The egregious charges for net access will disappear about the same time that does.
The 2006 worldwide Cincom Smalltalk Users Conference is next week - here's a last bit of information, including tips on getting to the show:
The conference will start as scheduled on Tuesday, December 5th, at 10:00, with the registration.
For your convenience, here (PDF) are detailed instructions on how to get to the conference venue, the Moevenpick Hotel in Frankfurt. Most of you will be arriving by plane and then take either a cab or public transportation to the hotel. If you arrive by car, please note there are only a few free-of-charge parking lots in front of the hotel - otherwise, you’ll have to use the hotel parking garage which costs 10 Euros/day for attendees of the conference.
Tuesday-Thursday, Dec 5th-7th: Conference
Please see conference program, an HTML version of the complete and final agenda, including speakers’ biographies and abstracts.
We will be providing a video projector to display your presentation on the screen as well as a microphone. Should you require any additional technical equipment, please let us know asap, at the latest by November 30th.
The presentation files will be made available (possibly as PDFs) to all attendees in a restricted area at www.cincomsmalltalk.com for the first 6-8 weeks after the conference. Afterwards, we will grant open access to all web visitors.
We will be audio recording the conference, including your speech. The podcasting will be offered on www.cincomsmalltalk.com with open access. Should you want to opt out of this, please let us know prior to the start of the conference.
Please note that the Moevenpick Hotel is a non-smoking hotel. It provides free-of-charge WLAN access in the lobby and the hotel rooms.
See you there!
We'll be trying an experiment in Frankfurt - we are going to try recording the presentations, and packaging them up as podcasts (they'll go into the normal podcast feed, so they'll show up on iTunes, etc). There's going to be a delay between recording and posting - even minimal audio editing takes time :)
In a press release, Wal-Mart said the service is now available to its customers in all Wal-Mart stores nationwide.
With the purchase of the "Superman Returns" physical DVD, Wal-Mart said customers can also choose from three video download format options -- $1.97 for portable devices, $2.97 for PCs/laptops, and $3.97 for both portable players and PC/laptops.
So much for fair use - you see those tiered prices? That's the DRM tax.
So here I am, new USB drive in hand, plugging it in to Windows.... and no drive gets mapped. I wonder - is the cable bad? Try a different cable (same adaptor used by the camera, the drive and the audio recorder). Nope - same thing. Ok - lets try plugging it into the Mac. Pop - up it comes, working just fine. Hmm.
Back to Windows, into Device Manager. Here's where I delve into properties, see that it's not mapped to a drive. Hit the "populate" button there, and it lists drive H:, which happens to be an existing network share. Ok.... maybe I should move the network share to a different letter???
Sure enough, the new drive really, really wants to be drive H:. Why, I have no idea. It's things like this that make me read stuff like this, (yes, Sam has retracted that) and just laugh, long and loud. Yeah - Windows is just perfect.
Technorati Tags: stupidity
Something Awful has a brief Squeak tutorial up, which has been split off from a discussion of Seaside.
Mark Cuban talked about the connectivity issues of getting TV from the PC over to the TV. Dave Winer weighed in, mostly in agreement. I'd also agree that it's hard, and unlikely to spread quickly - but for another reason, which Scoble touched on, but didn't really explore.
It's about the complexity. It's hard to connect the current range of dedicated devices to the TV and get things working the way you want. 15 years ago, anyone could walk into any room in anyone's house and figure out how to work the TV. Now? It's often different across different rooms in the same house (use this remote, no not that one - make sure the correct input is chosen, no not that one, you can't change the channel while the DVR is operating...)
It's complexity squared now. Add in a PC, with all the attendant issues? Most people don't want to babysit a PC while they watch TV. We have a Media Center PC in the living room, and getting that to work with the TV was an exciting task - gosh knows how much worse trying to deal with HD would have been. Even now, the PC sometimes can't pump sound to the TV (oddly, sound for other things will still work), and it'll need to be rebooted - or everything it records will be silent. That's a load of fun when you only realize the problem after a show has started recording.
I have no idea whether an Apple offering in this space will be better (I suspect it will be), but the "which $%^&* input do I use now??" problem won't get any easier. What people will likely go for is a dedicated box, which is why I said Scoble touched on it with his points about the XBox.
Boy, lots of people were taken in by that BBSpot story yesterday. I linked to it as a satirical piece, as did Slashdot. Digg's post seemed to take it as straight news, and TechDirt noted that they got tons of tips on it from people who took it seriously. I'd wonder whether the mavens at the MPAA had a moment of self realization over that, but that's just crazy talk...
There's been a change in the licensing regime for GNU Smalltalk: it's all GPL now, with some additional modifications that allow inter-mixing of LGPL code (Smalltalk or otherwise) linked in at the image level - here's the relevant section of the post (but read the whole thing: there are lots of details):
In principle, the GPL would not extend to Smalltalk programs, since these are merely input data for the virtual machine. On the other hand, using bindings that are under the GPL via dynamic linking would constitute combining two parts (the Smalltalk program and the bindings) into one program. Therefore, we added a special exception to the GPL in order to avoid gray areas that could adversely hit both the project and its users:
Linking GNU Smalltalk statically or dynamically with other modules is making a combined work based on GNU Smalltalk. Thus, the terms and conditions of the GNU General Public License cover the whole combination.
In addition, as a special exception, the Free Software Foundation give you permission to combine GNU Smalltalk with free software programs or libraries that are released under the GNU LGPL and with independent programs running under the GNU Smalltalk virtual machine.
There are some follow on questions and clarifications in the ensuing thread, which I'd also suggest reading if this is of interest to you.
I see that the "morons against WiFi" coalition has managed to get the UK government to look into it:
Ian Gibson, former chairman of the House of Commons Science and Technology Committee, last week called for the Health Department to set up an inquiry into the potential dangers of Wi-Fi communications. He said the threat should be seriously examined and that another inquiry should be carried out like the Stewart report into mobile-phone radiation.
Are the also out to ban radio transmissions, over the air TV signals, mobile phones, and cordless phones? Or are they limiting their cluelessness to WiFi?
I may be traveling to Germany this weekend, but the podcast is still happening. We will be talking to Peter Fisk, the Vista Smalltalk guy. No telling how long it will take me to get that edited and uploaded; I arrive in Germany at 6 AM Sunday, and will be doing the podcast at 1 PM local time. I may pass out before editing is done :)
Apparently, it's not enough to assert that all mp3 players are nothing by repositories of stolen music:
“Each of these devices is used to store unpaid-for material. This way, on top of the material people do pay for, the record companies are getting paid on the devices storing the copied music.”
Oh, no. Apparently, the entire internet is nothing but a massive instance of copyright infringement:
Now, there's a case called Electro vs. Barker which has become very important. This is a nursing student who was sued in her name. We made a motion to dismiss the complaint because doesn't specify any acts or dates or times of copyright infringement as the law normally requires. We've made several arguments like that before this motion and the RIAA put in an argument which basically fudged it. However, in this case they basically decided to go for the gold and they made a bold argument claiming that merely making files available on the internet is in and of itself a copyright infringement. It was a shocking argument because if it were accepted it would probably shut down the entire internet.
So here's my question - how do the MPAA and RIAA clowns manage to walk upright, given the rectal-cranial inversion they all clearly suffer from?
I have a few things to take care of before I head to the Users Conference - for one thing, I need to get my car inspected by December 5, and that leaves today (my wife already filled tomorrow). So, Smalltalk Daily will be a little late today.
Steve Rubel notes that Yahoo is back to building walled gardens:
Has anyone noticed that Yahoo's love affair with RSS seems to be withering? In 2004 and 2005 Yahoo was all over feeds . It was an early leader in driving adoption, as a matter of fact. But in recent months I question whether they remain committed to RSS as a platform.
This is more than conjecture. In the past few weeks Yahoo has rolled out three major new web sites - Yahoo! Food , Yahoo! Advertising and Yahoo! TV . They're great sites, but none of them has feeds. There's a reason why - eyeballs.
Technorati Tags: Yahoo
|I just finished "When Baghdad ruled the Muslim World". It covered the Abbassid dynasty, which held the caliphate from 750 AD to about 930-940 AD. There was a part of the story that echoed the last book I read, "The Fall of Rome and the End of Civilization". Starting in the latter part of the 9th century, the caliphate came increasingly under the control of the military, and there were constant civil wars and succession conflicts. During the last few of those, Baghdad was besieged, and the irrigation system that had been built up was destroyed - and it's never recovered. The descriptions of Baghdad as a lush city with rich agricultural lands surrounding it sound nothing like the Bagdad that exists now (or that has existed at any time since the 10th century).|
As with the other book, it's a reminder of just how fragile civilization really is. For all our advancements, we share the same thin veneer that Rome and the early caliphate did.
Technorati Tags: history
William Brogden makes a meaningless point in a "REST vs. SOAP" post:
Another important, but frequently unappreciated point is that, in contrast with REST which requires HTTP, SOAP messages can be moved by any transport method which can handle Unicode text. Because of the convenience of HTTP for penetrating firewalls and the fact that developers are most familiar with the Web, HTTP transport continues to be emphasized.
I'd bet you could count on one hand (and use very few fingers doing it) finding all the non-HTTP uses of SOAP. On the vendor side, who actually supports that?
Wired notes that the MPAA seems to like fraud:
Movie industry lobbyists quietly push California lawmakers to quash a measure that would have outlawed HP-style tactics designed to fraudulently obtain private information about consumers. The MPAA argues its antipiracy efforts would be harmed.
It's pretty clear to me why the BBSpot story was believed by so many people; the MPAA is nearly impossible to parody at this point.
Jeff Jarvis tries to dissmiss criticism of the $100 laptop project - but I have a bone to pick on that:
I love the One Laptop per Child project (David Weinberger takes one for a spin here ) and think the criticism of it motivated by PC nitwittery (’you should solve every other problem the poor have before giving them a laptop’) or competitive greed (’how dare you make an inexpensive machine with inexpensive software?’) is ridiculous, even offensive.
PC nitwittery? You mean that some other basic needs, like sanitation and electricity are less useful? You don't think that a bunch of laptops handed out to the truly poor represent nothing so much as a target for extortion? Dismissing completely logical objections is itself stupid.
There are problems with "trying to solve every other problem first". On the other hand, some of those problems might well be worth looking into. Simply dismissing them out of hand is not an argument - it's a refusal to engage.
Technorati Tags: charity
|Tomorrow I'll be flying to Germany, ahead of the Users Conference. I'll be there all week, so if you would like to ask me questions about Cincom Smalltalk, head on over to the Moevenpick hotel - I'm sure we'll be drinking wine and other stuff each evening after the conference.|
So I'm heading to Frankfurt tomorrow, on USAirways, and I decided to check flight status (I never do this). Probably a good thing I did - here's what I found out about the outbound flight from BWI:
Ok, this is fascinating. I contact USAirways. They apologize for not notifying me (so far so good), but then accidentally disconnect me. Sigh. Call back. While I'm waiting, I hunt around on Expedia to see what's there. Looks like there's an earlier PHL flight (goodie - longer layover), and a later flight (which would require moving my flight to Frankfurt as well).
I tried to see if they would move me to the later flights, but no dice - understandable, since they said there were only business seats left. I did express some surprise at that, since Expedia says that there are, in fact, coach seats.
At this point, the call center guy at USAirways got snippy, and tried to blame the whole thing on Cincom travel. Yeah, that's going to make me want to fly your airline again - blame shifting. Looks to me like the powers that be at USAirways need to look at the customer service end of things, and fix a few problems. When you cancel a flight out from under the customer, you don't engage in blame shifting - even if the travel agency was at fault. You accept the blame graciously, and move on. Otherwise, the customer is likely to look elsewhere for their next flight. I know I will.
Update: I checked with Cincom travel, and no - USAirways never notified them. Great job giuys - thanks for making my next flight not be on your airline.
This from Dave Winer:
BTW, according to Amazon, the package that I paid extra to have delivered yesterday, still hasn't left their warehouse. I know I can call them, enough people have sent me their hidden customer service number, but I'd prefer to bitch about it here on my blog. ";->"
Now this was a cool gift from my friends Mike and Jo: A USB Rocket Launcher:
Of course, it comes with targeting controls:
I now have office defense :)
So after an exciting lunch in the food court, I've found a power outlet and have the laptop up. Small glitch though; no wifi. How can the international terminal in Philadelphia have no WiFi access? I feel like I've taken a quick trip back to the 90's. Oh well - I can catch up on all the feeds that updated over night, and read one of my books.
Time for the weekly look at the logs. This week, BottomFeeder downloads proceeded at a rate of 173 per day (I'm also getting another 30 or so per day from the CNet site, but the daily stats aren't really available there). The details:
I only have the Windows version available on the CNet site, and you can see that the Windows download rate on my site is down a little - it's transferred over. On to the HTML page accesses:
|Tool||Percentage of Accesses|
A little more parity between IE and Mozilla this week - they are tied, for all intents and purposes. Finally, let's have a look at the syndication stats:
|Tool||Percentage of Accesses|
|Net News Wire||8.4%|
|Google Feed Fetcher||6.6%|
|RSS 2 Email||1%|
And that's another week in the can
My network-free stay in Philadelphia was graciously extended by USAirways - it looks like yesterday's storms had after-effects lingering into today. We had two gate changes, and didn't get off the ground until after 5:30 (which means that I could have taken the later flight from BWI this morning, and gotten more sleep. Oh well).
Anyway, it looks like we won't be terribly late - we have strong tailwinds, and we'll make up more than an hour of the scheduled air time due to that. On another positive note, there's power at the seats, and my Targus adaptor works nicely with the plugs. Looks like the flight crew is bringing dinner along, so I'll be closing the notebook soon, and flipping over from music to podcasts.
|I finished a quick read this afternoon, while waiting in Philly: " In the Wake of the Plague ", by Norman Cantor. It's more of a "cultural history" of the plague, looking at the changes that followed after the death. A lot of hinge points came up:|
- The death of Princess Joan, daughter of Edward III of England. She was on her way to marry the King of Castile. Had that gone through, there would have been dynastic links between England and Spain - who knows how that would have affected the future history of relations between the two?
- The pogroms against Jews (especially in central Europe) caused a flood of refugees into Casimir's Poland. That led to the large Jewish community in eastern Europe, which was later targeted by the Czars (and extinguished by the Nazis)
- The labor shortages in England, which led to a backlash by the monarchy and nobles - and in turn led to the peasant revolt of 1391 (which in turn led to more brutality).
Anyway, that's just hitting on a few of the high points of the book. Cantor's got a great conversational style, which makes the book very approachable. I recommend it highly.
|Fortunately, I brought another book along: " Tamerlane: Sword of Islam, Conqueror of the World ". I'm not done with this one, but it's a fascinating look at the late 14th and early 15th centuries in central Asia, when Tamerlane raged across the steppes. The name we know him by is one he would have been offended by; it's a corruption of "Temur the Lame", which refers to an injury received in his early career.|
Like a lot of rulers from that era, he was a complex mix of culture and bloodthirstiness - it's likely that he killed millions as he built his empire. One thing I didn't know - he's apparently been rehabilitated in Uzbekistan since the fall of the USSR. His birthplace is in that nation, and he's become something of a national symbol. It's enough to make you wonder how people like Stalin and Hitler will be viewed 6 centuries from now...
Technorati Tags: history
I've finally made it to the hotel (as you can probably tell from the backlog of posts that suddenly appeared). The room seems nice, and there's free wired (and wireless) internet service. That's an improvement from Philadelphia. I'm off to exercise; no idea whether I'll stay awake after that :)
There are some skype artifacts in this one - we spoke to Peter Fisk, author of Vista Smalltalk. Those artifacts were there during our chat, and while they are noticeable, they don't really get in the way. We had a great conversation, and I came away with a much better feel for Vista Smalltalk and where it's going. Hope you enjoy it.
Ralph Johnson talks about some interesting Squeak work:
The last few weeks I've been looking at Pavel Krivanek's project to break Squeak into smaller modules. Unlike most people, who start at the top and try to carve out pieces, he is starting at the bottom. He has developed several images. KernalImage is a Squeak image without any GUI. It has collections, numbers, classes, the compiler, but little else. It has a text-based UI that can evaluate Smalltalk expressions, and it can load files from disk. Pavel has a fileIn for Monticello, so then you can load any other package, as long as it doesn't have a GUI.
KernelImage is a place I'd like to see VW get to, with everything else loadable.
Argh, I hate being a geek sometimes. When I see a computer belonging to a relative that's in such bad shape and instead of just leaving it alone I have to volunteer to "fix it up and make it better", leaving me to be here at the computer at 9 at night on a Sunday running virus scan after virus scan on an old and busted laptop.
That's exactly why I recommend Macs to my non-technical friends and relatives. My brother in law and I were commiserating over the this kind of thing recently. My father in law - a man with multiple degrees and doctorates, who built his own PC (and he's over 80) - needs this kind of periodic help. If he had a Mac, he wouldn't have those problems.
Linux? Sure, it's a possibility. For the non-technical user though, I think a Mac is simpler. And the intel Macs aren't much of a premium (price-wise) over PCs anymore.
Technorati Tags: windows
Nick Carr notes that Google's "spaghetti strategy" hasn't been well received internally, either:
Brin has been particularly blunt. In early October of this year, the Los Angeles Times reported that "Sergey Brin is leading a companywide initiative called 'Features, not products.' [Brin] said the campaign started this summer when Google executives realized that myriad product releases were confusing their users. 'It's worse than that,' said Brin, Google's president of technology. 'It's that I was getting lost in the sheer volume of the products that we were releasing.'" The article also quoted Schmidt, who said of Brin's effort, "That is a big change in the way we run the company."
I suspect that the "20% time" thing - whereby the developers spend up to 20% of their time on pet projects - has a lot to do with the scattershot product strategy. I suspect that it also has a lot to do with some of the products that have been completely neglected (splog magnet Blogger, anyone?).
More than anything else, they need focus. The ad business is doing really well for them, but it's masking a whole host of other problems.
Technorati Tags: Google
I would have put this post up last night, but the hotel's internet service crapped out. So, here we are are this morning :)
With some time to kill, a few of us decided to go see some local museums. What we didn't know is that museums tend to be closed on Monday here in Germany. We did manage to see some interesting buildings though; here's a shot of a church tower taken near the Christmas fair:
Here's another one looking at the other side of the street at the fair:
The fair was packed on the weekend, according to people who were awake enough to get out that day. That wasn't me - I passed out around 5 pm :) Finally, here's a river view I took once we realized that the museums were closed, and all we could accomplish was lunch:
Technorati Tags: frankfurt
We had a pre-conference dinner last night - mostly Cincomers and Heeg folks. Here's a picture I took of one end of the table (my camera's batteries went after this):
From the left, that's Magnus Jakt (Heeg), Helge Nowak (Cincom), Georg Heeg (Heeg), Andreas Hiltner (Cincom), and Suzanne Fortman (Cincom). I'm off to exercise and get breakfast, and then down to the conference. Everything looks good for recording the sessions, too!
The conference has begun - we are recording the sessions, and I should be able to get podcasts up sometime after the conference ends. They'll all end up in the same podcast feed as the regular ones. Here's Dave Wood, EMEA Director for Cincom, opening the conference.
We have a good crowd - a total of about 100 people, including Cincomers and partners. Should be a good conference. Here's Suzanne Fortman, who followed Dave Wood, and then Monika Laurent:
George Bosworth is one of our keynote speakers - he's spent the last few years at MS (as part of the CLR design team). He had previously been one of the leads at Digitalk, for the Smalltalk/V VM. He's doing some consulting now under the name "Ephemeral Consultants". Here's George:
And here's the audience:
The title of the talk is indicative of the content: "Small things matter a lot". George makes the point that as he transitioned from Pascal to Smalltalk (this is way back, before Digitalk was founded), he noticed how much easier it was to read Smalltalk code and understand what was going on.
"Too many details can make it harder to understand"
Here's a nice point: "programming in the small", as opposed to "programming in the large". To wit: Programming in the Small means that you have white box usage and text level reuse, you rewrite/refactor often. Programming the Large means that you have black box usage, object level reuse, and you standardize and attempt to fit things into your framework.
Here's another great quote, that George took from one of the early customers of Digitalk (and still one of Cincom's Smalltalk customers:
"Risk should be managed, not eliminated"
Risks are indicative of upsides and downsides; you can't win if you don't play. Another good one:
"When nothing is working, failure is not to be feared"
This one came out of an IBM lab where they decided to throw caution to the wind, since they figured that they would all be fired if they couldn't deliver their demo app within the (shrinking) time frame they were looking at. Often, we do our best work when there's no other choice :)
Another good insight:
"The critical innovation may not be the software"
Unless the software is actively getting in your way, the real innovation usually needs to happen on the business side, not the development side. Another great point:
"Usage is better than analysis"
"dogfooding" will teach you more about your product than anything else. He gives a great example from Microsoft - they started using SQL Server internally, so that they could learn first hand what did and didn't work. Here's where George sees things going:
- Large Systems
- Huge multi-cores
- Software always on
- old tradeoffs are no longer appropriate
- Requiring perfection leads to disaster
- Mistakes are to be encouraged and learned from (if you don't play, you can't win)
Smalltalk encourages the latter. Having fun is important too!
Microsoft Corp.'s Zune device dropped to fifth place from second in the U.S. market for digital media players in its second week in stores, market researcher NPD Group Inc. said.
Week one sales were better than early reports, but ot looks like things are settling down to mediocre for week two. I still think MS made a huge error in killing PlaysForSure and not supporting Windows Media Player.
I gave my roadmap talk at 2:00 pm; you'll have to wait for the podcast to get the lowdown on that. Up now, we have Andreas Hiltner and Georg Heeg, who are talking about the ObjectStudio 8 project. ObjectStudio 8 is ObjectStudio running on the VW VM (actually, inside VW).
First, a brief history - VW descends (like Squeak) from the original Smalltalk-80 at PARC. ObjectStudio was a greenfield Smalltalk (originally Enfin) aimed specifically at Enterprise users (easy DB hookups, mainframe connectivity, etc). Here's Georg and Andreas getting set up:
Smalltalk has classically been a great system for modeling - so we can model one Smalltalk system in another. VW has the higher performance VM, so we modelled ObjectStudio inside VW. So ObjectStudio and VW live together in the same image, meaning that you can use all the capabilities of both environments inside one codebase. The goal was to make it possible to use existing OST and VW code seamlessly; we've gotten pretty close to that. In most cases, there's only minimal porting necessary for existing ObjectStudio projects.
So the history of this project:
- June 2005: First "Alpha" - not tested
- Then we started testing, fixing compatibility issues (or deciding to use something else. For instance: BinaryObjectStreams are gone, you need to use BOSS instead)
- December 2006: We've been working with some early access customers to test on real applications
Now Georg is going over the basic approach taken. The idea was to model OST in VW, preserving syntax and semantics. This meant:
- Created an ObjectStudioCompiler
- Embedded in a namespace
- Shared much of the kernel code (collections, magnitude, etc)
The other goal was to make OST global names act like they did in older ObjectStudio. One of the interesting things is that ObjectStudio 8 can export code the same way as classic ObjectStudio always has - which means that the source code control strategy OST developers have always used will continue to work.
So we now have:
- One installation
- One VM
- Two sets of DLLs
- One image
- Decision at startup as to what you want to use
Another interesting fallout of this project is the way the event loop is handled: classically, the event loop in VW has been in the VM, and a subset of events have been pumped up to the image. That's been changed: the event loop is now image level (i.e., in Smalltalk). There's a positive side to this even if you aren't an ObjectStudio developer; you can create your own event handlers at the Smalltalk level now.
On source code, ObjectStudio developers can do one of two things: they can use Store, the system used by most VW shops, or use the SmalltalkArchives, which allows file based storage (one file per application). You can also write out class files as you always have in classic OST.
So our schedule: we are entering open beta this winter, and will have a supported release of ObjectStudio 8 this summer (2007). Some known issues:
- Immutability (of literals)
- Declaring Pool Dictionaries
- You must export modeling tool definitions in ASCII (binary format is incompatible)
Another thing to note: The Modeling Tool will not be supported in the initial release of ObjectStudio 8 - we would appreciate feedback from the Smalltalk community on this.
The cool thing is that everyone benefits. OST developers gain access to all the components of VW (WS*, web apps, etc, etc). VW developers get native GUIs on Windows (if they rewrite the GUI using OST frameworks). They also get access to mainframe connectivity.
In OST 8, the VW browser and debugger are used, while the OST inspector and workspace tools are still around.
Niall Ross is talking about in place updating of an application. Here's Niall:
The fantasy scenario: "We'll port to (insert language here - could just be a new major release of something like Cincom Smalltalk), freezing development while we port". Fantasy, because no one can go through the porting period with no new features.
The reality: Frantic development continues while you port - which makes the porting task all the more difficult.
Niall recommends an agile approach: work with the pressures, not against them. So you minimize early code changes (namespaces, class definitions, etc).
Porting from single namespace Smalltalk to modern VW - create a single name that will be used, and to start with, do this:
- Build a package with only a namespace and the right resolutions
- define a "faux" namespace that actually maps to the Smalltalk namespace (which allows you to make the bigger change later).
Niall also recommends keeping the old (non-namespaced) and new (namespaced) codebases in synch, in Store. You can do this by creating rewrite rules and reconciling code between Store packages/bundles. One key tip: defer broken initialization issues until later. Loaded code is easier to fix than unloaded code.
The demo Niall is showing is pretty cool - using rewrite rules and a port of Store for Glorp to VW 3, he's replicating code from VW 3 into a Store repository, and then reconciling it in VW 7.x. Another cool thing - Niall and a few other people have extended the rewrite engine piece of the RB with menus, in order to make it easier to use.
This is Andreas Hiltner and Mark Grinnell going over how you approach a migration from OST classic to ObjectStudio 8. Some limitations:
- ObjectStudio allows "- 500" as a message - that's not supported
- For backwards compatibility, method parameters can be overwritten. VW typically does not allow that.
- Global Variables are now SharedVariables defined in the ObjectStudio namespace.
- The ObjectStudio 8 compiler does not allow duplicate names between instance and class instance variables
- Immutability: literals cannot be changed at runtime (however note: in the Parcels directory, there's a backwards compatibility parcel).
- All loaded ObjectStudio code will end up in the ObjectStudio namespace (and, you need to descend from those classes in order to get the ObjectStudio Smalltalk compiler)
- If you subclass collections, you need to implement the instance method #copyEmpty: in order to copy any new instance variables you want to preserve.
- Note the #at: and #at:put: have different return semantics between OS and VW. The OS semantics have been preserved in the OS8 classes.
- Note that #whileTrue: now returns nil, and #whileFalse: also returns nil. In classic OS, they had returned true and false (respectively)
- The new Date class only allows valid dates (it raises an exception on errors). Also, month names are now case sensitive.
- Processes: Classic OS uses native threads for Smalltalk processes. In OS 8, these are all green threads (eliminates a host of synchronization issues). The ThreadBrowser has been replaced by the ProcessMonitor.
- SendHooks don't exist - MethodWrappers are the VW version of that.
- Breakpoints do not have much overhead any longer.
- User written primitives: you may well have to make some modifications to these - we provide an example makefile showing what you need to do.
- Nil (with the capital) is now a special instance of OPTR. Any pointer should be checked against Nil, not NULL or 0 (zero)
- SQL Server: The old db-lib interface has been deprecated - the interface now uses ODBC.