Configure player

Close

WWDC Index does not host video files

If you have access to video files, you can configure a URL pattern to be used in a video player.

URL pattern

preview

Use any of these variables in your URL pattern, the pattern is stored in your browsers' local storage.

$id
ID of session: wwdc2000-400
$eventId
ID of event: wwdc2000
$eventContentId
ID of session without event part: 400
$eventShortId
Shortened ID of event: wwdc00
$year
Year of session: 2000
$extension
Extension of original filename: mov
$filenameAlmostEvery
Filename from "(Almost) Every..." gist: ...

WWDC00 • Session 400

WebObjects: State of the Union

Tools • 41:09

WebObjects is Apple's industry-leading application server platform. This session is a WebObjects overview that includes product positioning, the latest features, and future directions. We discuss success stories and news from the community at large. Find out how to get involved in the WebObjects community by building and reselling WebObjects applications.

Speaker: Ernest Prabhakar

Unlisted on Apple Developer site

Transcript

This transcript was generated using Whisper, it has known transcription errors. We are working on an improved version.

So the three things I wanted to cover with you today. The first of all is WebObjects and Apple, where WebObjects fits into the Apple family. Secondly, where WebObjects is today, or I should say yesterday, and where we're going today and tomorrow moving forward. So as Steve mentioned at Macworld in New York, Apple has always been known for being the world's best personal computers, for having a really great killer desktop platform. But in today's age of the internet, we really want to be thinking outside of the box.

And so why a lot of what we do, particularly with Mac OS X, is focused around the desktop, there's a lot of things we do that are focused on the internet platform, things like the QuickTime, like streaming, like HTML web design, and so forth, Mac OS X Server and other products in that family. And what we've done is really taken WebObjects and made it our internet engine. We think WebObjects is the best tool for developing and deploying applications on the internet.

It's a powerful engine to interactively deliver internet content, whether it's HTML, PDF, movies, Java, anything you vend over the internet can be supercharged by having Web Objects underneath it. Another way of looking at that, it's a smart way to bring your applications to the internet. How many of you have done any sort of client server development?

Okay, for a handful of you, a lot of you probably have, how many of you currently have applications that never talk to anything else? Everybody has to talk to something, whether it's a local data store, whether it's other applications, whether it's web servers, whether it's to get updates, whether it's to get new content, whether it's to send customer registration information back and forth. WebObjects is now an incredibly powerful way to build this relationship with your customer to your application to you over the internet. internet.

And this is also what Apple has done with WebObjects ourselves. It is our internet engine. It is the system that powers our internet strategy, whether it's the Apple Store, Apple.com, iTools, iCards, the Developer Connection website. All these things are powered using WebObjects. And we've known it's a great tool. The top 3,000 customers in the largest websites in the world know that this is a great and powerful and awesome tool. But we want to make sure that you all can take advantage of it as well.

For those of you who aren't very familiar with WebObjects and the technology, let me just give you a real quick summary of how it works. A traditional web server just takes static HTML pages and bends them to a client. But often you have other data sources you want to use to bring to your customers rather than them to hardwire everything into HTML. Mainframes, databases, ERP systems, directory services, etc.

What WebObjects does is take all the information, feeds it into an application server that manages and massages the object, and uses that to dynamically generate HTML pages, or equivalently Java, which can then be vended to any client. Because it's a fully scalable, what's called a three-tier system, you can easily add new application servers into the mix and dynamically create a very highly scalable, robust, fault-tolerant web application service.

WebObjects has been the industry-leading application server. It allows scalable deployment on a number of platforms, has a very powerful, rich set of graphical development tools, which not only allow code-free development like you saw this morning, but also very powerful in-depth customization because of a very rich public API building on top of extremely powerful, well-tested objects. And these allow you to connect to basically any kind of structured data, whether it's a database, directory service, materials management system, et cetera.

And the benefits of this are threefold. First of all, you get incredible productivity with WebObjects, up to ten times faster than traditional alternative development tools. We have a fully integrated suite of development tools, so we're planning on supercharging even more going forward. We've really learned a lot of lessons in the last, you know, this code base is built on the old Next Step, Open Step, DBKit technology.

It's been around since the early '90s, longer than any other tool in this class. And our team has really learned a lot of lessons, as we've done various generations of this project, to make sure we have a very powerful object-oriented architecture, something that's very difficult to build properly, but we've got more experience than probably anybody else in the world.

Secondly, it has very powerful integration services. You can store your data pretty much anywhere and access it in a single application on a single client, talking to a multitude of different data services of all sorts of different types. And it's a very high-performance solution used to run things like the Apple Store, multi-threaded, multiple instances on a single system. Also, it can be transferred from a Mac OS X service system all the way up to high-end, multi-CPU, Solaris and HP boxes.

So, just to give you a quick summary of where we are with the currently shipping versions of WebObjects, we really feel like we've had the best technology, the coolest solutions, and a totally awesome business. The technology that we released this March was WebObjects 4.5, which we believe is smarter, easier, and even more interoperable than previous generations of WebObjects.

The system's a lot smarter in its ability to analyze and report performance issues, to manage reconnects and failures to your database. It's easier than ever to develop solutions using the new direct-to-Java client, as well as a redesigned WebObjects builder for creating dynamic HTML components, and even more interoperable by including great support for parsing and integrating XML data, as well as connecting with directory services such as LDAP. WebObjects has continued a huge streak of winning awards, most recently a CODI from the Software and Information Industry Association for Best Application Development Tool, Best Application Software, and a great application server from Java's Developer Journal.

This is the 1999 Java Developer's Journal. Our developers haven't been quite as aggressive this year with the voting. Feel free to join in if you agree with me that this is a very cool tool that deserves to be recognized. And then we also won the Software Product of the Year from Network Computing for being very well connected and also being a great application server.

So we've got a huge list of awards. They're all on the website. It gets almost tedious to recite them all. But a lot of people have learned that this is a great tool. And one of the reasons it's so great is because it's a great tool for the development of software.

And one of the reasons it's so great is because we really believe in industry standards. We've deployed a host of different systems. We support a multitude of different languages. We integrate with a whole slew of different development technologies, whether it's scripting languages or C++ or data formats such as XML. And we have data adapters to most SQL databases, LDAP, CORBA, DCOM, with a variety of third parties that provide a wealth of connectivity solutions.

And the customers today read like a top 100 list of the web. You've heard all the names: BBC, Consumers Digest, Disney, AAA, Logistics, US Web, Adobe, the US Postal Service. These are all just very highly demanding companies that really need a very powerful solution with very rapid time to market. And they found WebObjects the perfect solution for their needs. In order to reach--and we have a couple of quotes here from people who've really leveraged the dynamic HTML creation process, integration with CORBA and Java-compatible architectures. architectures, and the list goes on and on and on.

We have a number of incredibly talented partners that really make the WebObjects technology come alive and map to your business solutions, whether that's for HTML design tools, databases, reporting tools, integration with PDF and other technologies. We have hundreds of developers who have been working very closely with us for years to rebuild robust, flexible solutions, customized to different vertical markets.

This has really paid off. We have been first to market in the web application server space. We essentially created it several years ago with the first version of WebObjects. The last time they've run the numbers, we were number one in market share. We have a phenomenal gross margin and double-digit growth. We've just been really pleased with the business, and it's really due to an awesome team. WebObjects has had a dedicated sales force focused exclusively around these types of high-end enterprise class solutions.

We have a whole army of trained consultants who are extremely knowledgeable and passionate about these solutions. A very sophisticated training program, which you'll see on your demo CD, some of the fruits of that, as well as a worldwide network of resellers and a very talented and focused engineering group that, as we say, has been doing object-oriented development for hundreds of man years.

But to just give you a taste of where we are just today with WebObjects, I've asked Andreas Venkar from the rapid deployment team of WebObjects to give a walk-through of the demo that you saw this morning. Was everyone here at the keynote today? Yeah. You like it? Okay.

I'll try and go through it a little bit more slowly, so you can get a better idea of what it was that we did during the keynote. Why don't you start with the direct HTML connection there. This is a traditional WebObjects application that WebObjects 3.5 or WebObjects 4.0 developer would be comfortable with.

WebObjects 4.0, we introduced a new technology called direct to web, which basically allows you to very quickly step through a database and just say these are the various fields I care about. Give me a user interface that's built on that. You get a very nice, simple, clean, elegant looking HTML based user interface with a different pop-up. You can pop up buttons and search fields.

You can search on a field, do a query, pull back a detail, etc. It's very nice and simple and very quick and easy to get up and running, but it's a very limited interface. It looks like you're running on something that's a notch or two above a TN3270 terminal, but doesn't really have the look and feel of a modern, rich operating system. It doesn't really leverage all the power you have sitting with a G3 or G4 processor on your desktop.

We looked at this and we said, "Well, this is kind of nice." But this is WWDC. This is Steve Jobs we're talking about. We can't have him showing this. We need something really sexier. So they said, "Well, okay, give me a few minutes. Let me see what I can throw together." And so, "Okay, Andreas, you have a few minutes. Let's see what you can throw together." So this is the new project builder that's available as part of DP4.

We've custom hacked it to support WebObjects. The version you have on DP4 today does not yet support WebObjects. It will very soon. But we just pick an assistant there, in this case the direct to Java client, which is a new technology. It was introduced in WebObjects 4.5 in March. We just give it a name. So it's a database model.

And this is really the hardest job if you're managing a database application is understanding your model. What are your relationships? What are the important schema? But once you create that model using the knowledge of the database, WebObjects makes it really easy to take that information and turn it into a dynamic application. It uses very sophisticated heuristics to determine what are the primary tables in that database which need to be rendered differently.

And you just go ahead and build it. And basically it creates a very simple shell server application which then talks to a very simple shell client application. So you saw the code. There's basically three or four lines of code and mostly they just say, "Hi, I'm running now." All the work is taken care of by the frameworks that are already built into WebObjects. So you can start here and just build this application very quickly. And then you launch a generic Java client.

This is something they can download from the web or you can have one client pre-installed on a machine. So what you basically have to do is add a URL telling which server it talks to. It connects to the server. The server knows, "Okay, this client I can tell this information to." It generates the XML describing the data.

That client dynamically renders that into a user interface, adjusts the sizes and widths of things so they fit reasonably on a page. And as you see, they're all alphabetized. This isn't a hand-tuned thing. This is just how it comes out straight from the directory Java client. Very powerful technology leveraging the power of Java and Aqua on Mac OS X. You can do a search. You can bring up a detail view.

And we also do a little bit of work to integrate a QuickTime movie view into the directory Java application. It's something that you can do using the QuickTime for Java clients available. And... There are things I can do. So you see here Queen Amadella meditating in deep thought about the destruction of her world. And that's the web--and there it is, in five minutes, a complete direct-to-web job application.

Thank you, Andreas. And like they say, you don't have to take my word for it. You can go home with the WebObjects 4.5 technology that we've given to you in the developer's backpack, run on Mac OS X server or Windows NT, and be able to immediately get up and running with WebObjects and build an application just like that yourself. I don't think that the Java in Mac OS X is quite up to snuff with what we have here, but you probably even get a basic Java application running today on top of Mac OS X DP4 and get a little feel for what that looks like.

So this is really, really cool, awesome, and powerful technology, but we wanted to go so much further than we have in the past. And so we really set ourselves three goals. And the biggest area is really trying to make this a lower barrier to entry. A lot of people who really love WebObjects see it as incredibly cool, but you work in the $1,000 application space, or you do a one-person small consulting shop for small businesses that can't afford a $50,000 server. How can you take advantage of this power to deliver really cool applications or websites for your customers?

So we're focusing on making the technology more accessible, expanding the array of solutions available, and creating a whole new business model for driving this really into the mainstream. So to start talking about the new technology, I've asked Tony Trujillo-Villan, the director of WebObjects Engineering, to share a few words about the upcoming version of WebObjects. Want me to run this?

Thanks, Ernie. So as you heard earlier in the keynote, Steve mentioned we have a new release coming out later this year, and we are calling it WebObjects 5 for Java for a good reason. We're going to be translating our frameworks into 100% pure Java. We believe this will help you guys and make the product more usable by Java developers at a first glance. You can deploy it anywhere. And I'd like to announce that we're now going to be qualifying the product on Linux.

We're also going to be including a JDBC for Universal Database Connectivity and some inoperability standards for the internet. Sorry. We'll be talking more about Enterprise Java Beans and XML later on in the week, so please make sure you join us at those sessions. So as you heard and as you saw earlier today that we're going to be optimizing for Mac OS X, Ernie mentioned that the CD that you have in your backpacks doesn't work on X, but the product that we're working on now, when released, it will work on X. And you'll see the Aqua user interface in that release. We'll also be using the new project builder that you saw in the demo. And we have a couple more exciting opportunities in the future. We'll be working with AppleScript and network info directory services.

So with that, I'd like to invite Francois Joop to give a demo. Hi, everyone. Hi everyone, my name is Francois Jouaux and I'm going to present you this WebObjects for Java version that we call WebObjects 5.0. Okay, so, well, guess what OS we are running here. Any guess?

No, not NT. We have a Linux box here. We have a Mac OS X server box here, which is actually being displayed. And we are going to take one example out of the box from WebObjects 5.0 and run it on both machines. So, run. Here, my charming assistant, run. Upload.

We'll try the create plot example. So, as you see, We can run WebObjects Java out of Project Builder. So WebObjects Java is compatible with WebObjects 4.5. It lives side by side with it, and the same Project Builder is used. So Ron will compile the application, which is a 4.5 example that we have translated to Java.

"The application is running now on my QuestN server and I'm going to access it through the browser which is here." Okay, so this is actually an interesting example because it has a small graphic engine underneath that enables it to draw some graphs. For example, here we have a pie chart. I can type whatever I want.

[Transcript missing]

So, as you know, Java, you build once and you run anywhere. Well, it is true as well for WebObjects or Java, and this is the reason why we're moving there. So Ron is our Linux guru, and he knows pretty well the tar command too. Okay, so could you please switch to machine number two? So you see this is Linux running X. And we are doing the FTP.

[Transcript missing]

Okay, so the package has been tarred up and moved. Okay, here in red, demo.tar. Both of these OS have Unix as a base, so the same command can be used to enter it. So here's something very interesting. We do not support yet Linux in our pre-alpha release, so we have to fake our licensing so that the Java VM believes it's Solaris so that our licensing key can work. So now the licensing check passed and the app is ready. We can show you. Okay, so the app is running now on Linux and it's actually the exact same application. There is not much more I can say, except I can go back to the statistics page.

Oops, we have an exception. That's okay, actually. I wanted to show you the exception. So you see here we have the backtrace of the exception is actually rendered in the browser. And if we switch back to the machine number three, please.

[Transcript missing]

Ron is a quality engineer with us, so it's a challenge for him to introduce a bug in an app. He's used to finding them. I'm good at introducing bugs. So he's now typing A very ugly bug, actually. A null pointer exception, and he will run the application again. So I'm going to click on the right link. Hopefully you'll see another case of this exception.

Okay, so the same app come up, but if run did well, when I click on Update Graph, I'm going to get an exception. Well, here it is. Now, you see that you get a backtrace with the first line being in your code and a clickable link here. If I click on the link, watch what happens here. You get straight to the line in Project Builder where the exception occurs. So, not only is bad in moving to Java, and that's a great example of a better development environment. Thank you.

Hey, can I ask you a favor? Can you bring the Linux-- actually, put back the-- with the Mac OS X on that screen and the Linux on that screen? Can you do that? Or bring the Linux on the other screen? Number two? Mac OS X's idea of Unix, the rest of the world's idea of Unix. Gotta love it. Thanks, you can go back to the slides now.

So we have this incredibly powerful technology, which is really getting out in the mainstream. But it's still incredibly sophisticated. And one of the things that people have often accused Apple of is creating simplistic toy machines, things that look cute or look pretty, but are underpowered, don't really scale to really great complicated solutions.

And with Mac OS X and WebObjects, I think we're really bringing a whole different world to answer that problem. As you can see, we do have all the power of Unix underneath. We have a heck of a lot more than that on top, which is really accessible for the ordinary user to accept and enjoy as if it was just a traditional Macintosh.

Just as you see with WebObjects, you have incredibly powerful and simple to use tools that a relatively unsophisticated developer can get up to speed on very quickly. But there's still a lot of depth in all the Unix and all the interaction of the sophisticated tools going on in the back.

So one of the things we needed to do is figure out how do we make sure that our customers, our partners, can really tap all the power that exists within the WebObjects and Mac OS X. And because of that, we introduced a whole new initiative called Apple iServices. And I'm pleased to announce Scott Anderson, the new director of Apple iServices, here to tell you more about it. Please welcome Scott.

Thanks Ernie. I can't tell you how excited I am to see four or five hundred people in one room here to talk about WebObjects. This is truly a great day for our product and I'm incredibly proud of what the company's been able to do and the decisions we've been able to make around the technology. Just to put this in context, I've been with Apple for three years.

Been prior to Apple with Next for almost seven years. So this to me is a culmination of a lot of events. And to come out of the gates with a pricing strategy that's as aggressive as it is and a business strategy for my organization that I think is compelling is really exciting. So before I start, I didn't see the show of hands earlier in the session. How many people are currently using WebObjects in the audience? Great. And how many people here are familiar with Apple Enterprise Software?

[Transcript missing]

becomes Apple iServices. Okay? Apple iServices, if we go back in history, what did AES do? AES sold WebObjects and delivered services to the business and enterprise marketplace. Today, effective May 15th, Apple iServices is dedicated to delivering custom solutions through our consulting, integration, training, and support services.

[Transcript missing]

I want to talk a little bit about our partners. Today we really have three types of partners within the old construct of AES. We have the Enterprise Alliance Program, we have Solution Providers, and we have Systems Integrators. The EAP program, which many of you may be members of, is really a developer program focused around WebObjects, providing support services and training as well as product.

That program will be transitioned over into Apple's worldwide developer relations programs and we'll be communicating with our EAP members over the next 30 to 45 days as to what that transition looks like. We've also got a suite of solution providers, folks who take WebObjects and build vertical market solutions around the technology and take that technology to market. And we have Systems Integrators, folks who are in the business of delivering custom solutions, who build domain expertise in the product and go out and help solve problems.

And I'm hoping, frankly, that amongst this group of developers in the audience today and participants in the conference in general, there will be a tremendous increase in Apple developers who embrace the product and build solutions using WebObjects. So I'm hoping you'll all be part of the program moving forward.

I think there's tremendous opportunity. We're looking at the possibility of extending our business model to include components and reusable frameworks as part of our services play. We're also looking at programs to encourage vertical market applications. We have app vendors today who deliver solutions into everything from litigation support to logistics to e-commerce applications. And by decreasing the barrier of entry and eliminating the price point on deployment, I'm really hoping that there will be a tremendous amount of increased participation in the program.

And lastly, I really hope that with our support as Apple iServices, product marketing, as well as worldwide developer relations, we can collectively work with the app vendors to create solutions that are more accessible to the community. We can collectively work with the Apple developer community and build a real strong sense of community, attract a larger suite of developers to the platform, and have a bunch of solutions out there that address specific market needs that we haven't been able to touch in the past. So at a very high level, that's a little bit about AIS. We'll be here later on to answer any questions you might happen to have. Ernie? Ernie White Thank you very much, Scott.

One of the great things about having Apple iServices on board is that often there's this Beltway effect. When you're in a small community and you hear things a certain way, it's easy to get locked into a certain mindset. The Apple iServices people are out in the field facing all the same challenges you do as developers, trying to figure out what's going on from Apple, what the directions are, what the support they have available there. And they're an incredibly valuable resource for us to understand what are the issues that you as developers in the field face.

So we're looking forward to this new focus to be able to partner more closely with them to really appreciate and understand developer concerns and make sure we have the right solutions in place for you to succeed in meeting the needs of your customers. So that's kind of the whole new world that we're trying to open up with. And then my job in product marketing is trying to take that great technology and bring it out to these people in the field so they can build really compelling solutions. So there's a number of things we're doing to make that happen.

This is the standard piece that people who have gone to marketing school learn about. So this is the packaging, pricing, promotion, etc. Let me just kind of walk through that real quickly for you. Historically, there were two different products you would buy for WebObjects. One was a developer product.

Oops, that seems to have... "Developer product, a deployment product, and we're basically taking those two and putting them into a single box, which is both developer and deployment. Now previously the developer tools cost $14.99, deployments started at $7,500 and went up to $50,000. We have taken the $50,000 product and the $14.99 product, put them into a single product, costing $699."

And this isn't like the $4.99 or the $99 product that you sometimes get from other developers when they do a low-end version of their product, which doesn't have database access or doesn't allow you to load, balance, or share. This is the full $50,000 product in this little pretty box.

We had to work pretty hard to squeeze it in there, but it did fit. And this is affecting not just future going products, but today's products, WebObjects 4.0.1 and WebObjects 4.5, and it's effective immediately. Go to the Apple store after this session. It should be up there. You can download and buy it today.

We're very excited to be able to really make this available to a whole bunch of different customers who never would have seen it before. We're also really expanding the channel used to access this technology. It's no longer just a niche thing for an enterprise business. If you want to build a WebObjects application, there's a couple of options. One, it'll be available to all Apple resellers who want to carry it.

They'll probably most likely be high-end resellers, your Fri's, your value-added resellers, your specialty integrators, Apple solution experts. But anyone who works in there, who wants to carry it, can carry it, as well as having it available worldwide on the Apple Store. We're also working to make it very easy to bundle with your applications. If you have a high-end web publishing solution, you can either tell your people to buy it through their normal channels, or we'll make it available for you to deploy along with your application.

So you can get a serial number and the right to copy the software to install on your CDs and make it available to your customers without having to go through the hassle of an additional channel, an additional installation. We're still finalizing the application. We're not going to go into the details of that, but our goal is to make it really easy and really transparent to you and your customers. So if you want to build a really powerful application that just happens to include a $50,000 web server underneath, you can charge them $50,000 and pocket the profit for yourself.

[Transcript missing]

For more information, there's a huge wad of information available to you. There is the new WebObjects website, which has been redesigned to reflect the new announcements today. We have a WebObjects lab available downstairs, available every day over the lunch hour. Go down there, play with WebObjects 4 or 5, try and build a direct-to-Java application. Get some feel for what this is and try to think about how this might benefit your customers or your development technology.

You all have a WebObjects 4 or 5 evaluation CD with some wonderful movies and demos included to help you get a taste for what WebObjects can do, as well as some of the training and other resources available. We're also announcing the WebObjects Community BoF. We have a huge, vast wealth of partners who have been working with the platform for years, who know a lot. Some of them offer consulting services. Some of them offer training services.

Some of them have some very cool specialty applications, which might inspire you in what you're doing. They're all going to be there, having their PowerBooks and iBooks. Hopefully, they'll show you some of the cool things going on. We'll just get together and hang out for an hour and a half Wednesday. We arranged to get the Civic Auditorium, because we didn't have enough room for the rest of you anywhere else. Across the street, that huge building, maybe we'll pack that out as well, as we're doing here. Be sure to come by and bring a friend.

And if you have technical questions during the course of this week, there's a [email protected] address where you can ask questions about WWDC sessions. This is not a general tech support question, but if there's something that was covered in a session that wasn't clear or you don't know where to go next to find out more information, feel free to send email to that technical woefeedback email address.

And the second line is supposed to be [email protected], which is the marketing address for my team, which is currently just me, but I'm working on hiring some more people to help me take up the load because we've got some really great things planned, and this is just the tip of the iceberg.