Wednesday, September 30, 2009

RadGrid optimization webinar tomorrow, Register today

If you're like most developers using the RadControls for ASP.NET AJAX, you're probably using RadGrid, Telerik's flagship grid component for the standards-based web. RadGrid allows you to do some incredible things in web applications without requiring you to write much (or any, in some cases) code. At some point, we've probably all experienced how RadGrid can help you create a ASP.NET page with data display, paging, filtering, grouping, editing, and "pretty styling" in a matter of minutes. We marveled at its ease of use and its ability to make us look like "super" developers to our bosses and clients.

But as any application (and developer) matures, your focus shifts from "create features fast" to "make the website as fast as possible." Fortunately, RadGrid can evolve with you. While the "codeless" approach allows you to maximize productivity, there are tons of techniques that you can employ to maximize performance.
It's exactly that path towards performance optimization that we'll explore in tomorrow's Weekly Webinar. Join me at 11:00 AM Eastern, tomorrow, Thursday, October 1st for the first part of an in-depth look specifically covering RadGrid for ASP.NET AJAX optimization strategies. We'll set the stage for optimizing RadGrid and explore at least five optimization techniques that you can begin using in your projects today for improved performance. It'll be fast, but it'll be fun. See you in the morning!

Monday, September 28, 2009

Houston TechFest 2009 wrap-up, Slides and Code

This past Saturday played host to the 3rd (4th?) annual Houston TechFest, and this year's event was record setting! There were well over 1200 people registered for this year's event, and- if I've heard the reports correctly- almost 1,000 people joined in the day of technology festivities at the University of Houston. That makes this easily the most attended TechFest in Houston to date and it also makes Houston TechFest one of the largest "regional events" in the US!

And thanks to sponsors, like Telerik, the event was once again 100% free to attendees (with a provided lunch)! Obviously, a great place to be if you are a .NET (or Java or whatever else was covered on Saturday) developer. At the Telerik "micro-booth" I had a great time meeting a lot of you and introducing you to the All-in-one .NET Toolbox.
Usually I like to "pre-promote" my attendance at these events on Telerik Watch, but time escaped me last week to update the blogs (all the more reason to follow me on Twitter for "quick updates"). So instead, a quick post-event recap:
I presented three sessions on Saturday: one-and-a-half on Silverlight, one-and-a-half on ASP.NET/Ajax ("havles" because one session talked about using Silverlight in ASP.NET, so it covered both technologies). All of the sessions were well attended and (with the help of some t-shirt bribes) all were very interactive. Big thanks to those of you that attended all of my sessions on Saturday! I don't know if I could even tolerate 4 hours of listening to me...
As promised, I am making the slides and code from the sessions available for everyone here. Find my full session list with accompanying resources below. Until next year, make sure you stay plugged-in to the Houston .NET community through the area DNUGs, like NHDNUG in my neck of The Woods!
What's New in Silverlight 3 [Sept09 update]
Rich Islands of Functionality: Silverlight in ASP.NET
Maximizing ASP.NET Performance with REAL Ajax

Thursday, September 17, 2009

Telerik Watch Minute: Silverlight Q3 2009 Beta and Other News

After another "too busy for my own good"-induced hiatus, I'm back with another Telerik Watch Minute! And this one hearkens back to the "good 'ol days" - short and sweet with a mix of news and demos. In this quick 8-minute update, I'll wrap-up a number of announcements Telerik has made over the last few weeks and do a quick demo highlighting some of the new controls found in the Q3 2009 Beta 1 for the RadControls for Silverlight. What more needs to be said? I guess for your convenience, here are some clickable links for the URLs mentioned in the video: Telerik Extensions for ASP.NET MVC Silverlight Beta Demos Updated Visual Style Builder Guess the Product Video Watch in full size on Telerik TV

Tuesday, September 15, 2009

First Q3 2009 Beta shipping tomorrow, RadControls for XAML (update)

Looking for a way to get over the midweek hump? How about a freshly minted beta from Telerik to play with? Tomorrow, Wednesday Thursday [UPDATE 2: problems solved, beta now available], Telerik will be shipping the first of the Q3 2009 betas. Tomorrow's beta will focus exlusively on previewing some of the new controls and features that will be part of the Q3 2009 RadControls for Silvelright and RadControls for WPF (remember, these suites share the same codebase and API). Among the things that will be featured in the Beta1 release:

  • New Controls (for Silverlight and WPF)
    • TileView - a flexible, animated, lightweight layout container
    • OutlookBar - a new UI component intended to provide functionality similar to (you guessed it) the panel bar in Outlook.
    • RibbonBar - Telerik's first RibbonBar for XAML (SL only)
    • Coverflow - All new and leveraging the 2D perspective engine in Silverlight 3 (SL only)
  • Improvements
    • TabControl - will get support for overflowing and scrolling tabs
    • Scheduler - will get new timeline view and resource grouping
    • Window - will get added to the WPF suite (already exists for Silverlight) (Oops! Window already exists for WPF. What I meant was...)
    • Docking - will get added to the WPF suite (already exists for Silverlight)
And that's just the quick highlights. Stay tuned for more details, previews, and videos once the beta ships. You can already preview some of these controls on the Silverlight and WPF road maps.
This beta will not preview all new functionality destined for the XAML suites in Q3, so you can expect to see more new controls (like RadMap) and features in Beta2 and in the final release. In our aim to incorporate as much feedback as possible in to the Q3 release, though, we're releasing Beta 1 with plenty of time for you to check it out and tell us what you think. Speak now or forever enjoy the Q3 2009 release in peace! (At least until Q1 2010...)
UPDATE: The betas for both WPF and Silverlight are now available for immediate download. Look for the "Beta version available" link under the WPF and Silverlight product downloads.

Austin DNUG Ajax talk wrap-up, Reminder to check your spare tire pressure

After a quick 6-hour round-trip to Austin, I'm back in Houston and ready with some wrap-up thoughts (and slides) from my talk at last night's Austin .NET Users Group meeting. First, let me thank everyone that came-out for the event (including the "jQuery mafia")! I had a great time and I hope you were all able to learn something about Ajax as we weaved our way through JavaScript, jQuery, and ASP.NET AJAX 4.0. If you didn't learn anything and you hated the session...I'm sorry?

Really, I expected the session to crash and burn. Not becuase I wasn't prepared or because I didn't have confidence in the topic, but because I had a "bad omen" on the way to Austin. In the middle of my trek from Houston to Austin, located in nowhere Texas, traveling at 80 MPH (129 kph, for the rest of the world), I blew a tire. Fortunately, my "fancy dancy" car quickly informed me of the tire pressure issue and I was able to put my mechanical skills to good use and change my tire in 15 minutes flat, but something "unexpected" like that just throws-off your A-game as a speaker.
Fortunately, A-game or not, the session went well and I made it back to Houston with all four tires inflated. As a word to the wise (especially since I just got lucky on this point), take this post a chance to check the pressure of your spare tire. You never know when you're going to need it...
Maximizing Real Ajax Performance

Monday, September 14, 2009

Join me at the Austin DNUG tonight!

Are you in the Austin, Texas area? Got plans tonight? Break them.

Very soon I'll be hitting the road and making the trek over from Houston to Austin to present at tonight's Austin .NET User Group meeting. I've been to Austin a few times this year to talk about various Microsoft technologies, but this time I'm focusing on my home turf: Ajax.
Specifically, we'll be talking about how you can (and should) maximize "real" Ajax performance in ASP.NET. "Real Ajax?" you say. Yes, real Ajax. If you're using UpdatePanels and you think you're using Ajax, think again. All will be explained at tonight's DNUG (and again at the Houston TechFest, DevReach, and DevConnections if you miss tonight's presentation).
Things get kicked-off at 5:30 PM at the Microsoft offices in Austin. Check out the ADNUG website for all the details and directions. See you tonight!

Twitter Approved: Telerik TFS tools

While Twitter only represents a small part of the overall developer community, it's still useful as way to get the "pulse" on a specific topic. It's especially interesting to watch the chatter after Telerik makes announcements. Will the modern Caesar "collective" of our time give Telerik a thumbs-up or thumbs-down?

I'm happy to report that the new TFS Work Item Manager and Project Dashboard have been received with thumbs-up. Some live reports from the Twitter front-lines:
  • oising: Free WPF-based TFS work item management tools from telerik (great for codeplex folks!)
  • bjuris: Really slick looking TFS app from Telerik
  • tommynorman: Very cool TFS tool from Telerik. And it is free!
  • damonpayne: Consensus around the office is that the Telerik work item manager is 1,000x better for TFS than the interface built into visual studio
  • CalebJenkins: TFS WorkItem tools from Telerik look sweet!
  • JasonBarile: The new Telerik TFS Workitem Manager and Project Dashboard betas are pretty cool.
  • drub0y: Wow! Telerik released AWESOME work item manager and dashboard apps (WPF based) for TFS... and they're FREE!
  • terziev: Pretty exciting to see the WIM and Dashboard go public. Had been waiting for that for a long time. #telerik #tfs #wim
  • caffeinatedgeek: FREE TFS TOOLS: Check out the Telerik Work Item Manager and Project Dashboard that #Imaginet built for #Telerik
Thanks to everyone for the positive feedback! We hope you enjoy these free tools and find them helpful in your own daily TFS workflows. If you want more help getting started with Telerik's TFS tools, don't miss the new videos on Telerik TV created by Microsoft RD and Imaginets CEO Joel Semeniuk:

Friday, September 11, 2009

Another Telerik product announcement on the horizon

Hot on the heals of our recent Extensions for ASP.NET MVC and TFS productivity application announcements, another major Telerik product announcement is waiting in the wings. We have been hard at work on this new product for a long time now, and we're very excited to introduce it to you and the world...but not yet.

But we don't want to leave you with nothing until the grand reveal. So, we've created a little "guess the product" teaser for you that reveals a few "clues" about what the new product will be. Check out the teaser video now (it's only 30 seconds I said, teaser) above or in full resolution on Telerik TV.
Do you think you know what the announcement will be?
Keep your RSS readers locked-in for the reveal in a few short weeks.

New Sitefinity webinar on Telerik TV, Multi-language & Localization Support

Miss this week's Weekly Webinar? This week was another turn for Sitefinity CMS, and that means another great webinar from Sitefinity Evangelist Gabe Sumner. Gabe covered "Multi-language and Localization Support" for Sitefinity this week, so anyone who has been interested in using Telerik's CMS in a multi-language or international environment should find the content interesting. Topics covered include:

  • Overview of ASP.NET localization
  • Localizing Sitefinity pages
  • Changing localization cultures
  • Localizing the Sitefinity Admin
  • Much more, obviously...
The live webinar recording is already on Telerik TV for your immediate viewing pleasure. You can also find extensive notes on this topic on Sitefinity Watch. Gabe prepare's notes for every webinar and they are a great learning resource if you learn better by following notes vs. watching a video. In fact, if you're a Sitefinity developer (or fan), make sure you're subscribed to Sitefinity Watch for all of the latest and greatest news on that front.

Thursday, September 10, 2009

More free tools from Telerik, TFS Work Item Manager and Dashboard

If you're not following me on Twitter, and you're not following the Blogs, and you've otherwise missed the news on the echochamber we call the Internet, Telerik made another big announcement this week:

Expanding on our growing line of tools for .NET developers, this week Telerik released two new productivity applications for Microsoft's Team Foundation Server: TFS Work Item Manager and TFS Project Dashboard.
Oh, yeah...they're also both free!
These two tools are obviously aimed at .NET shops that are using TFS for managing their software development, so if you're not a TFS shop, no need to read further. If you are a TFS shop, these tools do two things for you:
  1. Work Item Manager - The WIM (as it's known) simplifies the process of working with TFS work items, eliminating the often "clunky" workflow that exists by default. With a single program, you can now easily create work items, query work items, easily sort/filter/analyze items, work with tasks on an innovative "task board" (similar to Scrum Dashboard, but for the desktop), and better visualize all TFS work item data. The tool is designed to be flexible and work with any TFS process template.
  2. Project Dashboard - This tool is all about visualizing TFS data. In fact, it's best used by having some dedicated monitor or TV screen in your development area that just runs the Dashboard where everyone can see it (it can auto disable screen savers and monitor power save settings). It displays things like latest TFS project activity, current iteration progress, project veolicity, and (my personal favorite) who broke the last build (with mug shot)! This is a great tool for managers, too, to easily keep tabs on TFS project status and health.
Telerik has been a TFS shop for quite some time now, and we've been using both of these tools internally for the better part of the last 6 months. They have helped all teams in Telerik be more productive with their TFS management tasks and have helped really unlock the data in TFS, turning it in to helpful information.
It works so well for us, we wanted to share it with you. You can download both of these tools from immediately and start trying them with your TFS projects. What do you have to lose?
Enjoy the tools and stay tuned for more exciting announcements!

Thursday, September 03, 2009

Understanding Telerik Extensions for ASP.NET MVC webinar replay

Did you miss today's Weekly Webinar? If you did, you missed a fun event talking about the new open source Telerik Extensions for ASP.NET MVC. In an hour, we covered everything from the root reason web developers need somthing like ASP.NET MVC to how Telerik's Extensions work in Visual Studio to what you can expect in the next Extensions release. There was even a good Q & A session at the end of today's event, but that's a perk for those people that attend the event live (thanks, by the way, to all of you that joined me today!).

If you want to catch the content on-demand, the recording of today's session is now on Telerik TV (and embeded above), so start it in the background and enjoy some Telerik MVC information. Meanwhile, Telerik is working hard to prepare some great MVC UI components for our Q3 2009 release, so stay tuned to Telerik Watch and the Telerik Blogs for more details very soon!

Wednesday, September 02, 2009

Telerik ASP.NET MVC webinar tomorrow

I mentioned the fact last week that this week's Telerik Weekly Webinar would by hosted by me, but I failed to mention the topic. As the title of this post gives away, this week's topic is going to be the new Telerik Extensions for ASP.NET MVC. This is first time the Extensions will be talked about in a live format, so if you have questions that still are unanswered, this is your chance to come get answers. Tomorrow's webinar will cover everything you need to know about the new open source extensions, including the roots of the project, the basics of working with the Extensions in Visual Studio, the purpose (and future) of the jQueryUI wrappers, and the future beyond CTP1. We'll cover as much as we can in an hour and, as always, spend time at the end answering your questions. The live event kicks-off tomorrow, September 2nd at the now "standard" Weekly Webinar time: 11 AM Eastern. All standard qualifiers apply: Event will be recorded, posted to Telerik TV. Hope to see you in the morning! Register now to get your seat in the Telerik Extensions for ASP.NET MVC webinar

Tuesday, September 01, 2009

Changing RadTicker content with nuthin’ but JavaScript

radticker As the Interwebs mature, and as web developers are pushed to deliver increasingly rich experiences through the browser, there are two technologies a developer can use to deliver to richness: (plug-in based) RIAs and JavaScript. Each technology has it’s pros and cons, but JavaScript has the serious advantage of being the “native” programming language for all Internet connected devices.

The Telerik RadControls for ASP.NET AJAX enable you to deliver standards-based richness using JavaScript, and in most cases you can deliver it without writing any code yourself. But what about those cases when you do want to take more control?

For that, the RadControls provide a very robust client-side API. In fact, most methods and properties available in the server-side API are available under the same (or very similar) names on the client. That means you can increasingly do more of your programming on the client (moving data with web services) and rely less on the “heavy” server-centric model.

That is a long introduction to get to today’s central point: how can you use JavaScript and the RadTicker client-side API to update RadTicker’s items on the fly?

RadTicker is unquestionably one of the “smaller” RadControls (when compared to RadGrid or RadScheduler), but it’s useful nonetheless. Unfortunately, today’s RadTicker doesn’t have a simple client-side API for changing items with JavaScript. But with a little jQuery and an understanding of how RadTicker works, we can easily change RadTicker items on the client and even bind our RadTicker to web service data.

Click to continue reading and see code for RadTicker client-side API

There are a couple of key concepts that you must understand to make this undocumented approach to changing RadTicker content work:

  • RadTickerItems are rendered as SPAN tags in a parent "itemContainer" SPAN. The RadTicker object simply rotates through displaying the content of all child SPANs in the itemContainer. Removing or adding SPANs to this collection allows you to change RadTicker's contents.
  • Related, the RadTicker object looks for specific SPAN IDs when rotating through items. Specifically, each TickerItem SPAN must have the ID "RadTicker1_i2"- where "RadTicker1" is the control's ClientID and "2" is the "index" of the item in the list of TickerItem SPANs.

Expressed in in code, this is how a basic RadTicker with three RadTickerItems renders on the page:

<span id="RadTicker1" style="display:inline-block;height:30px;width:400px;">
  <span id="RadTicker1_itemsContainer" style="display:none;">
      <span id="RadTicker1_i0">This is ticker item 1</span>
      <span id="RadTicker1_i1">Ticker item 2 is this</span>
      <span id="RadTicker1_i2">Finally, Ticker item 3</span>
  <input id="RadTicker1_ClientState" name="RadTicker1_ClientState" type="hidden" />

By writing JavaScript that manipulates RadTicker's SPAN item collection, we can easily update the RadTickerItems completely client-side. For example, we can write code like this to append a new item to the RadTicker:

//Get reference to RadTicker and text input
var ticker = $find('RadTicker1');        
var container = ticker._getChildElement("itemsContainer");

var index = container.childElementCount;

//Create new SPAN - this will be our new Ticker item
var newElement = document.createElement("span");
newElement.setAttribute("id", 'RadTicker1_i'+ index);
newElement.innerHTML = txtEle.value;

//Tell RadTicker to recalculate number of Ticker items
ticker.set_numberOfItems($telerik.getChildrenByTagName(ticker._itemsContainer, "span").length)

Using this same basic pattern, we can easily expand on this example to also replace ticker items and bind ticker items to web service data. Check out a live running example showing this client-side approach for appending, replacing, and web service binding RadTicker.

NOTE: This is an undocumented client-side approach. RadTicker may (and probably will) provide a better API for doing this in the future. Use this approach in the mean time if you need to change RadTicker on the fly. Also note, if you do POST the page, your client-side changes will be lost.

Hopefully this tip will help you fully embrace client-side programming in your rich, standards-based web applications. The fully-commented code for this live demo is available for download below. Enjoy!

Live demo – Using JavaScript to change RadTicker Items

Download RadTicker JavaScript demo source code