Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
How should an experienced .NET & SQL developer go about becoming a BizTalk expert for a project starting in 1 month? How should I spend my limited time to gain some practical skill & knowledge in BizTalk so I can "walk the talk"?
I am self employed, and would not be willing to spend more than USD300. I have the book "Professional BizTalk Server 2006" by Wrox, but have not found it to be a particularly good learning resource (very dry, needs more real world examples).
The BizTalk Virtual Labs in MSDN are a pretty good place to start with. Pluralsight also has several good BizTalk courses, and their online subscription isn't too expensive; would likely be a good option.
I agree with everything written this far. All solid info.
I have a few addons, coming from a fellow freelancer working with BizTalk since 2002:
Unit testing.
It's not easy to do, but check out BizUnit. A Codeplex based toolset written and maintained by Kevin Smith. One of the early BizTalk heroes :-) http://bizunit.codeplex.com/
Deployment / getting things into production
But also keep in mind that none of the day to day development stuff will prepare you for the part of the project where you have to deploy the app and make sure that it is "manageable" by operations. This can be quite complex, and is a topic in it's own right.
Check out Apress Pro BizTalk 2009, it's got a decent (IMO) chapter on this.
The entire development process around BizTalk.
The first two chapters of the same book will give you a good impression on what a BizTalk project is about. Where to use it, and where to not use it, how to organize projects, and name your stuff. Really a good collection of info that you would only get by reading 5-6 years of blogs back in time :-)
And one last thing. Depending on the roles on the project, you might be asked to optimize and tune BizTalk. And if they don't ask you. Make sure that you ask if others have done that, because you have to do it. BizTalk should always be tuned towards what it is supposed to do. Low latency vs high throughput, tuned according to hardware, correct setup and config of network around the SQL boxes, etc etc etc. This can be hairy stuff, and you should be careful not to jump into it before reading up on it all. But it's a subject we as freelancers are often expected to be able to deal with ... so thought I might bring it up.
Example ... BizTalk x64 processes on an x64 box runs really bad out of the box, actually worse than on the x86 processes. The 64 bit processes need to be tuned to really use all the MEM that are availble to them.
Anyways ... a bag of mixed tips and I hope you can use some of them! And good luck! It can be a tough start, but if used right, BizTalk can be a great product/toolset.
And remember .... if it is ugly, or hard, or both. You are doing it wrong. And don't be afraid to dive into .net code, and bolt it onto the BizTalk box. We all do it ... some just won't admit to it :-D
Start with the advice of tomasr.
Then, try and build something as real as possible. Biztalk is the kind of product where everything seems fine when you read the book and follow the examples, then you sit down to do something and you are thinking "what do I do now".
As per Thomas and Shiraz - set up an environment and get your hands dirty. If you haven't done so already, download and install BizTalk Server 2010 Developer Edition
But just to temper your expectation, IMHO expertise in BizTalk (or any other EAI / BPM / ESB product) can take years to accumulate.
It isn't clear whether you are developing for a client with an established BizTalk installation, or if this is the client's first BizTalk deployment. If so, one thing not to be underestimated is that the operational considerations of running a production BizTalk environment (performance, redundancy, reliability, auditing, tracking, monitoring with SCOM etc) are as complex as the development and testing - but understanding of this will be important to 'walk the talk'.
W.r.t. dev, start with some a simple EAI type mapping project, and then work your way through the SDK samples progress to some common messaging patterns (e.g. batching with aggregator), and then move into the BPM type orchestrations. You can probably leave BAM and the BRE for later.
Good luck!
+1 to tomasr for mentioning the virtual labs. Getting hands-on is definitely the way to go, as Shiraz Bhaiji also mentions. Hopefully you're not starting with BizTalk 2006, and can go with the latest: 2010. If that's the case, you can get the Developer Ed. of BizTalk 2010 for free now (see link from nonnb).
I'd also recommend Richard Seroter's book: 'SOA Patterns with BizTalk Server 2009' (available on Amazon.com). There are many ways to do the "wrong" things with BizTalk, and this book does an excellent job of walking through both the how and the why of building BizTalk solutions (with the code samples available from the publisher's site). And yes, it pretty much takes a whole book to go through it all. It's a good (more readable) companion to the Pro BizTalk 20xx series (which is generally better for very specific questions/tasks).
I've been recently tasked with leading an effort to improve our input (and output) validation with OWASP recommendations and PCI compliance in mind. In the process, I'm trying to assess the value of the ESAPI.NET project which does not appear to have seen any activity since the spring of '09 and as it stands is incomplete.
Does anyone have experience using or extending ESAPI.NET v0.2? Is it a good starting place today for building out an infrastructure to address the targeted vulnerabilities?
FYI: I am looking at MS AntiXSS which, of course, only addresses a portion of ESAPI's scope. We already do a good job with SQL injection though there are improvements we need to make.
(If someone wants to create an ESAPI tag, feel free. I don't have the mojo.)
Looks like there were a couple updates last week: http://code.google.com/p/owasp-esapi-dotnet/source/list
You might contact one of the project leads on that list to ask what's going on.
NOTE: 05/26/2012: the last update on that project was dec 4, 2010. Yes, it is dead.
It looks like ESAPI is dead period. There's nobody using it, there are no questions, no forums, no information, nothing. The listservs (what is this, 1996?) are barren too. The documentation is terrible and the samples in the swingset don't work (server that installs is HTTP not HTTPS, and no transactions can be made in HTTP mode).
Seems to be a dead end project.
The project itself seems dead there are however some people who maintain a github copy with several (minor?) additions...
https://github.com/haldiggs/owasp-esapi-dotnet
https://github.com/jstemerdink/owasp-esapi-dotnet
I am undergoing BizTalk server training in my company.
I have almost 6 years of experience in both Microsoft and Open Source like PHP mostly in web applications.
Does it make sense to learn Biztalk server for my future career?
In short Will it help me to improve my profile?
Please advise/suggest.
Learning anything that is an active and vibrant technology will help you and your career. I don't see how this could be qualified as a negative in any aspect.
Even if this particular product goes out of use, it's useful to understand the problems it is intended to solve and the general approach. Don't get too hung-up on details though.
You may want to look at New Features in BizTalk Server 2009. It's not dead yet.
i have been doing BizTalk server development for years and it has most certainly helped me be an early adopter of the SOA / Contract first / Loosley coupled application fad that is sweeping through the industry ... why? well because as BizTalk developers we've always done this stuff. it aint new to us.
so yes, learn it. it can't do you any harm at all!
I have a client running a 1/2 dozen or so orchestrations running on Biztalk 2004 (that I wrote) that they use to exchange cXML documents (mostly too send orders) with their suppliers. It has a ASP.NET 1.1 front end. It uses the SQL adapter to store the parsed cXML. I gets & sends the documents via HTTPS.
My question: Is the upgrade to Biztalk 2006 R2 as straight forward as MS says? Any advice or things I should watch out for?
We finished a similar upgrade last year with little effort other than importing the projects into Visual Studio 2005. The upgrades were without issue. The biggest problem we had was with the various deployment scripts we used. There was a bit of rewriting to work with some of the new features of 2006. We also had to adjust to the multiple-host model for our apps. But all in all, no problems - just more features and API changes on deployment.
Best of luck.
At some point you will want to review the recommended tuning parameters for BizTalk 2006 R2 - I've prepared a list that may be helpful of the relevant resource links
http://intltechventures.blogspot.com/2008/11/2008-11-01-saturday-biztalk-2006-r2.html
Silverlight v2.0 is getting closer and closer to RTM but I have yet to hear any stats as to how many browsers are running Silverlight. If I ask Adobe (by googling "Flash install base") they're only too happy to tell me that 97.7% of browsers are running Flash player 9 or better.
Not that I believe everything I read, but where are these statistics from Microsoft or some other vendor about Silverlight? I'm going to be making a technology choice soon and a little bit of empirical evidence would be an asset at this point...
All you Silverlight developers out there, show me your stats!
Quick Answer: www.riastats.com
This site compares the different RIA plugins using graphical charts and graphs.
It gets its data from small snippets of javascripts running on sites accross the web (approx 400,000 last time I looked)
At the time of this post, Silverlight 2 was sitting at close to 11%.
I would not take this as the end-all, be-all in RIA stats, but it's the best site I've found so far.
If you are developing something for a general audience, I would highly recommend against Silverlight as you immediately cut out Linux users.
I went to watch videos for the Olympics (and I run exclusively Linux), and I couldn't watch the video on their site because they were in Silverlight. On top of that, they actively removed all videos from YouTube, so I had no alternative but to try and scrounge up a Windows boot. This only served to give me a very negative opinion of NBC, and consider them quite amateurish to pick such a restricting technology for something that should be available for everyone.
While Flash has it's problems, it works fine in Linux, so I would say (at this point), it is a much superior technology choice.
If you KNOW your audience is entirely on Windows (maybe Mac).... then you can consider Silverlight with knowing you won't be cutting out part of your audience.
if you're that concerned about locking out potential users, you should be building a low-bandwidth HTML only version of your site anyways...regardless of whether you use Flash or Silverlight.
I struggled with this for a while. Ultimately, I chose to develop my site using Silverlight for the major components. I did a good bit of research, and I reached the following bottom-line conclusion:
If Silverlight fails, it will not
be for lack of installed base. There
are simply too many levers for MS to
pull (windows update, embedding it in
IE8, or even paying highly trafficed
sites to use it.
I will add this from Alexa - microsoft.com has pretty impressive daily reach and it uses SL on the main page. I would also not be surprised at all if Outlook Web Access is moved to Silverlight - thereby turning every single office outlook user who wants to access email from home/other into a roaming SL installer.
Alexa Link comparing microsoft.com/ebay.com/amazon.com
I will add this from ScottGu's blog entry:
In addition to powering the Olympics
experience in the US, Silverlight was
also used in France (by FranceTV), the
Netherlands (by NOS), Russia (by
Sportbox.ru) and Italy (by RAI). In
addition to video quality, a big
reason behind these broadcasters
decision to use Silverlight was the
TCO and streaming cost difference
Silverlight provided. In the August
2008 edition of Web Designer Magazine
(a Dutch publication) a NOS
representative reported that they were
able to serve 100,000 concurrent users
using Silverlight and 40 Windows Media
Servers, whereas it would have
required 270 servers if they had used
Flash Media Servers.
Over the last month we've seen several
major new deployments of Silverlight
for media scenarios. For example: CBS
College Sports is now using
Silverlight to stream NCAA events from
its 170 partner colleges and
university. Blockbuster is replacing
Flash with Silverlight for its
MovieLink application. And Netflix two
weeks ago rolled out its new Instant
Watch service using Silverlight.
At the 2009 Microsoft Professional Developers Conference, Scott Guthrie said that Silverlight was installed on "45% of the world's Internet-connected devices"
http://www.betanews.com/article/PDC-2009-Live-from-the-Day-2-keynote/1258561992 (quote taken from "9:28am PT") entry
This was the weekly poll over on CP a few weeks back. Out of the 1463 developers responding, aprox. 62% had Silverlight installed on at least one system.
So... if you're making a site targeted at Windows developers... and don't mind locking out a third of your potential market...
I haven't been able to get stats. I'd assume they might release some at PDC in late October. If you're building a site which needs to target a non-developer audience who won't want to install another plugin, you might want to wait for Silverlight.
I have done a good amount of testing with Moonlight on Linux, and it works well for sites which use either use Silverlight 1.0 functionality (pretty much 100% supported) or which happen to use the Silverlight 2.0 bits which Moonlight currently supports. The caveat is that some websites explicitly check the user agent and won't offer content if you're not on a "supported" platform. That's poor website coding, not a fault of the Silverlight plugin.
During the keynote # ReMIX UK when ScottGu gave the figure of 1.5 million installs/day I was sat next to Andrew Shorten, one of the Adobe platform evangelists (and also a good chum). He was telling me Adobe have independant evidence of an AVERAGE of 12 million installs a day, with over 40 million downloads.
It would appear 1.5 million is a tiny amount of what it could be.
Well 6 million watched the Olympics on NBC, which used a silverlight player. So at least 6 million. I've never seen exact stats, but you can be pretty certain that it is pretty small still.
Also, there is an implementation of silverlight for linux called moonlight.
I think an interesting stat comes from this site itself. Have a look at how many silverlight questions there are! And how many responses - it's not the most active topic!
I think you'll see a dramatic increase in the Silverlight install base after Silverlight 2.0 officially comes out. Right now it's still in beta. Silverlight 1.0 is out and runs quite well from what I've seen in Moonlight on Linux, but it's much harder to create full-scale applications for than version 2.0. According to Microsoft, Moonlight will be "100% compatible" at release time. See Scott Guthrie's blog (note: 2.0 was called 1.1 at the time).
Nick R, as for the fact that there isn't much Silverlight activity on these forums, I think the biggest reason for that is the very active community on the silverlight.net forums.
Scott Guthrie said (at Remix UK Sept 18 2008) that Silverlight is currently downloaded 1.5 million times per day. Over 115 million downloads since the version 1 release.
The Version 1 installed base will automatically update to version 2 when it is out of beta.
Wow! Scott said the same thing at Mix in February 08 about run rate - 1.5m. So it seems that a daily run rate of 1.5m per day for 6 months would add 270m installs to the installed base. So their numbers are not exactly clear in their meaning.
If one assumes the 115m installed base is correct, then it implies a run rate around 700k per day in the six months since SL2. Of course, many users are upgrading versions B1 to B2 as an example.
Either way, it is gaining some steady installs. It would be nice to see the run rate improve. By 2nd quarter of next year, it should be dramatically higher due to v2 shipment, application/web site adoption, pre-installation on various computers (like HP) and any unannounced distribution mechanisms.
While in general I support the idea of developing a site using silverlight and feel that that, depending on your audience, you should not have too much trouble getting users to download the plug in I would caution you against assuming that Microsoft will release the plugin built into IE or as a part of windows update.
I have had two separate Microsoft Technology Evangelists tell me that the company is reluctant to do that due to Anti-Trust reasons.
This was over a year ago and their strategy has probably evolved since then, but it enough to make me not count on that as an option for greater market penetration.
Don't forget that the Silverlight 2 install base will never include PPC Mac users. It doesn't look like the Moonlight people are targetting them at all, despite the heroic effort to add PIC streaming for Silverlight 1.0 users for the Obama inauguration.
The larger question is how many users will your site lose if implemented in Silverlight. And, it very much depends on your audience.
If you're running a site about the joys of Linux kernel hacking or the virtues of Internet security, you'll probably lose a significant chunk of your audience. If you're running a more mainstream site, my experience is that, sadly, people will download anything they're told to most of the time. That's why spyware and malware work. And, as the NBC/Olympics deal shows, Microsoft will aggressively push its partners to use Silverlight until it's fairly ubiquitous.
I won't be using Silverlight until it's more mature because I do cater to a fair number of Linux users, but I might for a less technically-oriented site.