How do you feel about walled French cities? Farmers? Roads? Cloisters? If you answered any of those questions with a full-throated rebel yell, then I'll presume you're already familiar with Carcassonne, the tile-based board game in which you lay out farms and cities and populate them. You'll likewise be glad to know that the game's making its way to the iPhone and, eventually, the iPad.
I haven't played recently, but I've invested many a happy hour into that game :)
I ran across an interesting post from a guy who's made the move from Rails to Seaside - not because he has anything against Rails, but because he decided that Seaside was a better choice for him. You should really read the whole post - he goes through his learning process (yes, there were and are some hurdles to getting into Smalltalk) - but I really liked this bit:
A real debugger - in reality, most development time is spent editing code, and debugging. Debugging web apps has always been a tough thing. With seaside, it’s really a matter of going to a debugger on a crash, and inspecting the objects. You can edit the objects (and their methods) while they are live. While the system is running. you can also set breakpoints willy nilly, and inspect and edit the system on the fly. It’s hard to describe how alive the system is. You just need to try it.
People underestimate the importance of this a lot. In fact, you can find plenty of developers (including Rubyists) who will tell you that you shouldn't debug at all; tests will do it all for you. What that really means is this: debuggers in other languages are very, very different from what we have in Smalltalk, and when you get into Seaside, it's even more cool:
It's not just a debugger - it's a live editor of your code that happens to be debugging a live process
In Seaside, you can debug intra-hit
That latter part tends to throw people unless they see it; here's a screencast showing it off in Seaside, and here's another, showing it off in WebVelocity - which moves the entire Smalltalk environment into the browser itself - allowing for a seamless develop/debug/deploy chain. I like to describe it this way: normal debugers let you play the part of forensic pathologist - you get a dead body, and have to figure out what killed it. With Smalltalk, you're a surgeon - the patient is knocked out, but you can patch him up and send him off after you wake him back up.
One thing that I just noticed - I haven't done new versions of those videos in a bit - so I guess I have a couple of screencasts to do in the near future :) When I do that, I'll update this post. Anyway - they show off what I'm on about. Give WebVelocity a try, and see what Smalltalk can do for your Web Apps - it combines ActiveRecord with Seaside, along with the full support of the Cincom Smalltalk team.
Sometimes you run flat into a brick wall - you can usually resolve issues with the Smalltalk debugger, but - what if you're having problems at the VM level?
Well, there are two online resources that should give you some tips on getting started:
Today's Smalltalk Daily looks at how to create a BlockClosure on the fly, based on user input. This screencast is based on a user request; the actual example is very dangerous! To download the code used, click here. Click on the viewer below to watch it now:
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
No one knows what it is, or where it's coming from design-wise, or why it exists at all, but according to Microsoft's Xbox 360 press blog, it'll be available on May 18 for 400 MS Points, or $5. Before you get too excited, recall that Dragon Age Origins: Awakening--the last major expansion for the game--costs $40 in the store (equivalent to 3200 MS Points).
For that cost, it really can't be much; sounds like a new area for Awakening, maybe?
While Adobe does not have any Appleproducts on the show floor at the Web 2.0 Expo in San Francisco, the company is showing off prototypes of upcoming Android-based tablets. The Google Android Tablet, even in a pre-release form, is capable of running applications and features based on Adobe's Flash and Air codes.
What will be interesting is seeing what HP will do with their WebOS (Palm) based tablets, widely anticipated to debut next year. I expect they'll support Flash - in which case, we coud be seeing a rerun of the PC vs. Mac game. Apple has a head start this time with the app store, but the more open devices will have advantages as well.
Microsoft’s Internet Explorer dropped to a historic market share low in April, according to Net Applications. The company estimated IE’s market share at 59.95% in April, which is about the range that was reached by Internet Explorer 4 more than 11 years ago in early 1999.
There are reports that Apple might get an anti-trust investigation - over their developer policy, and the new ad platform they are ready to roll out. It would probably be simpler for Apple to back off, but after Jobs rolled out his "Flash stinks" letter, that's going to be a dificult climb down - as PC World reports:
Whether Apple will truly reverse its developer agreement remains to be seen. Apple believes it has good reason for its decisions, and the company may be reluctant to back down after Jobs' public defense of its policies.
Even if the lawyers recommend backing off (and who knows if they do) - Apple will have some egg on its face. I think it would have been smarter for Jobs to say nothing, so that his options could have remained more open. Now? It's in that emotional realm that's so hard to escape from...
I loved the original StarCraft - I hope the sequel is as good as it sounds. It's hitting stores on July 27th; I think I'll have my credit card ready :)
I found these tow posts - one on Reddit, one on the "Code Bubbles" project - to be a fascinating contrast. Over on Reddit, someone flagged the release of GNU Smalltalk 3.2. This generated the all too common "image based development stinks - real me use code in files" argument. For instance:
Can this Smalltalk implementation use the typical file model and compile down code into native binaries, or does it use the g****** image model and require the interpreter to run any apps?
All by itself, that's not noteworthy - discussions around image based development often get heated like that. What I found interesting was this comment from the Code Bubble project:
Developers spend significant time reading and navigating code fragments spread across multiple locations. The file-based nature of contemporary IDEs makes it prohibitively difficult to create and maintain a simultaneous view of such fragments. We propose a novel user interface metaphor for code understanding and maintanence based on collections of lightweight, editable fragments called bubbles, which form concurrently visible working sets.
The UI metaphor you see in the video detaches code from files, and - more or less - simulates an image. Maybe we'll see convergence over time.
Prices vary per course, but Virtual-TA estimates the program costs a university about $12 per student per assignment. Six assignments for 20 students would cost $1,440. EduMetry graders receive from $500 to $1,000 a month, depending on hours worked, according to GlobalPost, a news service.
At one point, I might have worried about these sorts of jobs going overseas, but I've been looking at the cost of a University education (I have a teenage daughter a couple years away from that) - and the costs are absurd. The next logical step is streaming video to multiple locations from a single good professor - and when that happens, the cost of an education might finally leave the stratosphere.
According to a person familiar with the matter, the Department of Justice and Federal Trade Commission are locked in negotiations over which of the watchdogs will begin an antitrust inquiry into Apple's new policy of requiring software developers who devise applications for devices such as the iPhone and iPad to use only Apple's programming tools.
I thought the efforts against Microsoft were silly, and I think this is too - the market will (eventually) deal with Apple if they have gone too far. However, that's simply my opinion. Apple should be more worried about what the folks at Justice and the FTC think.
As I explained above, the problem CAN NOT be fixed by simply exporting your footage using OGV Theora, because by the time you decided you want to charge for your video, or upload it on a free streaming site with ads, or you used a non-licensed *decoder* to edit it, you're already liable. In fact, you've already made your decision which route to take by the moment you pressed that "REC" button on your camera! Theora (and any other Free codec) only helps you in one small part of the licensing minefield that MPEG-LA has setup in the last 20 years. It doesn't protect you in the whole chain of creation-editing-exporting-sharing, which is how MPEG-LA has locked us in for good.
If their reasoning is right, most people who have shot video and uploaded it to YouTube (et. al.) are in violation - because the streaming ads push it off "non-commercial and personal". Maybe, I don't know. Certainly if you charge for video in any way you could have a problem.
On the other hand, I can't see how the patent owners would enforce this now. Doesn't mean they won't try though - witness the idiots at the RIAA and MPAA....
What she and many others who work with children see are exchanges that are more superficial and more public than in the past. “When we were younger we would be on the phone for hours at a time with one person,” said Ms. Evans. Today instant messages are often group chats. And, she said, “Facebook is not a conversation.”
If you jumped into the wayback machine to the 70's, there were plenty of people worried about the impersonal nature of phone conversations, and how it "just couldn't replace" face to face conversations. I suspect that this current worry is part of the ever present worry on the part of adults that the next generation is somehow being ruined by technology.
Today's Smalltalk Daily looks at how to open a workspace with your own text in it. To see the code in a Smalltalk environment, browse the class side examples in Workbook - click on the viewer below to watch it now:
You can download the video directly here. If you like this kind of video, why not subscribe to "Smalltalk Daily"?
I mentioned in my last blog post about Xtreams that I wanted to devise a way of sending object messages between images while also allowing file transfers and other large data transfers to happen without interruption. This is not something that Opentalk has typically been good at - if you have a giant collection of data and you start returning it on your connection, that connection is locked up until you're done. I've started a new Xtreams-Xperiments addition which I'm calling Shared Substreams.
This week's podcast is part one of our 2 part podcast with John Maloney, one of the members of the Scratch project at MIT, and John Mcintosh, the long time Smalltalker who's been developing the Squeak port to the iPod/iPhone/iPad. Recently, John's port ran into issues with Apple, and Scratch has been removed from the app store. As you'll find out in the podcast, that's not due to the new language restrictions - although those do raise a different bar. In any event, it was a fun podcast, and we learned a lot about Scratch, which is a great environment for teachin kids about software.
To listen now, you can either download the mp3 edition, or the AAC edition. The AAC edition comes with chapter markers. You can subscribe to either edition of the podcast directly in iTunes; just search for Smalltalk and look in the Podcast results. You can subscribe to the mp3 edition directly using this feed, or the AAC edition using this feed using any podcatching software. Starting with Episode 186, you can also download the podcast in ogg format.
To listen immediately, use the player below:
If you like the music we use, please visit Josh Woodward's site. We use the song Effortless for our intro/outro music. I'm sure he'd appreciate your support!
If you have feedback, send it to smalltalkpodcasts@cincom.com - or visit us on Facebook or Ning - you can vote for the Podcast Alley, and subscribe on iTunes. If you enjoy the podcast, pass the word - we would love to have more people hear about Smalltalk!
As the chart [link above] shows, in the past four quarters, the H.264 format went from 31 percent of all videos to 66 percent, and is now the largest format by far. Meanwhile, Flash is represented by Flash VP6 and FLV, which combined represent only 26 percent of all videos. That is down from a combined total of 69 percent four quarters ago. So the native Flash codecs and H.264 have completely flipped in terms of market share (Flash also supports H.264, however, but you don’t need a Flash player to watch H.264 videos)
Wow, I had no idea. I thought Flash was still the biggest player - but it looks like Apple has already won that battle. As one of the folks on the Smalltalk IRC channel pointed out: "h.264 won the day that youtube started using it"
The iPad’s built-in YouTube application strips both standard and HD videos to a dramatically lower resolution over the cellular data connection, something that iTunes Store video previews notably do not do, instead staying at a higher quality and consuming a greater amount of data. Other third-party applications, such as the ABC Player, refuse to work at all over the cellular connection, producing a notification pop-up that states, "Please connect to a Wi-Fi network to use this application. Cellular networks are not supported at this time."
So... if you had a Netbook and one of the 3G cards you can slap into a USB port, does this happen? I suspect not. Steve Jobs might want to hop on this, as it's clearly a bigger part of the experience than whether Flash supports touch well or not...
Dvorak gets this right - what if Microsoft played the mobile game the way they played the PC game twenty years ago?
Microsoft's key to success with a Zune Phone would be the addition of all sorts of screwball features. An easy way to do this is to do what Microsoft has always done: copy other people's work. In this case, the handset should come preloaded with 100 apps. It wouldn't take a lot of time to find out the top 100 iPhone apps. Clone them and pre-install them on the Zune Phone—or make them a part of the phone's basic functionality.
It's not as if they lack the resources to do that - they have money galore, and tons of talent. What they apparently lack is leadership.
Apple is shutting down Lala at the end of May - that's awfully close to their June announcements. Does this mean that we can expect a rollout of a streaming service from Apple? It's hard for me to understand why they would have bought Lala if that isn't planned....
HP has conceded the tablet war before it even engaged in battle by terminating the HP Slate project.
This device was supposed to be one of the major Windows based answers to the iPad - now it's a non-answer. Whatever you think of Apple's moves on Flash and language development restrictions, it looks like they'll win the early stages of that battle - simply due to the fact that they'll be the only ones playing the game.
Engadget notes that Microsoft is echoing Apple's lines about the future of video on the net. Cast your mind back a decde and ask yourself whether things would have progressed from Apple to Microsoft that way:
Where Steve Jobs leads, Microsoft follows -- how's that for shaking up the hornet's nest? It's said in jest, of course, but we've just come across a post from the General Manager for Internet Explorer, Dean Hachamovitch, and the perspective expressed by him on the subject of web content delivery broadly agrees with the essay penned by Jobs yesterday on the very same subject. Echoing the Apple CEO's words, Hachamovitch describes HTML5 as "the future of the web," praising it for allowing content to be played without the need for plug-ins and with native hardware acceleration (in both Windows 7 and Mac OS X).
No, Microsoft isn't banning Flash from IE - but further down Hachamovitch did single it out as a security and reliability problem that needed attention. It's been a bad week for Adobe.
Adobe's CEO has responded (in an interview) to Steve Jobs' smackdown:
Narayen didn't offer much we haven't heard Adobe say before, but his frustration with Apple is palpable even in summary form: he called Jobs' points a "smokescreen," said Flash is an "open specification," and further said Apple's restrictions are "cumbersome" to developers and have "nothing to do with technology." What's more, he also said Jobs' claims about Flash affecting battery life are "patently false," and suggested that any Flash-related crashes on OS X have more to do with Apple's operating system than Adobe's software.
The market will figure this out - it's Apple's way, Google's way, RIM, and whatever HP does with Palm. I'd include Microsoft, but they've been fumbling the ball in this space for more years than I can count.
Facebook has just given us an idea of how quickly these widgets are being adopted: a week after f8, 50,000 websites now feature the Like button and the other new plugins.
There were plenty of people who thought that it would happen some other way - but what was really needed was a critical mass of social users (all the Facebook users) who could be encouraged to start using simple "semantic web" stuff such as the "like" button. I'm part of that 50k - look at the bottom of this post :)
YouTube has started to roll out a new Flash video player across its site that features not only a completely new design, but also offers some nifty bits of information about the performance of the current video.
However this plays out, it is not going to be a quick thing...
Today's Smalltalk Daily looks at reusing column buffers with Oracle (version 9 and up) with VisualWorks. This is an upcoming feature of VisualWorks, scheduled for VW 7.7.1. If you're looking for a particular topic, you can find it with the Media Search application on our site.
What are Workspace Variables? Well, a Workspace Variables is just like any other variable, except that it is defined in the context of the current Workspace. This way you can get always the content of the variable, if you use the same Workspace.
That's what's cool about Smalltalk - want a feature? You can add it, whether you're an expert like Andreas or not.
For example, to access the Google Spreadsheets APIs and Tools, you need to download the Java client libraries and all its dependencies. The paths to there Jars must be known to the JVM and can be set through JNIPort. For easy deployment, I put together a single jar using an Ant build script
That's pretty cool - there are tons of Java libraries that connect to tons of things and JNIPort opens up that world to Smalltalk. It's all about reuse :)
Looks like there won't be a climb down for Apple - Steve Jobs has released a public letter on Flash - and why he doesn't want it on Apple's mobile devices. He went through a whole set of points, building up to this last one: Jobs doesn't want cross platform tools being used to build apps:
Flash is a cross platform development tool. It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps. And Adobe has been painfully slow to adopt enhancements to Apple’s platforms. For example, although Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5. Adobe was the last major third party developer to fully adopt Mac OS X.
Maybe there was some kind of compromise possible before this, but - not so much now. Apple has - from the very top - told Adobe (and every other non-native toolset, for that matter) to "go fish". That means the lines are drawn now: there's the bright lines of Apple's app store, and the less well drawn ones for Android. Meanwhile, HP sounds like they intend to invest real money in WebOS, so there's going to be real competition in this space. Game on.
"It is time for every single member of the BF Community to take a stand! There is absolutely no reason for any middle school student to be a part of a social networking site! "Let me repeat that - there is absolutely, positively no reason for any middle school student to be a part of a social networking site! None."
Right.... just like there was no reason for his generation to use a phone. When this guy joins the 21st century and reality, he should let the rest of us know.
Then you lost your battle, or war, or sale - whatever it was you were attempting. Based on the graphic, it's not entirely clear what was being attempted :)
Today's Smalltalk Daily looks at using Statement Caching against Oracle (version 9 and up) with VisualWorks. If you're looking for a particular topic, you can find it with the Media Search application on our site.