Tuesday, August 29, 2006

Translating Cool Technology Into Revenue by Peter Varhol

Mainsoft has great technology that is tapping a market in enterprises.

Mainsoft, Inc. offers a unique technology that enables developers to write code in a .NET language using Visual Studio, then compile that code to Java bytecode and execute it on a Java virtual machine and application server. The product, Visual MainWin for J2EE, is a plug-in to Visual Studio that lets developers write applications in any .NET language, then dynamically convert the .NET IL into Java bytecode. The process of doing so is so seamless that you can even use the Visual Studio debugger on runtime Java code; Visual MainWin for J2EE converts the bytecode back to .NET IL to engage the debugger.
ADVERTISEMENT

While no techie at heart would doubt that Mainsoft has some of the most impressive technology around, a more hardheaded business person might ask what could possibly be the practical use of such a product.

In response, CEO Yaacov Cohen describes both a vision of computing and a journey that ended up in a somewhat different place than originally intended. "In 2001, we set out to create a technology that made sense from the standpoint of the emerging concepts of service-oriented architecture (SOA). We determined that programming languages were going to be less critical than the ability to tie together different application components, and we set about devising a way to enable that."

In particular, Cohen was focused on decoupling the development choice from the production choice. "Many enterprises didn't want to be locked in to choices made during development," he noted. This was a notion that would grow stronger as the direction toward SOA became more established.

The original goal was to build a "universal virtual machine," a runtime that could execute any application on any underlying platform, said Cohen. There would likely be some limitations in practice, but enterprises need the production flexibility of running on the platform with the best management tools and highest performance. These characteristics might not automatically correlate well with the platform with the best development tools.

This was clearly an ambitious undertaking, and Cohen and the Mainsoft engineering team worked on the problem for two years. As a part of the development effort, one of the engineers wrote a .NET Intermediate Language (IL)-to-bytecode compiler, or translator. Cohen took this piece around to show to customers and investors. It turned out that there was more interest in this piece than in the conceived solution as a whole. The company went back and put more development effort into the IL-to-bytecode compiler, turning it into something that could be positioned as a standalone product.

Getting Down to Business
Mainsoft released this product, Visual MainWin for J2EE, Enterprise Edition, shortly thereafter. But at this point Cohen had to face the hard realities of selling software in enterprises. For a small company with an unproven technology, it can be difficult to get the attention of enterprise IT managers. So the next step was to generate recognition and enthusiasm for this Mainsoft product.

The company went about doing this with a derivation of the original product, called Visual MainWin for J2EE, Developer Edition, or Grasshopper. Grasshopper is a product that you can freely download from the Mainsoft Web site. It includes the Apache Tomcat servlet engine and the open source Mono implementation of the .NET Framework, providing a foundation for ASP.NET, ADO.NET, XML, Web services, and .NET server-side runtime services. Developers can use .NET language and Visual Studio skills to develop, debug, and deploy server and Web applications from within the Visual Studio development environment, and run applications natively on the J2EE platform.

According to Cohen, there are now 15,000 registered users of Grasshopper, along with an active community of developers, many of whom act as advocates for expanded use of the technology. As a result, Grasshopper served to bring recognition to Mainsoft from the development community, and also provided success stories for use in enterprise sales and marketing situations. However, it had only limited success in extending the reach of the company into enterprise IT shops and providing access to IT executives. That required a significant enterprise-direct sales force and time to establish relationships within enterprises. Despite a successful company track record that included an initial product release in 1993, this was both expensive and time-consuming.

The second part of the company strategy was to find an avenue for faster and less-expensive access into enterprises. It did this through a partnership with IBM in which Mainsoft generates leads that can then be followed up on by IBM sales representatives, who in many cases might already be familiar with the customers and their needs. "Partnering with IBM gave us access," said Cohen. And it clearly supported IBM's Java direction, enabling the company to offer Microsoft shops the ability to use familiar development tools while deploying on Java.

Last, Mainsoft needed a strategy that would establish the company as a viable and growing standalone business. Cohen is pinning that goal on the Visual MainWin for J2EE, Portal Edition. The Portal Edition provides .NET extensions to IBM WebSphere Portal so IBM customers can run ASP.NET applications natively on WebSphere Portal.

This makes it possible for any enterprise looking for a portal solution to immediately translate existing ASP.NET Web applications to Java to run in the WebSphere Portal. Those enterprises can also continue writing Web applications in Visual Studio and deploying them to either Microsoft IIS or WebSphere Portal, depending on their needs and specific circumstances.

Developers find Mainsoft's .NET to Java compilation a unique and exciting technology. The message that you can use Microsoft development tools while deploying to Java is a powerful one. However, the challenge was to translate that excitement into revenue to create a profitable and growing company.

Yaacov Cohen and Mainsoft believe that they have found the path to do so, and results thus far are encouraging. Many small software companies find it difficult to make the jump from cool technology to a viable business, but Mainsoft might have found the formula.

Mainsoft, Inc.
226 Airport Parkway
Suite 250
San Jose, CA 95110
http://www.mainsoft.com

(http://www.ftponline.com/channels/business/2006_08/companyfocus/mainsoft/)

Monday, August 28, 2006

Players say eye tracking technology helps them feel immersed in their video-game.

Eye Tracking Technology Poised To Be Next Trend To Immerse Gamers

The growing yen of video game enthusiasts to leave the real world in favour of a virtual one is driving a market trend toward developing easier-to-use controls – like those that allow gamers to play through eye movement.


A Queen’s University study confirms that video-gamers feel more immersed and have more fun in virtual environments when they play with commercial eye tracking technology.

These “new controls” replace the mouse click as a means to allow players to interact more naturally with their digital environments.

"Eye tracking technology allows us to build interfaces that respond to users' intentions rather than just their actions. This makes computers feel more natural than ever before," says the study’s co-author David Smith a PhD candidate with Queen’s School of Computing.

First developed in the late 1960s the technology, already used by people with limited mobility, pilots, and market researchers, is increasingly attracting the interest of video-game companies.

This study, also authored by the School of Computing’s Associate Professor Nicholas Graham, showed that players enjoyed the way eye tracking enhanced their involvement in the role-playing game Neverwinter Nights. However, players still preferred to use the mouse to control games like Quake 2, a first-person shooter game, and Lunar Command, an action/arcade game.

Players overwhelmingly indicated an increased feeling of immersion in the gaming world when they played with the eye tracker – 83 percent of those playing Quake 2, 83 percent playing Neverwinter Nights, and 92 percent playing Lunar Command. Smith and Graham suggest this is due to an increased level of feedback, which is given even when the user makes subconscious eye movements.

The researchers integrated a Tobii 1750 desktop eye tracker with these commercial video games. Interacting with the virtual avatars in Neverwinter Nights proved to be the most satisfying use of this technology with 83 percent of the players preferring to play the game with their eyes and 67 percent reporting the experience felt “more natural” than playing the game with a mouse. One participant noted, “I could explore with sight freely and only clicked the mouse when needed”.

Ninety-two percent of Quake 2 players found the mouse easier to use than eye-tracking to rotate their view to visually hone-in on the monsters. The same percentage found the mouse easier to destroy missiles in Lunar Command. Smith and Graham attribute this preference to the “Midas Touch” problem still associated with eye tracking technology, in which the eye tends to “choose” items or directions inadvertently.

The study, a project of Queen’s EQUIS Group lead by Dr. Graham, was funded by NSERC and NECTAR, and was presented this June at the Association of Computing Machinery’s International Conference on Advances in Computer Entertainment Technology.

(
http://www.sciencedaily.com/releases/2006/08/060818005632.htm)

Wednesday, August 23, 2006

Finding Computer Files Hidden In Plain Sight

Keeping computer files private requires only the use of a simple encryption program. For criminals or terrorists wanting to conceal their activities, however, attaching an encrypted file to an e-mail message is sure to raise suspicion with law enforcement or government agents monitoring e-mail traffic.

But what if files could be hidden within the complex digital code of a photographic image? A family snapshot, for example, could contain secret information and even a trained eye wouldn’t know the difference.

That ability to hide files within another file, called steganography, is here thanks to a number of software programs now on the market. The emerging science of detecting such files – steganalysis – is getting a boost from the Midwest Forensics Resource Center at the U.S. Department of Energy’s Ames Laboratory and a pair of Iowa State University researchers.

Electronic images, such as jpeg files, provide the perfect “cover” because they’re very common – a single computer can contain thousands of jpeg images and they can be posted on Web sites or e-mailed anywhere. Steganographic, or stego, techniques allow users to embed a secret file, or payload, by shifting the color values just slightly to account for the “bits” of data being hidden. The payload files can be almost anything from illegal financial transactions and the proverbial off-shore account information to sleeper cell communications or child pornography.

“We’re taking very simple stego techniques and trying to find statistical measures that we can use to distinguish an innocent image from one that has hidden data,” said Clifford Bergman, ISU math professor and researcher on the project. “One of the reasons we’re focusing on images is there’s lots of ‘room’ within a digital image to hide data. You can fiddle with them quite a bit and visually a person can’t see the difference.”

“At the simplest level, consider a black and white photo – each pixel has a grayscale value between zero (black) and 255 (white),” said Jennifer Davidson, ISU math professor and the other investigator on the project. “So the data file for that photo is one long string of those grayscale numbers that represent each pixel.”

Encrypted payload files can be represented by a string of zeros and ones. To embed the payload file, the stego program compares the payload file’s string of zeros and ones to the string of pixel values in the image file. The stego program then changes the image’s pixel values so that an even pixel value represents a zero in the payload string and an odd pixel value represents a one. The person receiving the stego image then looks at the even-odd string of pixel values to reconstruct the payload’s data string of zeros and ones, which can then be decrypted to retrieve the secret file.

“Visually, you won’t see any difference between the before and after photo,” Davidson said, “because the shift in pixel value is so minor. However, it will change the statistical properties of the pixel values of the image and that’s what we’re studying.”

Given the vast number of potential images to review and the variety and complexity of the embedding algorithms used, developing a quick and easy technique to review and detect images that contain hidden files is vital. Bergman and Davidson are utilizing a pattern recognition system called an artificial neural net, or ANN, to distinguish between innocent images and stego images.

Training the ANN involved obtaining a database of 1,300 “clean” original images from a colleague, Ed Delp, at Purdue University. These images were then altered in eight different ways using different stego embedding techniques – involving sophisticated transfer techniques between the spatial and wavelet domains – to create a database of over 10,000 images.

Once trained, the ANN can then apply its rules to new candidate images and classify them as either innocent or stego images.

“The ANN establishes kind of a threshold value,” Bergman said. “If it falls above the threshold, it’s suspicious.
“If you can detect there’s something there, and better yet, what method was used to embed it, you could extract the encrypted data,” Bergman continued. “But then you’re faced with a whole new problem of decrypting the data … and there are ciphers out there that are essentially impossible to solve using current methods.”

In preliminary tests, the ANN was able to identify 92 percent of the stego images and flagged only 10 percent of the innocent images, and the researchers hope those results will get even better. An investigator with the Iowa Department of Criminal Investigation is currently field-testing the program to help evaluate its usefulness and a graphical user interface is being developed to make the program more user friendly.

“Hopefully we can come up with algorithms that are strong enough and the statistics are convincing enough for forensic scientists to use in a court of law,” Bergman said, “so they can say, ‘There’s clearly something suspicious here,’ similar to the way they use DNA evidence to establish a link between the defendant and the crime.”

The project is funded by the Midwest Forensics Resource Center. The MFRC, operated by Ames Laboratory, provides research and support services to crime laboratories and forensic scientists throughout the Midwest.

Ames Laboratory is operated for the Department of Energy by Iowa State University. The Lab conducts research into various areas of national concern, including energy resources, high-speed computer design, environmental cleanup and restoration, and the synthesis and study of new materials.

(http://www.sciencedaily.com/releases/2006/05/060524122456.htm)

Top 10 Excuses Made by Programmers

Good programmer's never re-invent the wheel, so even the excuses when something doesn't work or get done are pretty much the same across languages :) We have compiled the top 10 excuses you are likely to hear if you work with a programmer, the computer department or the tech support team.

10. "I haven't touched that module in weeks!"

9. "It must be a hardware problem."

8. "Somebody must have changed my code."

7. "Did you check for a virus on your system?"

6. "You must have the wrong version."

5. "That's weird..."

4. "There must be something wrong with your data"

3. "It's never done that before."

2. "It worked yesterday."

and the best one

1. "It works on my machine"


(http://www.geek24.com/g/top-10-excuses-made-by-programmers)

10 ways to give a bad presentation By Paul Glen

Takeaway:
If you'd rather not do presentations, just try these out and be assured that you'll never be invited back to speak again.


As IT professionals, eventually, we are all called upon to deliver presentations to clients, users, supervisors, or peers. It's not something that tends to come naturally to us. We'd much rather be writing code, doing project plans, or even writing documentation. Almost anything is better than getting up in front of a group of people. In fact, many consider public speaking to be one of life’s most frightening events.

Because presentations are so important to your careers, C2 Consulting is joining forces with two other companies, Hill Enterprises and Lee Inc. to jointly develop a hands-on training course specifically designed to help IT professionals develop these critical skills.

As a preview to this course, here are a few ideas to help you think about how to screw up your next presentation. If you’d rather not do presentations, just try these out and be assured that you’ll never be invited back to speak again.

1. Just wing it

Preparing for a presentation can be a real drag. Don’t bother. Your audience won’t notice. They enjoy listening to you deliver incoherent and incomplete ideas. Anyway, they know that your time is important, and they can’t expect you to spend your valuable time preparing. It’s better that you just waste all of the audience’s time.

2. Start out weak

An audience typically gives a speaker about 30 seconds before they judge whether to pay attention or not. If you start out weak and lose them, you’ll never get them back, no matter how good you are later. If you’ve followed rule #1 and under-prepared, this may be the best way to cover that up. Just mumble for a minute or two and they won’t be paying enough attention to find out whether you prepared or not.

3. It’s all about me...isn’t it?

Why pay attention to who the audience is and what they’re interested in learning. When you have to give a presentation, it’s all about what you want to tell them. Why be bothered with trying to figure out what they want? Once you’re in front of them, they’re captive and have to listen, right?

4. It’s all about my boss...isn’t it?

If being obsequious is your forte, this is another form of #3. Instead of focusing on your needs, focus on the needs of that one person you really want to impress. Just talk to the important person. Everyone else in the audience will understand and respect you for your focus.

5. Substitute opinions for facts

Here’s a sure fire way to lose credibility quickly. If you want to make sure that the audience won’t believe anything you say, make unsubstantiated claims, or better yet, just state your opinion as if it’s a fact. It makes you seem more important. You’re the ARBITER of TRUTH.

6. Meander

Personal stories, unrelated topics, musings, witticisms, and irrelevant facts all reinforce the message that you’re trying to communicate. Audiences love to hear things that start like, "I just have to tell you this" or "That reminds me of the time when I just a boy of twelve back in Zanadu and got caught stealing olives from Mr. McPruder’s tree."

7. Abandon your objective

Coherence and focus are overrated. Your audience doesn’t really care if you start out with one presentation purpose and seamlessly transition to another one. As long as you smoothly transition from one objective to the next to the next, the audience will follow along. If you do not clearly move from one to the next, you’re actually doing #6, meandering.

8. Ignore the environment

Whether you are the keynote speaker at an industry-wide conference or delivering a proposal to a group of two, presentations are all the same. Refusing to adapt is the sign of a powerful presenter. Bowing to the environment is a sign of weakness.

9. Declare your own time zone

Just start when you start and finish when you finish. Once you’ve got the microphone, you are in control of the audience’s time. Whatever schedule they set is irrelevant. Possession of the microphone gives you the right to dictate the time allocation of your audience.

10. Finish weak

Your conclusion is the last thing that your audience hears, so if you’ve managed to hold their attention even after following the other rules, it’s what they’ll remember most about your performance. A weak conclusion will help ensure that they lose sight of what your presentation was supposed to accomplish. It also helps them remember you in a positive light.

So if you are determined to deliver poor presentations, or to never be invited to do one ever again, following these rules should get you where you’re going.

Paul Glen is the author of the award-winning book "Leading Geeks: How to Manage and Lead People Who Deliver Technology" (Jossey Bass Pfeiffer, 2003) and Principal of C2 Consulting. C2 Consulting helps IT management solve people problems. Paul Glen regularly speaks for corporations and national associations across North America. For more information go to www.c2-consulting.com. He can be reached at info@c2-consulting.com.

(http://articles.techrepublic.com.com/5102-10881-6107629.html)