<body><script type="text/javascript"> function setAttributeOnload(object, attribute, val) { if(window.addEventListener) { window.addEventListener('load', function(){ object[attribute] = val; }, false); } else { window.attachEvent('onload', function(){ object[attribute] = val; }); } } </script> <div id="navbar-iframe-container"></div> <script type="text/javascript" src="https://apis.google.com/js/platform.js"></script> <script type="text/javascript"> gapi.load("gapi.iframes:gapi.iframes.style.bubble", function() { if (gapi.iframes && gapi.iframes.getContext) { gapi.iframes.getContext().openChild({ url: 'https://www.blogger.com/navbar/5588906282693401797?origin\x3dhttp://novembertech.blogspot.com', where: document.getElementById("navbar-iframe-container"), id: "navbar-iframe" }); } }); </script>

flickr

Openbravo R2.34

Saturday, November 03, 2007

Managed a successful install of Openbravo on my spare hardware (Athlon 2500+ 512MB RAM 80GB HDD Ubuntu 7.10). Well, not that successful, but it wouldn't need me to install if it's so easy anyway. Will post some pics tomorrow, as my Openbravo is in a totally screwed up condition right now, due to my itchy fingers. I reckon that reinstallation is needed.

Anyway, what I basically did was to follow the instructions here (http://wiki.openbravo.com/wiki/index.php/Openbravo_Command_Line_Installation) on a clean install of Ubuntu 7.10, with some minor changes of course. In the case of "echo" commands, I kept getting bash error saying that permission denied for /etc/environment and /etc/profile. To solve the problems, I keyed in "sudo nano /etc/environment", and added in the few lines manually, similarly for /etc/profile.

One important thing to take note is that the default username is Openbravo, password openbravo. Case sensitive. These are not the ones that the installation interface asked during installation, aka name and password of administrator. I've got no idea on why they asked that since there's no use.

The ERP runs fine on Tomcat, normally, with occasional exceptions. Another thing I don't understand is why the default entity name is Big Bazaar. I mean, better ways could be used, such as creating an empty database, and allow the administrator to create entity on the first login. Creating of users is simply too tedious with the default "Big Bazaar" entity, and undocumented processes.

Since I've only been with the software for less than an hour, I shouldn't say anything on the functionalities. However, at this stage, I don't see any possibility that Openbravo can compete with SAP or Peoplesoft. It lacks the basic requirements of any operational firm - stability, availability of documentation, and ease of use.

Not everyone understands Spanish, and while I understand that Openbravo tries hard to sell its training video, it just shouldn't compromise on the quality of documentation. I'll see if I have anything to write tomorrow.

Labels:

Author: Bo Tian » Comments:

Spyware

Thursday, November 30, 2006

I, Tian Bo, declear war against all spyware and adware on 1 December 2006 3.00am.

Labels:

Author: Bo Tian » Comments:

DRM is simply annoying and useless

Tuesday, November 21, 2006

It's good to be back. Been busy preparing for my O levels for a long time.

The most popular service for this year? iTunes of course. 99 cents for a piece of music, did I say low quality and unreliable? It's 128kbps AAC and DRM protected, which means you cannot play it on your other computer, you cannot play it on a MP3 player other than their very own iPod, you cannot burn your favorite collection onto an Audio CD, you cannot enjoy the original vibes of the song, and the list goes on. Simply speaking, it's a waste of money.

It seems that all the inconvenience make sense in the name of protecting the music industry, but how does DRM help? We can always use software like Audacity to record what we hear! And that renders all the protective measures useless. Look at various bittorrent websites, and one will be shocked to find that almost all released and yet-to-be-released full albums can be found, in high quality. Music ripping has been part of the internet, and is not going to be ended anytime soon without an understanding and caring music industry. Give us high quality music, give us freedom, and we will give you our money in exchange.

In the mean time, for music lovers, don't be discouraged by DRMs. There's a great service called allofmp3. Perhaps, that's our only comfort.

Labels:

Author: Bo Tian » Comments:

U.S. Patent No. 7,069,308? wadda crap!!

Tuesday, October 24, 2006

Sorry readers, I've got little time recently due to studies n problems setting up my LAMP server. Ok, this is what I found today, 7,069,308 & obviously it's crap. Friendster invented it? I doubt so.

What is claimed is:

1. In a computer system including a server computer and a database of registered users that stores for each registered user, a user ID of the registered user and a set of user IDs of registered users who are directly connected to the registered user, a method for connecting a first registered user to a second registered user through one or more other registered users, the method comprising the steps of: setting a maximum degree of separation (Nmax) of at least two that is allowed for connecting any two registered users, wherein two registered users who are directly connected are deemed to be separated by one degree of separation and two registered users who are connected through no less than one other registered user are deemed to be separated by two degrees of separation and two registered users who are connected through no less than N other registered users are deemed to be separated by N+1 degrees of separation; searching for the user ID of the second registered user in the sets of user IDs that are stored for registered users who are less than Nmax degrees of separation away from the first registered user, and not in the sets of user IDs that are stored for registered users who are greater than or equal to Nmax degrees of separation away from the first registered user, until the user ID of the second registered user is found in one of the searched sets; and connecting the first registered user to the second registered user if the user ID of the second registered user is found in one of the searched sets, wherein the method limits the searching of the second registered user in the sets of user IDs that are stored for registered users who are less than Nmax degrees of separation away from the first registered user, such that the first registered user and the second registered user who are separated by more than Nmax degrees of separation are not found and connected.

2. The method according to claim 1, wherein the step of searching is first carried out in the sets of user IDs that are stored for registered users who are directly connected to the first registered user.

3. The method according to claim 1, further comprising the step of transmitting a profile of the second registered user to the first registered user for display.

4. The method according to claim 3, further comprising the steps of: storing a connection path between the first registered user and the second registered user, the connection path indicating the one or more other registered users through whom the connection between the first registered user and the second registered user is made; and transmitting the connection path between the first registered user and the second registered user to the first registered user for display.

5. The method according to claim 4, wherein the connection path transmitted for display includes a hyperlink for each of the one or more other registered users through whom the connection between the first registered user and the second registered user is made.

6. The method according to claim 1, wherein the maximum degree of separation is set by an operator of the computer system.

7. The method according to claim 6, wherein the maximum degree of separation is set as four.

8. The method according to claim 1, wherein the database further stores for each registered user, e-mail addresses of individuals who are not registered users and identified by the registered user as friends.

9. The method according to claim 8, further comprising the steps of: sending out an invitation to become a registered user to friends of a registered user; receiving an acceptance from a friend to whom said invitation was sent; and adding said friend to the database and storing for said friend, a user ID and a set of user IDs of registered users who are directly connected to said friend, the set of user IDs stored for said friend including at least the user ID of said registered user.

10. The method according to claim 9, wherein said invitation is sent out by electronic mail.

11. The method according to claim 9, wherein said invitation is resent a number of times prior to the step of receiving.

12. The method according to claim 9, further comprising the step of notifying said registered user that said invitation to said friend has been accepted when said acceptance is received.

13. The method according to claim 9, further comprising the steps of receiving inputs from said friend and storing said inputs in the database, wherein said inputs include descriptive data about said friend.

14. The method according to claim 1, further comprising the steps of: prior to the step of connecting, transmitting brief profiles of registered users, including a brief profile of the second registered user, to the first registered user for display, each of the brief profiles including a hyperlink to a corresponding full profile; and receiving a hyperlink selection from the first registered user, wherein, upon receiving the hyperlink selection for the full profile of the second registered user, the full profile of the second registered user is transmitted to the first registered user for display.

15. The method according to claim 14, wherein brief profiles of those registered users who are more than Nmax degrees of separation away from the first registered user are not transmitted to the first registered user for display.

full details: http://patft.uspto.gov/netacgi/nph-Parser?Sect1=PTO1&Sect2=HITOFF&d=PALL&p=1&u=/netahtml/PTO/srchnum.htm&r=1&f=G&l=50&s1=7,069,308.PN.&OS=PN/7,069,308&RS=PN/7,069,308

Labels:

Author: Bo Tian » Comments:

All blogging tools you'll ever need

Monday, October 16, 2006

Adminimizer Toolbar
ashnews
AvantBlog
b2
b2.evolution
Blog
Blog Navigator
BlogAmp
Blogarithm
Blog (Web-Tagebuch)
BlogBack
Blogbox
blogBuddy
BlogChat
BlogCounter
blogdex
blogdexter
BlogFace
BlogFlix
BloggerBot
BlogHoster
Bloglet
BlogLinker
BlogMax
Blogrolling
BlogSnob
blogsnow
Blosxom
bookmarklet.ping
bplog
Bricks Site Builder
Chronicle Lite
CityDesk
CocoBlog
corzblog
csBlog
Project DAWG
diary2002.cgi
dotcomments
Drupal
Easy Blogs
EasyMoblog
ecto
enetation
EzWebBlog
Falou & Disse
Falasterio
Frequency
Geeklog
googlebox js
GoogleBrowser
Greymatter
handX webLog for Palm OS
iBlog
Instant Gratification
InTerra
Jabber
Jericho
jogger
Journaling Script
JustBlogIt
Link Feedback
Link Hype
LiveJournal Meme Tracker
Manila
MarsEdit
Master WebLog
monaural jerk
Movable Type
MozBlog
myMediaList.com
MySmartChannels
NanoBlogger
NewsBruiser
Nucleus
Open Journal Project
Particle Blogger
Personal Weblog
PhoneBlogger
PHPBloggerAPI
PHP-Blogger
phpWebLog
PikiePikie

Labels:

Author: Bo Tian » Comments:

Protect yourself from uneven volumes

Friday, October 13, 2006

After ripping your CD collection unto your computer or downloading MP3s from the net, have you encoutered uneven volumes? It's common that classical music are softer, while rock music are louder. When a track is very soft, you increase the volume of your MP3 player, but the next track is significantly louder, and you failed to revert back to the original volume. The consequences are severe, especially if one listens to music through earphone. There are several simple solutions to such problem:

Foobar2000
Run Foobar, click File-->Preferences-->Playback
Make sure the Source mode under Replaygain is album.
In the play list, select all tracks by clicking the first track, press Shift on the keyboard, and click the last track.
Right click, and select ReplayGain-->Scan selection as single album. Save the new tag, and you are done.




iTunes
Select View-->Preferences
Under the Playback tab, check Sound Check.



iPod
Update your firmware to the latest version. Connect it to the computer and run iTunes.
In the main iPod menu, click on Settings - Sound Check - On

Labels:

Author: Bo Tian » Comments:

13 must have Firefox extensions for web surfers

Wednesday, October 11, 2006

I'm just a normal web surfer and blogger who use Firefox as my default browser like the majority of you (my readers). I use the following tools on a daily basis:

Performancing - a full featured blog editor that sits right in your Firefox browser and lets you post to your blog easily. You can drag and drop formatted text from the page you happen to be browsing, and take notes as well as post to your blog.

Gmail Space allows you to use your Gmail Space (2 GB) for file storage. It acts as a remote machine. You can transfer files between your hard drive and gmail. Your gmail account looks like a FTP host and you can upload and download your files.

VideoDownloader Download videos from Youtube, Google, Metacafe, iFilm, Dailymotion, Pornotube... and other 60+ video sites ! And all embedded objects on a webpage (movies, mp3s, flash, quicktime, etc) ! Directly !

Flashgot Download one link, selected links or all the links of a page together at the maximum speed with a single click, using the most popular and reliable external download managers for Windows, Mac OS X, Linux and FreeBSD. Supported products are dozens such as my favorite FlashGet.

AdBlock Right-click on a banner and choose "Adblock" from the context menu - the banner won't be downloaded again. Or click Adblock Plus icon in the toolbar to see all elements of the page and block the banners. You can use filters with wildcards or even regular expressions to block complete banner factories.

IE Tab Embedding Internet Explorer in tabs of Mozilla/Firefox. This allows websites that are designed for IE to be viewed without problems on Firefox.

Tabbrowser Preferences Enables enhanced control for some aspects of tabbed browsing.

Flashblock Never be annoyed by a Flash animation again! Blocks Flash so it won't get in your way, but if you want to see it, just click on it.

PDF Download Allows to choose if you want to view a PDF file inside the browser (as PDF or HTML), if you want to view it outside Firefox with your default or custom PDF reader, or if you want to download it!

MediaPlayerConnectivity Allow you to launch embed video of website in an external application with a simple click

FoxyTunes Now you can control your favorite media player without ever leaving the browser and more... Supports WinAmp, iTunes, Yahoo Music Engine, Pandora, foobar2000, Windows Media Player, Xbox Media Center, Musicmatch, Quintessential, J. River, jetAudio, XMPlay, MediaMonkey, Media Player Classic, Sonique, wxMusik, Real Player, XMMS, Noatun, Juk, Amarok, Music Player Daemon, Rhythmbox and many other players.

Fasterfox Fasterfox allows you to tweak many network and rendering settings such as simultaneous connections, pipelining, cache, DNS cache, and initial paint delay. Dynamic speed increases can be obtained with the unique prefetching mechanism, which recycles idle bandwidth by silently loading and caching all of the links on the page you are browsing.

Google Safe Browsing for Firefox Google Safe Browsing is an extension to Firefox that alerts you if a web page that you visit appears to be asking for your personal or financial information under false pretences. This type of attack, known as phishing or spoofing, is becoming more sophisticated, widespread and dangerous. That's why it's important to browse safely with Google Safe Browsing. By combining advanced algorithms with reports about misleading pages from a number of sources, Safe Browsing is often able to automatically warn you when you encounter a page that's trying to trick you into disclosing personal information.

Labels:

Author: Bo Tian » Comments:

Capture your screen for free

There are plenty of software to capture your screen, but mostly for a huge fee or an ugly "UNREGISTERED VERSION" on the upper left corner. But why should we buy those when we can have better software for free? There are refined such screen capture software under the GPL license, meaning you can obtain them for free.

For still capturing:
[FastStone Screen Capture] The best screen capturing software I've used, it's simplistic yet functions well. There are choices of capturing full screen, window, rectangle, and even free hand tools. The official website provides a no-installation download for better portability. The captured image can be saved in traditional formats such as JPEG, PNG, BMP, TIFF, GIF, and new formats such as JPEG2000(*.JP2) and JPEG2000 Code Stream(*.J2K). There are simple (really simple) draw tools to modify the image, and you can use the program's integrated email function to email the image with the help of an external email client.

For movie capturing:
[CamStudio] A screen capture application for Microsoft Windows (open source). CamStudio is a simple, straightforward program to record screen activity to AVI or SWF format. You can also record audio from your speakers or microphone. CamStudio is also available on SourceForge. Camstudio is in fact a simple no joke software without much sophisticated features, but the basic job is well achieved.

Labels:

Author: Bo Tian » Comments:

Interview with Java's inventor James Gosling

Today there are thousands and thousands of Java programmers, but there was a time when there was only one, James Gosling. He did the original design of the Java programming language and implemented its original compiler and virtual machine. Today Gosling is vice president and Sun Fellow at Sun Microsystems Inc. where he continues to take an active role in software development, especially regarding NetBeans. In the first of this two-part interview, SearchWebServices talked to Gosling about what he's working on now and his views on the Java process, open source, the Internet, Web services and the issues of complexity versus simplicity.

Let's start from where you are now, what are you currently working on at Sun?
James Gosling:

We've been trying really hard to get things so that people are working together more. We've tended to be groups that are kind of isolated. We've been working on getting the Java SE folks and the NetBeans folks to be working together a lot better. Over the last couple years that's gotten a lot better.

There are some Java programmers who are fans of Ruby on Rails and some of them were arguing Ruby's strength is that it was developed by one person rather than a community. Do you see advantages of a community over a single developer or visa versa?
Gosling: Well, a single developer doesn't scale very well. Java was actually developed by a single developer, originally. It was just me working alone, like the first four years of Java's life. And then popularity happened and the demands got that crazy. It also didn't help that at about that time I developed really severe carpal tunnel syndrome and I spent three or four years being almost completely unable to type. But there's been this real spread of use of it and an in-pouring of talent. The number of really smart people who have put a lot of energy into Java is just enormous. It's just amazing the spread of things that you can do with it.

So, do you feel more comfortable with the Java community process than when you were sort of the sole Java programmer in the world?
Gosling: It's sort of a bit of this and that. There's no way that I could have done all of this alone. There's just too much really cool stuff in the Java world. It's certainly the case that when one person works on it alone you can make sweeping changes and deeply impactful decisions in 10 minutes. But when you've got a lot of users, you don't get to do a lot of that anyway. You have to be extremely careful. I mean, you can screw them all over making huge changes, but once you have a user base you have to be really respectful of them and that makes life difficult. Plus, I'm certainly not the smartest person in the world and there are a lot of domains where I am not a world expert. There are one or two areas where I actually kind of know what I'm doing, but I think there is tremendous value in being able to tap other people and to get other people involved. For me, that's a lot about what's really cool about the open source movement. It's not the licenses or the source code, it's the social experience.

Do you sense any danger with so many inputs and so many decision makers, that you design a horse, but the committee comes up with a camel?
Gosling: Well, the fear isn't so much that they come up with a camel instead of a horse, but that they come up with something like Frankenstein's monster that's stitched together out of a wide variety things that have nothing to do with each other. And that is a constant fear. One of the interesting things about technology these days is that it really needs to expand a huge spread of domains. So we put a lot of energy into organizing the domains to keep them from sort of polluting each other, so that things are reasonably well packaged. This is one of the areas where the object-oriented technology really shines. The fact that there are packages and classes and such that allow us to organize things so that the bits that have to do with Web services are independent from the bits that have to do with say, driving cash registers. These things end up needing to talk with each other because everything everybody is building is so integrated. It's quite a balancing act.

Speaking of open source, how do you feel about the way Sun's going about open-sourcing all of Java?
Gosling: Well, I'm really happy with it. I'm happy we're finally getting around to it. It's been a long argument and there are still a big pile of big issues to get around. But we're committed to making this happen as soon as we can.

Did you start working on Java in what we would call a pre-Web world, when it would still mostly be networks inside of a building?
Gosling: Yes and no. Certainly, Java got started before the Web existed. But everything that we did was around Internet technology. Everything in Java is deeply, deeply affected by networking technologies and the Internet. You made the comment about networks being inside buildings. At the time we were building Java that had been solved for decades. The Internet spanned the planet 30 years ago. Of course, 30 years ago it was called the ARPANET. But the transition was mostly one of protocol. All of the stuff that went into Java was about networking. What people tend to refer to as the Web has sort of emerged when Tim Berners-Lee came up with the HTTP protocol and the HTML file format and the first Web-browsers happened. That got started shortly after Java got started and so the Web technologies were happening as Java was getting finalized, as we got towards the first releases of Java. So, all the Web stuff was already there.

Did you originally envision what Web services has now become in the application development world?
Gosling: I wouldn't say that I envisioned it in the sense that I woke up one day and had this vision of Web services everywhere. It's more that I assumed it. Because the structure of the network as a collection of services that all work together was this big architectural concept 20-30 years ago. And that's really all the Internet ever really was, is a collection of services that talk to each other. Which protocol they use, whether they use XML over HTTP or CORBA or God knows what doesn't matter. That's kind of how you spell the words, the context has been a piece of bedrock philosophy for a very, very long time.

There's all this complexity in the languages used for SOA and Web services applications, will it ever be possible to simplify it or will it continue to grow in complexity?
Gosling: Complexity is a really hard topic. Because… there's this game if you go to the Santa Cruz beach boardwalk called Whack-a-Mole. Whack a mole, like the animal. And the way Whack-a-Mole works is there's a board and there's this three-by-three grid and a little mole sticks its head up and you're standing there and you've got a baseball bat and you're supposed to whack the mole before he goes back down into his hole. Then he'll pop up somewhere else and you've got to whack him down. A lot of engineering and in particular the engineering around complexity is like Whack-a-Mole. You can make things like programming languages incredibly simple but then what tends to happen is complexity emerges somewhere else because people are trying to get around the stuff that's missing in the language or in APIs or whatever.

A lot of the complexity that we have is sort of driven by a sort of inevitable consequence of the activities that people are trying to support. If you think about just a cell phone or a Web page, what does it take to pick up a phone, place a call from standing on top of the Great Wall of China where the other person you're talking to is on a bus going from Monterey to Salinas? And managing that while the bus is in flight. Oh, and by the way, the piece of the Great Wall you're on is a long way from Beijing. I actually did that. I was talking to my daughter going to a track meet and I was on a business trip and if you think about all of the stuff that has to go on to do that, a lot of that complexity is pretty much inescapable.

Lots of folks come up with solutions to make life simpler but really all that they've done is move the complexity somewhere else. What's really, really hard is not making any particular technology simpler or making a particular API simpler, but standing back from complete systems and making the whole system simpler. And you don't get away with making one piece simpler and then realizing that this caused emerging complexity in other places. Yeah, we can live a whole lot simpler by going back and being an agrarian society. I don't think anybody wants that.

Do you think it's the job of architects to look at the entire system and see what if any simplifications can be done?
Gosling: That is certainly what architects ought to be doing. It's a really difficult thing because you find people who are in companies and their title says they're an architect. But they are often so divorced from the actual detail that they make architectural decisions that make absolutely no sense. Because when you dig down a few layers to see how that decision would have to be realized it's just totally out of step with technology. It's a really hard challenge in architecture to have both deep knowledge to make credible architectural decisions and broad knowledge to be able to span all the different technological areas. And trying to do large system architecture is unbelievably difficult.

Do you think architects need to be knowledgeable at the bits and bytes level and the overall business processes level?
Gosling: Yeah, and you try really hard to construct systems so that you don't have to know the low level details. But the saying goes, that's where the devil is.

What does the Father of Java think of the emerging interest in rival languages such as Ruby? A lover of diversity, James Gosling says he's played around with Ruby enough to understand the attraction, but his heart belongs to Java and what Sun Microsystems Inc. is pulling together under the NetBeans tent. He understands why Ajax coders are frustrated with JavaScript, but he says the answer will be found in NetBeans. In Part One of the SearchWebServices interview with Gosling, he discussed the history and philosophy of Java. In the second part he fields questions on Ruby, JRuby, Ajax and SOA, and tells why he believes the answer for most developers is Java and the NetBeans IDE.

How do you view Ruby and other emerging languages in relation to Java, is this a natural evolution, or is there a danger people will be all over the board with boutique programming languages?


James Gosling: I've always been a big fan of diversity and diversity certainly has its dark sides and it's like it's really confusing. The thing that Java tries to do and is actually remarkably successful at is spanning a lot of different domains, so you can do app server work, you can do cell phone work, you can do scientific programming, you can write software, do interplanetary navigation, all kinds of stuff in Java, whereas a lot of these other languages get a lot of their strength from being fairly domain specific. And at some level I don't really care about the programming language. What I really care about is the underlying semantics and the ability for things to interconnect.

The Java Virtual Machine is reasonably general purpose. Over the years there have been literally hundreds of languages built on top of it, most of which nobody has really cared enough about. So, when you take a language and you host it on the Java Virtual Machine, you get really interesting portability, if you do it right you can get very interesting performance and most of all what you get is the ability to interoperate and interact across languages – having stuff written in JRuby directly calling stuff written in Python or Jython or Groovy. There's even a compiler for Visual Basic to target the Java Virtual Machine. The traditional way of implementing programming languages is one where they're all individual islands that don't really interoperate at any level that's more fine grained than network protocols. You can't call similar APIs without breaking it into a server and calling across address faces, something that's fairly expensive. The Virtual Machine is what lets them be one big reasonably happy family.

Have you had any chance yourself to look at Ruby?
Gosling: I guess I'd call myself moderately familiar. I haven't used it a lot. I have somewhat. As a language it's fine. The interesting bit is the Rails framework. The Rails framework, if what you want to do fits with what the Rails framework wants to do, it's actually pretty slick. But people use all the methodology of the Rails framework in Java all the time. In fact there are various ways you can use Rails on the Java platform. There's Groovy, which is kind of this hybrid between Java and Ruby, that's hosted on the Java VM and they have Grails – Groovy on Rails, which is basically all the concepts from the Rails framework wrapped around Groovy. And then there's the JRuby guys who have something that lets you run Ruby programs on top of the Java VM and that's starting to get pretty interesting. All the "on Rails" stuff works perfectly well in that environment and it gives you the ability to access all of the Java APIs.

When developers are asked why they chose Java over other languages like Ruby, they often say scalability. Do you still see that as Java's major strength?
Gosling: I certainly think of scalability as a major strength and as long as you say a major strength, yeah. One of the problems here is that the space of developers is so large that what they care about varies tremendously. Many people don't care about scalability, let's say, as much as they care about reliability and there's a whole lot of stuff in the Java world that's about building reliable systems.

So would you rank Java reliability as equal to scalability?
Gosling: Yeah, and a very close second or maybe a factor zero, is security. All of the Java APIs have security woven through them, pretty much everywhere. That turns out to be a really, really big deal for a lot of people. Some people don't care at all and for some people it's absolutely life and death.

When you were originally creating Java, did you in any way envision what's happened with it or have you had a lot of surprises?
Gosling: In a strange way, a bunch of this kind of stuff, the scale and security issues, were actually thought about back then. But that was more living in a fantasy world kind of thing, kind of a science fiction kind of exercise. I never actually believed that any of it would ever actually happen.

Moving from the past to the present, you're still focused on Java tools at Sun, what's happening there?
Gosling: We've been having just a tremendously good time with NetBeans over the last couple of years. One of the things that we've been really pushing on with NetBeans is to have a lot of specialized knowledge in multiple domains. So, we put a lot of energy into things like tools for enterprise programming and being able to support SOA to be able to support all of the Web services, so it's really easy to build a Web service, so it's really easy to tie Web services together in SOA architecture, to be able to debug and deploy app servers very transparently.

And at the other end of the scale to be able to do advance development on things like cell phones and to tie them together and to be able to set a break point in a cell phone and set a break point in the app service that it's talking to. And do this sort of interesting end-to-end development. That's something we've focused on pretty heavily. Then you tie in some of the higher level stuff that's around things like graphical user interfaces through app servers. We've got all of these facilities that integrate lots of different frameworks from the Ajax support to embedded applets to all the JSF struts framework, so we work hard on making all these components actually play together, so that people can use very advanced, sophisticated Ajax components without really being aware that that's what they're doing.

There's been a lot of interest in Ajax, as you probably know, but one criticism involved the difficulty in using JavaScript as part of it. Do you see that getting simpler?
Gosling: Ajax is a really funny thing. You can actually do, using Java applets, pretty much everything you can do in Ajax and you get much better portability. Ajax is a technology that at its heart has been around for quite a few years and mostly took off when they came up with a clever name, but it really suffers from the fact that there are so many flavors of JavaScript. And it's kind of been… it's the example that keeps convincing us that we have to be really, really careful about interoperability in the Java platform. Because when you start to get out of line, the way JavaScript did, it just causes an interoperability nightmare for developers. So, one of the things we try to do is make it so that people who are using JavaScript components don't actually have to worry about JavaScript at all. They just see the components as kind of a black box that they can drag and drop onto their applications and they don't have to worry about the can of worms that's inside.

That's what you're accomplishing with NetBeans now?
Gosling: Yeah.

What's the latest status on NetBeans? Are most of these things available to developers who want to do Ajax now?
Gosling: Go to Netbeans.org, pretty much all of this is in NetBeans 5.5, and there'll be a whole new revolution of this in NetBeans 6. The early access bits are out there already. And all the stuff that's in [Sun Java Studio] Creator although the bits and pieces of Creator are really being reorganized and integrated into the core of NetBeans.

How are Java Studio Creator and NetBeans fitting into this picture?
Gosling: We're on the track of taking what were really independent products, we had these three products, there was NetBeans and there was Java Studio Enterprise, which was all the really high-end developer tools and then there was Creator which was also an enterprise development tool but focused on the sort of rapid development of Web applications. Enterprise and Creator were built on top of NetBeans, but now we're getting rid of the fantasy that they're independent products. Well, we're still doing a certain amount of packaging them that way, but we're putting a lot more emphasis into integrating all of the different styles of development so that developers can work on projects in a lot of different styles depending on the different aspects.

Is there a special focus on SOA and Web services in NetBeans development?
Gosling: There are certainly a lot of tools in the new NetBeans that are particularly about SOA and Web services. It's everything from support for all the protocols to being able to do UML modeling for large architectures.

It sounds like NetBeans is at the heart of everything, is it?
Gosling: What we're doing is we're orienting everything around NetBeans. So, all of our tools for doing software development in C and C++, and Fortran are all essentially parts of NetBeans. Netbeans itself really is a sort of core framework into which you can plug in different kinds of modules to do everything from manage deployment for different kinds of app servers to managing semantic grabs for different kinds of languages. So, we're able to support multiple languages. NetBeans is not a pure Java environment. It's a way that you can develop in lots of different languages.

Sun just hired the developers of JRuby, will JRuby eventually fit into the overall Netbeans?
Gosling: It will eventually. Exactly when, I don't know.

Labels:

Author: Bo Tian » Comments:

SkyOS - A New Experience

Wednesday, October 04, 2006

Finally, it's an OS which is neither Windows or Unix based. It's SkyOS. The new SkyOS 5.0 supports transparent picture, 32 bit PNG file format, and the system is simply amazing, both aesthetically and usability.

SkyOS features SMP support, an integrated media subsystem and a 64-bit filesystem. Its filesystem was originally based on a modified version of OpenBFS but now has evolved into its own distinctive filesystem, SkyFS. Popular file systems such as FAT 16/32, BFS, Ext 2/3 and ISO 9660 are supported.

SkyOS is mostly POSIX compliant, and comes with the majority of the GNU tools, including GCC. Due to its POSIX compliance and port of the GTK+ widget toolkit, many Linux or other UNIX applications have been ported, including AbiWord and Gaim, as well as a number of games, such as Quake.

SkyOS has limited hardware support due to a lack of device drivers. Many devices are unsupported, although the latest beta release features a USB stack and a port of CUPS. Although SkyOS has support for graphics cards in VESA modes, it lacks the ability to take advantage of the 3D hardware found on modern graphics cards like nVidia's GeForce and ATI's Radeon range.

SkyOS has applications for many common desktop computing tasks; the GTK, Mozilla, and Mono platforms have been ported, to name a few of the more prominent applications available. Additionally, a handful of 3rd-party developers have created a number of native applications and games for SkyOS.

Let's explore the system farther:

The start up picture. It supports themes and skins. In addition, transparent windows, round window edges, shadows are supported as well.

Able to create and edit 3D models.

SkyOS can play DVD, CD and MP3.

Web surfing can be done through SkyKruzer (Firefox is included). Users can use Mozilla Thunderbird 1.0 to manage Emails, newsgroups, and RSS Feeds. Instant messaging is done through GAIM. Users can use the included Nvu to create their own website, while their computers can be remotely controlled through SkyOS VNC Server and Client.

Word processing through AbiWord.

Log on screen.

Different users of a computer are classified as ACCESS_GROUPS in SkyOS. There are 4 main groups:
GROUP: SYSTEM RIGHT: Reboot

GROUP: SYSTEM RIGHT: Execute processes

GROUP: SYSTEM RIGHT: Create threads

GROUP: FILESYSTEM RIGHT: Create files


User Control Panel.

Popular software included:
- AbiWord (word processing software)

- GIMP (nicknamed Photoshop for Linux)

- GTK (gimp tool kit)

- SkyKruzer (Web browser based on KHTML)

- GNU Compiler collection

- Bochs(Virtual emulation software, much like VMware)

- Perl

- SDL with OpenGL support

- Quake I/II/III

- VideoLan

- SkyDeveloperStudio

- Python

- Mars, Land of No Mercy

Get SkyOS 5.0 beta Build 6179 ($30)

Labels:

Author: Bo Tian » Comments:

Energy Benchmark EEcoMark Announced

Sunday, October 01, 2006

Windows Benchmarking organization BAPCo and Ecma International joint announced a new benchmark co-developed, based on power saving features of personal computers. The new software is named EECoMark.

EECoMark will test a computer's ability based on real-life software, but will put computer's power usage on top priority. (Which means that power saving computer will score better even though performance may not be as good.)

Many companies are now focusing on problems regarding power consumption, Sun and AMD joined to developed a new power benchmarking software, SPEC is also doing research on this topic, while Intel joined the setting of standard of EECoMark.

BAPCo and Ecma planned to release EECoMark and first version of power benchmarking standard by first half of 2008.

Labels:

Author: Bo Tian » Comments: