- Please introduce yourself to our Italian readers [Answer 1]
- In what is your new book, Professional ASP.NET 1.0 S.E., different
from the previous one, Professional ASP.NET? Does a developer need it
if he has already bought the previous one? [Answer 2]
- ASP.NET is not as simple as ASP and the same applies to the .NET
languages. Moreover, all ASP code needs to be rewritten to take
advantage of the many features of ASP.NET. What are your forecasts for
the success of this platform? [Answer 3]
- In your opinion,what is the best feature of ASP.NET? And what could
have been better implemented or is not present at all in ASP.NET? [Answer 4]
- ASP.NET and the .NET Framework seem very close to JSP and the Java
Platform. But maybe I am wrong, right? [Answer 5]
- Many developers say that developing ASP.NET with VB.NET or C# is
basically the same. What do you think about it? And why is there a need
for a brand new language like C#? [Answer 6]
- ASP.NET comes with many components, first of all the DataGrid control.
Are these controls really powerful or does a developer need to write a
lot of code in real-life situations? [Answer 7]
Please introduce yourself to our Italian readers
Alex Homer
Hi, I’m Alex Homer – a geek and developer who gets to play with all the
latest Microsoft software on the condition that I write about it as
well. I live in Derbyshire in England, with my wife and three cats.
Other than writing (mainly for Wrox Press), I do occasional training
days and consultancy work for companies in England, and speak at a few
conferences internationally each year. Lately this has all been about
ASP.NET. And, in what spare time I have left, I run my own software
company Stonebroom Limited [new window] (although .NET
has taken over my life almost completely during the last year, so
there’s not much new happening on that site right now).
My only trip to Italy has been to a friend’s wedding in Cortona in
Tuscany, and we spent a wonderful few days seeing Firenze and Pisa. It
was a shame the tower was still tied up with wire when we were there –
they took it all down about a week after we left! I have a few
colleagues in Italy, though, so I might be able to make a trip to Rome
sometime soon. I’m really into history when I can touch it.
Dave Sussman
Well, I’m Dave, and I’ve spent my entire professional career either
developing software or teaching people how to develop software. After 10
years as a programmer(in both Unix and Microsoft camps) I turned to writing
full time and have specialised in Microsoft internet and database
technologies. For the last two years I’ve been heavily involved with
ASP.NET. I tend to spend most of my time either writing or playing with beta
software. I get to play with new stuff, while working from home. It’s the
best job I’ve ever had.
Top
In what is your new book, Professional ASP.NET 1.0 S.E., different
from the previous one, Professional ASP.NET? Does a developer need it
if he has already bought the previous one?
Alex Homer
What’s different is that we’ve taken the existing text and checked and
updated it for the 1.0 release version of ASP.NET and the .NET Framework
to make sure that everything is correct for this version. We’ve also
tested all the code.
There are some new additions, for example I added a
new sample to the ADO.NET chapters to demonstrate how you can take
advantage of a new feature available from the DataAdapter object.
The
default security settings for ASP.NET also changed right at the end of
the development cycle, just before release, and so Chapter 14 has been
updated in several places to cover this. Many other chapters also have
changes to reflect the final updates to the Framework. And, of course,
Wrox have thoroughly re-edited all the chapters to include all the
technical errata and feedback received from the Beta 2 book.
If you’ve got the Beta 2 book, you’ll find that almost everything still
works fine (though you should get the latest errata [new window]). And, through the online services of the Wrox Web
sites you will be able to register that you own the previous version and
get access to an electronic version of new book at special rates.
However, for developers, the new book will certainly earn it’s keep –
and they’ll no doubt recoup the cost quickly as more and more of their
customers require ASP.NET development.
Dave Sussman
The main aim of the book update was to ensure that we were compliant with
the version 1 release of ASP.NET. We had very close contact with the ASP.NET
team (in fact one of the authors is in the team), and although Microsoft
weren’t planning changes before release, there were inevitably some.
Overall
there wasn’t that much change between beta 2 and the release, but there were
some things that had a big impact. The security changes in particular had an
effect, as this was one area of major change.
I’d say that most of the code
samples should work, but there may be some that are inaccurate. For the new
book I’ve greatly improved the samples, which are available in both VB and
C#, as well as created a setup routine. You can probably stick to the old
version of the text, but downloading the new samples is definitely something
worth doing.
Another thing we aimed for was to correct many of the mistakes that crept
into the book, such as spelling and grammer. This edition should show a
marked improvement.
Top
ASP.NET is not as simple as ASP and the same applies to the .NET
languages. Moreover, all ASP code needs to be rewritten to take
advantage of the many features of ASP.NET. What are your forecasts for
the success of this platform?
Alex Homer
I guess my opinion here is tainted, because I’ve been involved with
ASP.NET for a long time, through much of it’s development over the last
two years. I love it, and I hate having to go back and work in ASP 3.0.
And every developer I’ve spoken to who has used both seems to say the
same.
Plus, there is really no “risk” in installing and getting started
with it, as it co-exists alongside ASP 3.0 with no problem. Our own site
(http://www.daveandal.com/ [new window]) includes both ASP 3.0 and ASP.NET pages. As
long as you’ve got Windows 2000 (or XP) installed, you can install it.
It can also be cleanly un-installed without upsetting the operating
system.
So why shouldn’t it catch on? I think we’ll see huge levels of adoption
amongst existing Windows Web developers very soon, and it might even
convert users of other platforms in time.
As to .NET in general (rather
than ASP.NET), I’m not so sure. Yes, it will succeed, though the take-up
depends on how quickly users install the .NET Framework on their
machines. Still, as it doesn’t actually change the OS on your machine,
and will no doubt be available as a service pack or installed with other
products, we might see it grow quickly in this area as well.
Dave Sussman
I think ASP.NET is going to be huge. The reason is that it’s simply far
better than previous versions. Everything is just so much simpler to do. The
class library provides much of what you had to hand code, and the
architecture makes your coding far more maintainable.
I do agree that
rewriting is the way to gain the best from ASP.NET. Some people have
complained about this, but I think we’ve been stuck with inferior products
purely because of ‘backward compatibility’. There comes a time when you have
to bite the bullet and advance to the future, and I believe .NET is the
future for Microsoft developers.
Top
In your opinion,what is the best feature of ASP.NET? And what could
have been better implemented or is not present at all in ASP.NET?
Alex Homer
I think that the major feature has got to be the fact that pages are
compiled into class files, rather than being just script that is
interpreted and executed on demand. This is what allows all the other
clever features to exist, such as the event-driven postback architecture
and clever server controls.
If there was no compilation, and caching of
the executable code, none of these would be possible. It would take the
ASP.NET processor far too long to build complex pages with lots of
controls and other objects every time the page was requested. Of course,
all this depends on the underlying .NET Framework, without which the
development of ASP.NET would not have been possible.
It’s hard to say what is missing, and even to think of things that could
have been better. I guess we’re all still learning about what is
possible, and the best ways to fulfil the tasks we require. As time goes
on, any weaknesses or shortcomings will no doubt become obvious.
The
only area where I have found issues and had difficulties accomplishing
the tasks I want to is with ADO.NET. Perhaps some of this is due to me
expecting too much, as in general it is an extremely wide-ranging and
powerful technology.
Maybe I can be more critical in a year’s time?
Dave Sussman
Ooh, tough questions. The best is probably the architecture – I love having
the event based programming model, which makes code so much cleaner.
I can’t
really levy any major faults at ASP.NET itself, I really think it’s great.
The only issue I have (which the team didn’t have time to do) is that the
tracing functionality is sealed. I want to be able to plug into that –
perhaps writing to a database or tcp monitor instead of the internal system
that it uses. A scheme similar to the standard .NET Trace Listeners
perhaps,whereby you can replace (or add to) the existing tracing scheme.
I’ve a few issues with some of the class libraries too. It would be nice to
have a few of the classes overridable instad of sealed.
I’d also like to see
a connected database model – it stall has many uses, and sometimes dealing
with everything disconnected is cumbersome.
Top
ASP.NET and the .NET Framework seem very close to JSP and the Java
Platform. But maybe I am wrong, right?
Alex Homer
I suppose it depends on how you define “very close”. The idea of having
a virtual machine or underlying runtime is not new. VB had a runtime,
which converted the compiled P-code into native binary code for
execution. So you could say that VB was like Java in this respect (and,
from there, that ASP was like JSP).
The idea of a virtual machine,
especially in the case of Java, is to provide a separation between the
program code and the underlying operating system. However, the big issue
is speed and efficiency, and virtual machines always have to take a
performance hit if they want to avoid being platform-specific.
.NET is not a virtual machine, but instead a true “runtime”. It still
sits between the program code and the OS, but the code that it executes
is compiled first into a binary format Intermediate Language code
(MSIL). The runtime can very efficiently execute this as native binary
code with minimal translation. The runtime also uses all kinds of clever
just-in-time compilation and compiled code caching techniques to
maximize performance – areas that Java is still having to address.
So
ASP.NET, and .NET programs generally, are much nearer to executing
compiled native code than JSP and Java are at present.
Dave Sussman
So they say, but I know next to nothing about JSP so it’s hard to comment.
ASP.NET started out of the ASP teams desire to improve their product, not
because Java was around. Even if it is close, I really don’t see the
problem. The Java camp bash Microsoft for not doing things and then bash
them when they do something good. There’s plenty of room for both. What I’d
really like is for both parties to realise this, and to provide
interoperability.
Top
Many developers say that developing ASP.NET with VB.NET or C# is
basically the same. What do you think about it? And why is there a need
for a brand new language like C#?
Alex Homer
It is basically the same in that you generally are using objects from
the .NET class library – so the methods and properties are the same
irrespective of the language you use. However, the syntax is quite
different, and switching between the two (especially from VB.NET to C#),
is not trivial.
However, for a Java or C++ programmer, C# is probably a
lot easier to come to terms with, while VB programmers (and to some
extent VBScript programmers) will soon get to grips with VB.NET.
One point is that both languages have their own “private” syntax as
well, for example VB.NET still supports functions like InStr. It’s a
good plan, irrespective of which language you use, to try and get into
using the class library methods that are available to all languages
instead – for example use IndexOf (a method of the System.String class)
instead of InStr.
All languages are equal under .NET (with only a very few minor
exceptions), and the one you choose should be the one you are most
comfortable and most productive in. There’s nothing wrong with learning
the others (perhaps you might want to get into COBOL?), but you don’t
have to do so.
There are several reason for the appearance of the “new”
language C#. Neither C++ or JScript were ideal for use in .NET, for
various reasons, and it seemed unlikely that Microsoft could offer Java.
Instead, J++ (their “version” of Java) looked attractive. Though C# is
not just a renamed J++, there are similarities that make existing
programmers feel at home. C# is also an open standard (which no other
language really could become – for lots of reasons), and so can be
implemented on other operating systems if required.
Dave Sussman
You’ve no idea how tired I am of this whole language issue. I started life
as an assembler and C programmer (for many years) before taking up VB,
because it was suitable for what I wanted. I spent years being looked down
upon by C++ programmers, and now we’ve an environment where the language is
really irrelevant we’ve still got people worrying about it.
In ASP.NET there’s virtually no difference between C# and VB.NET. There are
a few things you can’t do in VB.NET (such as unsafe code), but I believe
most people will never require them anyway. As far as ASP.NET is concerned
it doesn’t matter whether you use VB.NET, C#, or even COBOL.NET. The main
issue is you should use the language you prefer, or that is required by your
job. It’s no good writing in C# if the rest of your team use VB –
maintainability is important.
So why a new language? Microsoft would probably have been happy if they
could have continued with their J++ development. They wanted C++ but without
all the horrible C++ baggage, but the Java license and subsequent lawsuits
from Sun put the lid on any further development.
So they came up with a new
one, but it’s not so far removed that it’s hard to learn. C# is much cleaner
than C++.
Personally I love C#, and do as much of my coding in it as
possible. After years of VB it’s nice to get back to a C style language – VB
is too verbose (and I’ve always hated that daft line-continuation character
you have to use).
Top
ASP.NET comes with many components, first of all the DataGrid control.
Are these controls really powerful or does a developer need to write a
lot of code in real-life situations?
Alex Homer
Some of the server controls are “simple” in that they don’t do much
other than make the control itself available server-side for use in your
code. Examples are the type of control. However,
the ASP controls (in the namespace System.Web.UI.WebControls) do have
several advantages. They use common and sensible names for the
properties, and make it easier to build pages. For example the
RadioButton control includes a caption, so you don’t need to use a
separate or other technique to provide this like you would in
plain HTML.
There are also some clever server controls, most notably the calendar,
validation controls and list controls (such as the DataGrid). These do
save a lot of server-side coding to get the output you want in the page.
In particular, the validation controls automatically sniff the browser
and will create client-side code that reduces postbacks and give a more
interactive experience for the user in IE5 and above. No doubt, new
controls will be added in time that do much the same thing. Don’t forget
that there are lots of 3rd-party server controls on the way, or
available already. There are new DataGrid-type controls out now that are
far more powerful that the standard ASP.NET DataGrid.
Dave Sussman
Unfortunately you can’t get away with not writing code, but the amount you
need to write is dramatically reduced. The DataGrid really does simplify
things, and even if it doesn’t provide completely what you want you can
customise it a lot. Not only do you have a great deal of flexibility with
the templating, but you can also sub-class the grid to provide your own
features. The rest of the controls are also extremely rich, and we now have
the IE controls to provide tabs and tree views, which use DHTML in IE to
give a great user experience. They also downgrade gracefully for non IE
users, so you get the best of both worlds.
Also having the ability to write
you own controls and have them behave as part of the architecure is really
flexible.
Top