Blog Posts

Statistics: Blogs: 2 Blog Posts: 82   1 2 3 ... 6 Previous Next
Items per page
0

David Kranz the Father of Curl in Curl Blog

Posted by RMH Jul 2, 2008

Dr. Dobb's - one of the most esteemed technical publications - just published an interview with our very own David Kranz the Father of Curl. The article asks David: What is the Architect's Role?

David is a great guy and like all founding fathers and mothers (e.g. James Gosling, Larry Wall, Dennis Ritchie, Grace Hopper) he is at once brilliant and humble. He'll be irritated that I called him "brilliant" and he will never admit to being the "Father of Curl" but he is both in my opinion. David was pivotal in the creation of Curl along with Michael Detouzos and Steve Ward and has sheparded its development over the course of more than a decade. As a result Curl is the most powerful RIA platform available today.


Check out the short interview with David Kranz at Dr. Dobb's. It's a great read!

0 Comments 0 References Permalink
7

Paisley, a Curl customer, presented at the Burton Group's annual Catalyst conference yesterday to a large audience.

Prior to that presentation, Burton Group analyst Kirk Knoernschild had a session on the new concept of a "Fit Client" - a combination of the qualities of the thick client (Client-Server)) and the thin client (HTML/HTTP). He enumerated the advantages of both - thick clients brought rich user interface, heavy processing, and stateful applications; and thin clients brought broad reach, high adoption, wide distribution, interoperability, and good management. The "Fit client" encompasses all these characteristics, may not be to the fullest extent to start with. But characteristics like rich UXP (user experience), stateful applications, online/offline, OS integration, central management, and ubiquity will be the hallmark for fit clients.

Kirk further showed a comparison of available platforms under the title "Next Generation UXP - The Enterprise". He compared seven platforms under five categories (offline, browser-free, cross-platform, desktop interface, and mobility). The seven platforms were - Adobe AIR, Silverlight, Java FX, Google Gears, Curl, Slingshot, and Mozilla Prism. Curl got the best score of all with "Yes" in four out of five categories except in mobility. For example, Silverlight scored poorly. Adobe AIR came next to Curl with Linux support in alpha level. Java FX from Sun had "promised" under each category which brought a lot of laughter from the audience. Google Gears, for example, can not run outside the browser, nor does it have many desktop properties.

Jay Dorenkamp, CTO of Paisley, presented an actual deployment example of RIA using Curl. He explained how they migrated a Lotus Notes-based audit application to the RIA using the Curl's capabilities to develop rich user experience via heatmaps. He showed examples of heatmaps and how that has become a distinguishing feature of their product to win many customers over last 4 years. He also said that their SaaS offering since last year is getting rapid market acceptance. Curl is delivered as an underlying platform technology in their application, quite invisible to the end customer.


His example was a good follow-up to the thesis of the "Fit Client" for enterprise RIA.

7 Comments 0 References Permalink
0

Welcome University of Hawai'i in Curl Blog

Posted by richard Jun 27, 2008

Yesterday we announced that the University of Hawai'i at Minoa will be using Curl in a research project called 'Anti-Keylogger for Secure Web Applications' being conducted by Professor Kazuo Sugihara. The project will examine ways to make the web experience safer by eliminating a common hacker trick of capturing keystrokes.

The students that are participating in the project have all signed up as members of the Developer Center. We extend a warm public welcome to them and we look forward to helping them learn Curl and complete their project successfully.

0 Comments 0 References Permalink
0

When we went to the Web 2.0 Expo we wanted to bring along a couple of nice demos for the Nitro platform. One of my favorite demos was the CurlGraph application. It's a Curl Nitro applicaiton that displays your Facebook friends as a circular graph. It's very tastefully designed by Manuel Lima, the founder of
VisualComplexity.com and well implemented by our resident Curl guru, Doug McCrae. We just put out a press release on the applicaiton. We made it open source so others could take the CurlGraph and modfiy it for use in other social networks (Google OpenSocial, LinkedIn, etc.). What's cool is that you can download it to your desktop right now and use it with your own Facebook profile. Check it out and let us know what you think. Better yet, modify the source code and make it even better!

Here is the press release

http://www.curl.com/company_news062308.php


Here is the home page with instrucitons on installing and using the CurlGraph

http://developers.curl.com/docs/DOC-1241


Great job, Guys!!

0 Comments 0 References Permalink
0

Dr. Dobbs just published an interview with David Kranz our VP of Engineering and CTO - David is one of the people that created Curl and has been involved in it since its inception in the mid 1990's. This interview focuses on his job as a software architect. The interview will be published on July 1st.

0 Comments 0 References Permalink
24

Recently I read in a blog that the Enterprise 2.0 will be a $4.6 Billion industry by 2013. The post also mentions the hurdles in adopting Web 2.0 technologies by the large companies. The article said:

For vendors specifically, there are 3 main challenges to becoming successful in this new industry, including:


  1. I.T. shops being wary of what they perceive as "consumer-grade" technology
  2. Ad-supported web tools generally have "free" as the starting point
  3. Web 2.0 tools will have to now compete in a space currently dominated by legacy enterprise software investments

As I have said before, the fastest way for Web 2.0 adoption will be via RIA (rather than the more popular ones such as wikis, blogs, tags, mashups, and social networks). RIA is the low hanging fruit where users get an enriched experience compared to the client-server implementations of yesteryears. The TCO (Total Cost Of Ownership) of RIA is also compelling.

Why do I say this?


Let me give you five examples of "actual RIA applications in use" by very large global companies using Curl RIA platform. This follows my post few weeks ago on the key requirements for enterprise RIA.


Example 1 - Voice of the Engineers (VOE) - Large electronics manufacturer built a real time application to link the field input to parts repair information. This application provides rich graphical interface to visualize suspected points of failure. Executives can also get aggregate information on failure trends over time (classic BI). Benefits are quantified in several hundreds of thousands of dollars of cost saving in the first year of implementation.


Example 2 - Heatmaps - Significant company in the GRC (Governance, Risk, Compliance) space offers a Curl-based RIA to its customers. Grid-like UI offers a view of various business units that pass or fail compliance. They call this the Heatmap. As you mouse over to the red cell (showing compliance failure), further details are revealed as to why. The company claims this specific visualization is the big competitive differentiation for them. They are growing briskly at 40% year to year in this space.


Example 3 - Procurement - A large international company (household name) in the electronics manufacturing business built a procurement system using Curl front-end technology with Oracle DBMS and J2EE backend. The systems has been in operation or 3 years with over 300 users. Very large data volumes with fast performance was the key need. Benefits are quantified as 50% reduction in cycle time compared to the same under the legacy client-server system.


Example 4 - Consolidated Billing - Large telecommunications company built a consolidated billing system (for landline, VOIP, long distance, cell phone) for corporate clients. The old system was built using Visual Basic and bills were sent via CD's causing delay in data upload and services. The new system uses Curl in the client-side and Oracle in the backend. Currently 10,000 clients use the system, likely to grow to 15,000 next year. The entire application was developed within a year on a budget of $1M. Benefits include 10% in cost savings with increased accuracy of data.


Example 5 - Insurance planning for agency - Large insurance company offers this web-based application for agents. It can simulate customer's financial's, trying various policies of the plan and provides visual results with graphical charts for easy understanding. This new Curl-based system replaced the old Visual Basic system. The client states the benefits as: easy maintainability, better security, better performance and no data latency.


There are many more such examples from Curl's 300 plus large enterprise clients.


Hence we humbly claim Curl to be the defacto leader in Enterprise RIA space.

24 Comments 0 References Permalink
12

How big is your source code? in Curl Blog

Posted by RMH Jun 12, 2008

Maurizioi Storani wrote an excellent blog post about his first impressions using JavaFX's new GUI API (javafx.gui) titled "JavaFX (James Weaver)". That post shows a simple example of JavaFX code using the new javafx.gui library. Out of curiosity I asked Doug McCrae, a Curl engineer, to write up the same exact program in Curl. It turns out that Curl code looks a bit shorter than the JavaFX code. Anyway I thought it would be fun to see if other bloggers would be willing to post the code for their favorite RIA technology. It's a pretty short program and very GUI centric, but its a fun to compare solutions all the same.

If you have never used Curl before you'll find that running the Curl application is easy. Copy and past code below into a text file and save it as "helloGoodbye.dcurl" to your desktop. Then download and install the Curl RTE. Once the RTE is installed, run the Curl application by simply double clicking on it. It will look almost exactly the same as the JavaFX code that Maurizioi created.



{curl 6.0, 7.0 applet}
 
{value
   def content = {Frame}
 
   {View title = "Hello, Goodbye",
       width = 400px, height = 300px,
       visibility = "normal",
       background = "#DDF",
       {on WindowClose do
           {exit}
       },
       {VBox
           margin = 6px, font-size = 36px,
           halign = "center",
           width = {make-elastic},
           {vcenter content},
           {HBox spacing = 6px,
               {CommandButton label = "Hello",
                   {on Action do
                       {content.add "You say hello...", replace? = true}
                   }
               },
               {CommandButton label = "Goodbye",
                   {on Action do
                       {content.add "and I say goodbye", replace? = true}
                   }
               }
           }
       }
   }
}
 


I don't recommend running the code I posted on Maurizioi blog because the commenting feature removed all the white space so it doesn't work. Also the one attached is even shorter than the one posted to Maurizioi's blog.

Note: Code has been modified since original post to take out errors introduced by formatting and also to make the code more readable.

12 Comments 0 References Permalink
3

The Eclipse IDE for Curl! in Curl Blog

Posted by RMH Jun 9, 2008

We just announced that the Curl Development tools for Eclipse (CDE) is available in beta! The CDE beta is a milestone in the general migration of all our tools to the Eclipse platform. You can still use the Curl IDE, which is written entierly in Curl and is excellent, but if you are an Eclipse user you can now develop applications in Eclipse 3.3 or later. The reason we are moving to Eclipse is pretty simple: Eclipse dominates the IDE market and has a huge ecosystem. Moving Curl development to Eclipse allows you to leverage hundreds of other tools built specifically for Eclipse and allows us to better serve the Eclipse market of developers.

If you prefer the Curl IDE than please stick with that, but if you are interested in learning how to use Eclipse or if you already use Eclipse than give the Curl Development tools for Eclipse a whirl - I think you'll find that they are excellent. You can send feedback about bugs (there will probably be a few as this is a beta) directly to Curl's engineers at cde_beta 'att' curl.com. If you are having trouble using the Eclipse Curl development enviorment you can post questions to ask-the-expert and we will respond as quickly as we can. We want the beta to be a success and in order for that to happen we need you to help us build a great product. Download the CDE (Curl Development tools for Eclipse) today and tell us what you think!

You can access the CDE here - it includes all the Eclipse plug-ins you need and documentation. Have fun!!


3 Comments 0 References Permalink
0

I've posted the CurlGraph Nitro sample application. Its described in the

Curl Nitro Sample Application: CurlGraph

article in our Widgets/Gadgets/Curlets section.

It visualizes part of the facebook social graph. We used it as a demo at the Web 2.0 Expo this April. The application installs an entry on your Start menu and can also install a desktop icon so you can easily start it up. It can run online or offline and it runs in safe mode inside the Curl sandbox, so you don't have to give it full access to your machine.

The full source code for the application is attached, so you can extend it further.

0 Comments 0 References Permalink
0

Feedback about the performance comparison between Curl and ActionScript has focused more on the importance of JPEG encoding than on the importance of high performance in a rich client language.

There have been a number of comments indicating that JPEG encoding is indeed useful in some rich client applications, enough to prompt discussion about whether it could be built into the FlashPlayer (where, presumably, it would not be coded in ActionScript).

However, image processing is just one example of an application genre where substantial application specific processing is important. Others include business intelligence, financial analysis, simulation, and product configuration. Speculation about the potential and implications of high performance language alternatives is beginning.

When considering performance, its important to distinguish between the performance of components that are built into the platform, and the performance of components developed specifically for one application. For example, the guimark test is intended to exercise the platform, not its language. From the theory page: "Code execution should have a negligible impact. The user code in each of the tests has almost zero impact on the test case"

We chose the JPEG encoding task to focus on the opposite end of the spectrum: exercising user code. The JPEG task is well suited for comparing language performance, because it has very little reliance on library functions, which might well be written in a different language. Furthermore, the operations used doing JPEG encoding (iteration, floating point math, memory allocation, object creation, method and function calls) are used in a wide range of applications.

Of course, every application uses a different combination of language and platform features, so generalization from any particular test to a specific use case must be done carefully. RIA language performance is most relevant for applications where a significant part of the application logic is compute intensive.

The distribution of processing between tiers will vary according to the nature of the application, but one wants such decisions to be based on application characteristics (data flow and work flow) rather than on intrinsic limitations of the client platform.

0 Comments 0 References Permalink
4

Curl for Mac OS X! in Curl Blog

Posted by RMH Jun 3, 2008

Curl announced today that we are out of beta and shipping a full release of the RTE for the Mac OS X! And not just the Intel version but the PowerPC version as well!

As a Mac user myself I'm pretty excited about this because it seems obvious to me that the Mac is making strong in-roads at the Enterprise. Within the next 10 years the desktop will be pretty evenly devided, in terms of market share, between Windows, Mac and Linux. People will be much less concerned with the type of operating systems than with the type of runtime. Today there are a couple of runtimes that appear to have a bright future: Curl (of course), Adobe AIR, and Silverlight (when it migrates from RIA to desktop). There are, of course, others such as Google Gears and Mozilla Prism and they may also survive but my bets are on the three amigos: Curl, Air, & Silverlight. I talk more about the deminishing importance of the desktop operating systems and the rise of the fit client platforms in the article The Next Battle for the Desktop. Kudos to the Curl engineers for making this happen!!

The full press release is here.

You can download the Mac RTE from here.

+ As a clarification this is the RTE not the IDE - we may make the IDE available for the Mac in the future but for no its supported on Windows and Linux. +

4 Comments 0 References Permalink
2

Recently we wrote about some performance measurements showing Curl to be an order of magnitude faster than ActionScript 3 when executing a JPEG encoding algorithm. Our report hit a nerve with Ted Patrick at Adobe, causing him to question

  1. Who cares about JPEG encoding performance in an RIA anyhow? Is there a single mainstream RIA that uses it?
  2. Are the results of any performance benchmark really meaningful? and
  3. Which is more important anyway, performance or wide deployment?

I'd like to address these points. First, JPEG encoding is important in some of Adobe's own applications. The Adobe AIR Salesbuilder application has a feature that can save a snapshot of your dashboard as a JPEG file on your desktop. The Salesbuilder demo script warns that this operation "can take a few seconds." This usability glitch is directly a function of the JPEG encoding speed that we studied. For a more compelling example, consider the recently launched Adobe Photoshop Express service. It can only run in on-line mode, and processing-intensive operations such as JPEG encoding are handled on the server, but if you ever wanted to create an offline, Adobe AIR style of application like this, JPEG encoding speed would absolutely matter. Given the importance of photo sharing and processing in the Web economy, can we really say that this task is not significant?

But for us, JPEG encoding is just a representative of a much larger set of tasks that a truly powerful RIA will have to do, which require application-specific coding in the inner loops. These tasks cannot be structured as just a series of calls from a scripting language to a set of predefined, pre-optimized modules that are bundled into the RIA plugin. For example, a typical requirement for enterprise dashboard applications is to handle a "data cube" model with thousands of data points in it. (See the Curl Business Intelligence Demonstration on our enterprise demos page for one example.) No RIA platform includes data cubes as a primitive data type, so even the inner loops of the code that distills information from the data cube to the presentation have to be written as part of the RIA application, where they are subject to the same performance laws as our JPEG encoding case study.

Regarding question (2), we think our benchmark test was pretty fair because we just used the same coding structure that is used in Adobe's own code. However, we would welcome any interest from Adobe in improving their ActionScript for JPEG encoding and reporting on the results!

Finally, the value of wide deployment over performance varies a lot depending on your situation. In many scenarios, wide deployment is very important. Heck, we use Flash ourselves to add some visual punch to our corporate home page that all comers can enjoy! For this kind of application, wide deployment often trumps performance and you adjust your ambitions, if necessary, to fit the constraints of the platform.

But Curl has excelled for enterprise applications and is already in use by more than 300 companies, many of them household names, for mission-critical applications. These applications aren't too visible because most of them exist entirely behind corporate firewalls, but they testify that Curl is in fact a trustworthy, industrial-strength platform. For this type of customer, breadth of deployment on the Internet is absolutely not the issue; the capability of the platform to host powerful, responsive applications is.

2 Comments 0 References Permalink
2

This note is to announce, belatedly, that Friedger, our first Curl developer community MVP, has joined the Curl Development Utilites (CDU) Open Source project.

Friedger has offered to contribute some of his IDE extensions to open source. The CDU project is the natural place for those to be made available, as its aim is to consolidate useful development techniques.

The CDU originated as internal tools supporting development of external libraries like the WSDK. It provides a test framework, and build drivers. That functionality is now used by both WSDK and CDK open source projects.

Welcome to the project, Friedger!

2 Comments 0 References Permalink
0

For Curl, Security is Job #1 in Curl Blog

Posted by RMH May 29, 2008

It's interesting to look at technologies that have disrupted incumbents in the technology arena. One thing I have noticed is that a disrupter is designed from the ground up to address a new paradigm while incumbents tend to fail because they were designed for a different paradigm.

Take Microsoft Windows, which has dominated the desktop for more than 20 years. It was never intended to be used on the wild west of the Internet and as a result it has fallen prey to innumerable viruses, worms, and so on. Compare that to Mac OS X, which is built on a Unix variant that was designed from the ground up for wide-area networks like the Internet. You don’t hear about Mac exploits very often because the Mac operating system has made security a part of its primary focus since the beginning. The result, Mac OS X is gaining on the incumbent Windows platform and will likely eat away at its market share until Windows no longer dominates the desktop.

The same can be said for RIA technologies. Take a look at Flash, which was not designed as a RIA and was not focused on security issues from the start. Flash evolved from an animation player called Shockwave. Compare that to Curl, which was developed from Day 1, over 10 years ago, as a RIA solution that specifically addresses security issues associated with the Internet. While Flash has suffered from numerous exploits (see here and here) over the years, an exploit against the Curl platform has never been discovered1. While Flash is the market leader in mass consumer applications, Curl is the market leader in enterprise deployments (for years we’ve been used by many of the largest companies in the world).

The security issue is going to haunt Flash just as it has Windows and I expect that platforms like Curl, which were designed from the ground up to address security in the wild west of the Internet will gain market share and eventually usurp Flash as king of the RIA platforms.

+1. Exploits for the open source project cURL have been reported but there is no relationship between cURL the open source project and Curl the RIA platform other than similar names. +

0 Comments 0 References Permalink
0

Richard Monson-Haefel in a recent article "AJAX RIA World - The Tale of Two Webs" challenges the assumption that all web applications must be browser based to be considered real web applications. Indeed with advent of more sophisticated RIA platforms like Adobe's AIR and Curl's Nitro the line between client server and web applications is blurring.

Both AIR and Nito applications can be delivered over the web, installed on the desktop, executed outside the browser and run off-line. These application behave like desktop applications but have the TCO attributes of web applications. They have the best attributes of both client-server and web applications. At Curl we've been referring to this new class of applications as "Fit Clients." They're not FAT or THIN but FIT. We've been using the following graphic to explain the convergence of applications types into this new class.

Desktop Convergence

While both client-server and browser-based thin clients have been with us for some time, Web2.0 technologies like Ajax and desktop widgets (client-installed and web-based) are creating the realization that it's no longer either or. I think within a year we'll start to see broad deployment of these Fit client applications as more and more enterprise users will expect the benefits of both and the world of two webs will start to look like one again.

This trend will clearly disadvantage Ajax based applications as they lack the key features of Fit clients including desktop installation and off-line execution. Already many (see here and here) are recognizing the limitations of Ajax for implementing enterprise applications and I expect this realization to continue to erode Ajax's use in the enterprise.

0 Comments 0 References Permalink
1 2 3 ... 6 Previous Next