Wednesday, June 1, 2011

Powering IPRO

Those who work with me know that I’m a big advocate of teamwork. From kids’ soccer teams to pair programming, I know that the power of a group working collectively toward a shared goal is formidable. I partner with my co-workers in some form or another every day, and I can attest to the positive dynamics that come from a team working in sync.

I recently saw an example of teamwork in action that was so remarkable, I’m still talking about it. It was part of a program that teaches college students vital and valuable skills they need to succeed both personally and professionally: problem solving, analytical thinking, creativity, meeting deadlines and presentation skills, to name a few.

The setting was Spring 2011 IPRO Day – the Interprofessional Projects Program – at the Illinois Institute of Technology (IIT). IPRO is a semester-long course that brings together teams of students from every major, from sophomores to graduate level, to tackle and solve a real-world problem. While every project has goals that can be resolved in a relatively brief timeframe, the challenges are substantial. Consider some of the IPRO challenges to be assigned during the upcoming summer semester:

Adopting and implementing a Diabetes Electronic Support Center at Mount Sinai Hospital

Harvesting and determining the beneficial use of condensate from air conditioning systems

Prototyping and user testing of decision making tools for visualizing corporate performance indicators on mobile devices

Prototyping and testing an integrated rooftop photovoltaic solar system design

Real businesses provide real projects for the IPRO teams to tackle. Teams of roughly eight to 12 students, majoring in everything from architecture and biology to chemistry and humanities, work together to solve the challenge. At IPRO Day at the semester’s end, the teams formally present and showcase their projects to a panel of judges and the community.

This is where GeneXus USA comes in. I was invited to serve as a judge for the event, and GeneXus USA developed the technology that enabled the 570+ students and faculty in attendance to vote for their favorite video from the 24 teams competing, a competition that came with a $500 prize.


Here’s how this came about. Back in April, IPRO Director Dr. Michael Gosz attended a GeneXus demo and got so excited about our technology that he asked April Welch, IIT’s Director of Educational Planning, to attend our GeneXus USA event. There, she saw an application we developed that allowed attendees to vote in our smart device competition. She asked if we could design a similar solution for IPRO Day that would allow participants to vote for their favorite video. Right then and there, we sat down with April and created an application in about an hour. The voting app runs on the iPad, while a web-based back office application lets you enter the data together with the database. At IPRO Day, there were iPads running the GeneXus app that everyone in attendance used to vote for their favorite team video.

Meanwhile, I judged the IT track at IPRO Day, which was great because I was truly interested to see what new ideas these students had to offer. The ideas were really terrific. As each team presented, I noticed that most of them relied heavily on PowerPoint. Now, their PowerPoint presentations were great… they had a good flow, they incorporated strong graphical elements, and they made their cases effectively. But what I really wanted to see was more working prototypes. I wanted to see these great ideas demonstrated to me not just visually, but operationally. I was surprised that the majority of the teams did not have a working prototype to showcase to the judging panel.

This is where GeneXus USA comes in, part II: We are providing IIT with a software tool that will allow IPRO students to more easily develop prototypes, starting with the Sumer 2011 semester. We’ve already begun installing the software and training students and faculty on its use. The GeneXus software speeds up and simplifies application development by automating code generation, allowing students to more readily build out prototypes. I look forward to enabling these talented students to develop more working prototypes. With their talent, dedication and graphical expertise, when given the right tool, they can really bring their ideas to life.

Now, I heard a rumor that someone on an IPRO team referred to me as “the toughest judge there,” but I have to admit, I like this! I want to see more working prototypes, even bigger and bolder graphics, and more thinking outside the box. The teamwork and innovation I saw from these students is awe-inspiring, and I am forever grateful to IIT for allowing GeneXus to help power the IPRO program.

IIT was the first university in the nation with an IPRO program, and I look forward to it earning the recognition, distinction and acclaim that it deserves. Take a minute to check out http://ipro.iit.edu/ to learn more.

Also, be sure to visit http://flic.kr/s/aHsjuyftAB to see our photos from the event.


Sunday, April 24, 2011

Making Smart Device Development Smarter

You see them everywhere. At the office, on the train, at the airport, at the corner coffee shop: We are glued to them. Eyes down, thumbs typing… they have changed the way we communicate. They are the iPhones, iPads, Andriods and BlackBerrys -- the smart devices that have changed our lives.

Once again, technology has taken us by surprise. It didn’t happen gradually… it was a sudden wave, and smart devices are the new norm. Working in the technology industry, I know that once you see the wave, you’d better get on board fast.

Mobile computing gives businesses a unique opportunity to get even closer to customers -- their social network. Through these little devices -- these little pieces of technology -- businesses can be taken into customers’ homes, be with them as they make decisions, and most importantly, have an opportunity to influence those decisions.

As consumers, we are more than happy to invite businesses into our homes, because we are now empowered. We can drive discounts, or become critics or advocates in a global marketplace. Businesses and consumers… we both win.

However, as exciting as this new mobile world has become, there are the inevitable roadblocks. At a time that our industry is looking for ways to lower development costs any way we can, here comes technology playing a joke on us. It turns out that, in this new mobile marketplace in which we all want to compete, it’s not just one new development language we need to learn…. It is three or four new languages. It’s not one new platform, but a whole set of them. Here’s what we face:

· A “dominant” operating system has yet to emerge – the market remains highly fragmented and looks like it will stay that way for some time to come. There’s iOS for the iPad and iPhone; Google’s Android; OS 6 for the BlackBerry, Symbian and Windows 7 mobile, to name some of the big ones. And I don’t see this changing any time soon.

· Apps aren’t interchangeable from one operating system to another – so significant development work is required every time an app is adapted to a different operating system.

· Each OS uses a different development language: there’s HTML 5,, Java, Objective-C, Ruby, Silverlight, and so on.

· The experience in each device is different, and even within the same operating systems like Android or BlackBerry, each version offers a different experience.

· There’s a shortage of knowledgeable mobile app developers right now that isn’t going away any time soon. While new graduates are hitting the job market and experienced software developers are transitioning into mobile app development from other areas, look at any company’s or recruiter’s list of sought-after hires: mobile app developers are at or near the top.

How do companies that generate their own apps overcome the roadblocks regarding cross-platform functionality, time to market, cost and talent?

I believe the answer lies in automation.

On April 25 and 26, at our customer event in Chicago, GeneXus USA debuts its Smart Device Generator tool. GeneXus software enables developers to write code once, in a simple and high level manner, and then detailed code is automatically generated for multiple smart device platforms like the iPhone, iPad, Android and BlackBerry. Developers only need to customize appearance and layout for each device.

Think about the possibilities: instead of writing code multiple times for multiple devices, you write it once and GeneXus generates the application for you. It lets you write and deploy apps exceptionally fast - literally 65 percent faster than if you were starting from scratch.

Wouldn’t it be wonderful to live in a world where you do something only once, and the rest of the work is done for you? Wouldn’t it be great to quickly and easily build out an app across multiple smart device platforms? Wouldn’t it be beneficial for us to concentrate only in the areas where we add value as a human being, like designing the best layout for a particular device, and let technology generate the code?

As economic challenges mount, I believe there is tremendous opportunity to increase automation and omit some of the repetition in the software development process. Even though an app is coded differently for each device, all versions solve the exact same business problem. And we shouldn’t have to start from ground zero as we build each one.

Technology will continue to evolve and surprise us –we just need to find more cost-effective ways to harness it. Increasing automation in the development process is key.

We are witnessing the next wave in technology, and I’m excited to be playing a role in it.

Monday, February 28, 2011

G2W and XPM at GUG - Itajaí, Brasil

Dvfacto/GeneXus USA and DVelop have participated last wednesday 23th february of the Itajai GUG - Brazil, which was organized by BXT - Business Xtreme Technologies.


This time Anya Wainberg from Dvfacto presented G2W - Go to Web (www.genexususa.com/g2w), tool designed for automatic conversions of GeneXus Win or Green Screen applicatoins to Web; Sebastián Jodal also from Dvfacto presented XPM - eXtreme Project Management (www.genexususa.com/xpm), framework for the management and development of software projects. On DVelop's side, Agustín Napoleone and Eugenia Alvarez presented WorkWithPlus (www.workwithplus.com), pattern designed to increase productivity in the GeneXus Web Development.

During he presentations the main features and beneffits of the tools were explained (which are detailed down on this article), as well as there were some news. Let's see...

G2W converts simple problems in a simple way and transforms complex problems in an intelligent way.
Some of the complex problems that were mentioned are the Screen Conversion, through learning and being able to abstract information about the screens; about the intelligent solutions applied to the prompts problem as well as stateless.

G2W Challenge was released! The G2W Challenge is an opportunity to convert a small set of complex objects completely for free with G2W, by Dvfacto/GeneXus USA. For more information please write to us to g2w@genexususa.com.

About XPM, it was exposed how XPM increases productivity during the whole project, improving the productivity for each team member, no matter the role.

XPM increases team productivity:
- Integrating
- Automating
- Supporting changes
- Effectively communicating
- Supporting learning
- Planning
For more information about XPM contact us to xpm@genexususa.com.

The whole team thanks Roque and Reginaldo for their active participation relative to XPM and G2W. www.genexususa.com

Wednesday, February 9, 2011

G2W patterns


is a tool created by GeneXus USA to automatically convert win or green applications to web. One of the main complexities of the automatic conversion relies on the screen, specifically the windows screen conversion to web. There are many elements that users include on a windows screen and one of the main advantages of G2W is how it converts the screens preserving the layout of all those elements.

However one of the issues that kept Daniel Coellar, Product Manager of G2W, thinking was how to learn more about those screens and do more with that knowledge?
The answer came in the form a pattern.

Early on, in G2W it was clear that the focus of the tool was automatic conversion to web. One of the objectives of G2W was to provide a metadata that encapsulates all the converted knowledge so other patterns in the market could eventually consume it. We are actually very actively working with dVelop to make this a reality.

However in the process of creating this metadata it was clear that we needed to develop our own pattern to prove the concept, thus G2W patterns were born.

G2W patterns is a set of patterns, created by
GeneXus USA
, that simplifies the maintenance of the converted application so it can maintained manipulating a pattern.
The objective of these patterns is to provide an easier and more fun way for the GeneXus developers to maintain their G2W converted applications.


The G2W patterns set are composed by WebFormDesigner and WorkWithDesigner; it is not sold separately from G2W projects, as it is included for free in the G2W conversion projects.


WebFormDesigner

The WebformDesigner pattern is part of the G2W patterns set; its purpose is to build the WebForms of the WebPanels dynamically managing the forms and logic entirely or by parts.
It not only gives flexibility and velocity for extending the converted objects, but it also allows developing in a pattern oriented way by providing GeneXus users of an important set of controls in order to maintain the webform of a webpanel and the web-logic as well as create new ones.

--> Versatility
It is possible to define if the webform will be managed entirely by the WebFormDesigner pattern instance, or if the webform will contain a set of components from which some of them will be designed and maintained by using the pattern. We call it the “Scope” and it can be either “Full Screen” or “Components”.

FullScreen



Selecting a FullScreen Scope lets the pattern build all the WebForm* according to the constructed Webform Tree.



Components



Selecting a Components Scope makes the pattern manage only the wfdFormContainer controls located in the WebForm of the pattern.




--> Flexibility

The WebFormDesigner pattern can handle with all the regular controls; furthermore, it allows to add more than one control per cell, which means that, although it has a high level of abstraction, it also has the flexibility of adding cells directly to the form tree representation of the pattern instance and to add more than only one control to it.

WebFormDesigner pattern flexibility is also reflected on the possibility to add new controls to the webform which not necessarily need to be part of the pattern. How to achieve that? With the UserTable control.

The UserTable Control allows creating a portion of the WebForm that will not be controlled or managed by the pattern instance. Inside a user table it is possible to add whatsoever control, including controls that do not belong to the pattern. Everything inside the UserTable control will be added directly in the WebForm of the WebPanel and it will not be changed by the pattern instance.

This control has a similar behavior that the Components Scope has; it is possible to build the screen with the pattern but a part of it (everything inside the UserTable is not managed by the pattern.

--> Abstraction

SmartTable and equivalents
The smart table is a very important control for the WebFormDesigner pattern. The smart table is not only a controls container, but it has intelligence to draw its controls with specific characteristics. It is a table extension with certain predetermined behaviors.

The WebForm, SmartGrid and Tabs nodes are SmartTable equivalents; this means that, apart from their specialized functionality, they also provide all the features of the SmartTable.

SmartGrid - The SmartGrid is an intelligent grid that not only provides of a simple grid, but it also lets you add the Orders of the grid (based on what attributes the grid will be ordered), the Filters of the grid (which attributes will appear as filters in order to look for specific data in the grid) as well as the conditions associated to the filters, and the Actions that will be associated to the grid.


Image: Example of a SmartGrid structure in a pattern instance

Tabs - This control lets you manage a set of different tabs in the screen.
The Tabs control allows adding different tabs in order to distribute the controls in the WebForm as having a set of tabs in the WebForm.

Thursday, February 3, 2011

XPM Windows Phone 7 version released!!

We are happy to announce that XPM has been released in the WP7 Marketplace, you can download it by searching “XPM”.

The features that are included in this first version are the following:

• Filter Work Items by Project and Version
• Filter Work Items by Status and Assignee
• Create a new Work Item
• View Work Item details (Description, Reported Date, Updated Date , Assignee, etc.)
• View Work Item Tracking
• Search Work Item by description or Id
• Create a new tracking for a Work Item
• Approve/Reject a Work Item

Learn how to use it here:

XPM WP7 User Guide

We appreciate any feedback, review or comments that can help us provide more functionality for the upcoming versions.

Thanks,
XPM Team