text:
Lil Scrappy is a lil' jailbird -- the rapper-slash-reality star turned himself in to an ATL jail this morning after cops say he refused to submit to a court-ordered urine test ... TMZ has learned.
We broke the story ... officials say Scrappy violated his probation back in March after a dispute over a pee test. According to court officials, Scrappy tried to turn in a urine sample that was cold to the touch and may have been tampered with ... and when asked to submit another cup, he refused.
The court eventually issued a warrant for his arrest ... and moments ago, the "Love & Hip Hop: Atlanta" star turned himself in.
On his way into the pokey, Scrap was photographed saying farewell to his fiancee Erica Dixon (seen above, holding hands) and his mother, Momma Dee ... who was already sporting a "Free Scrappy" shirt.
Naturally, the VH1 cameras captured the dramatic moment on tape.
Apparently, anyone with the fake name of "Lil" anything is either bad news or should consider a name change. It doesn't seem like its working out for most. LiLs
You do realize that "in that order" was part of the instructions to the t-shirt printer, don't you?
Lil Crappy needs to either stay sober or figure out the thousands of ways to pass a drug test without using someone else's or fake cold piss.. He deserves some time in the slammer.
Lmao! I watched an episode of this show for this first time last night *deep inhale and exhale* Who told him he's a rapper? Before this show I've NEVER heard of him nor ANY of the other 'rappers' on that show. Reality TV is really just that; scripted exaggerations for views, ratings and fast money
Should've peed in a cup like you were told to do. Either way, the face tats (apparent premonitions) will help you adjust to your new surroundings.
If he tried to turn in a fake urine sample, he should be charged with tampering with evidence among other things. If you can't stay clean when yo9u know you have to submit to drug testing then you need to be taught your days of playing the Hip Hop Hero are over.
Free Scrappy? As if he's not guilty? He violated something therefore he was sent to prison. Why should he be freed? It's not like he's going to learn. I hate how people who are obviously guilty of something try and make themselves out to be vitims. Bitch please. He broke the law, let him pay. That goes for EVERYONE!
Tell Scrappy's girlfriend for me that LEGGINGS ARE NOT PANTS, I repeat, LEGGINGS ARE NOT PANTS. When will this fashion trend/ travesty ever end? So sick of seeing tree trunk, cellulite legs stuffed into sausage casings.


text:
The Brick Engine is a fast and simple lo-fi gaming engine. The engine provides a comprehensive API, including dazzling visual features, song playback, and collision detection: everything you need to make games with quickness and ease. The engine provides a straightforward C API and has language bindings for Tcl and Pascal, with support for more languages on the way.
Steel Storm is an old school top down arcade shooter with score oriented competitive gameplay, and is designed for people who like fast paced action and have limited amounts of time to play computer games. The events take place in an alternative universe where you control an advanced hovertank, packed with the most advanced and sophisticated weapons. Your task is to fight with presumed extraterrestrial invaders.
A functional emulator for new IA-32 and Intel64 instructions.

subset: commoncrawl


text:
RSS 2.0 Daily Links
NetVibesThis portal feels similar to PageFlakes in many ways but I love their gallery. They also have a feature whre certain chrome elements only become visible when you hover over the web part.
XtraA New Zealand news portal. I especially liked the content rotator web part at the top of the middle row. Seems like a nice way to allow a user to browse through data.
The Live.com guys are a funky lot. What, with all of that lovely AJAX and champagne swishing around the place why wouldn't they be funky. But do they really understand community or are they simply using a f#$@king huge bag of cash and no requirements to stage the worlds largest internet party?
The funky Live.com guys impress me with how they've managed to integrated the ASP.NET stuff with the stuff that MS Research built for them but they fail to convince me that they have any plan for community other than to create the biggest pile of HTML and Javascript on the internet.
Here's my advice...
Hey funksters, when you host your pals at dinner and you ask them to email you with any feedback - make sure that you take the time to reply when they do email you.
And when you have an uber-cool offering (Gadgets) that nobody really understands, make some sort of effort to help people understand them. Case in point here is that while having 3 different sites that all point to the same outdated copy of "HOW TO" instructions you seem to have single-handedly failed to give any kudos to the hand that feeds you (the ASP.NET team's new Atlas portal with Gadget template was announced last week and yet you still have those outdated tutorials up that were written by some guy on the C++ team).
Close the champagne bottles, answer your emails, and get down and dirty with community and you'll do well!
posted on 3/31/2006 9:34:12 PM ( 0 Comments )
Wow, you miss all the cool news when you head overseas for a week. I was running through Outlook this morning and noticed that we've announced ReadiFridays. Mitch also blogged about this here.
ReadiFridays is a concept that we're really excited about because it will enable us to get out and talk to groups around the country about the really important new technologies in a way that allows plenty of interaction. Derrick is kicking off with the first ReadiFriday which is about Real Time Collaboration and LCS. Read the agenda for that here (you can also register to attend from this page):
You can browse here to learn more about the ReadiFriday concept:
For me the best part of ReadiFridays is that we get to talk about the new technologies that we are the most passionate about and I think that will make them different to anything that has come before.
posted on 3/30/2006 8:42:01 AM ( 0 Comments )
Today was really intense. We finished off WPF by looking at Animation, 3D, Documents and Text formats, and also Interop. My favorite two topics here were definitely the Text formats with the new font rendering - just wait until you see it - and the Metro document stuff. The interop stuff was also very impressive and I'll be interested to see what kind of discussions come up around migration when we show this in Australia. Basically you can host Win32 in WPF and you can host WPF in Win32.
Just prior to and immediately after lunch we looked at Peer-to-peer technologies and then InfoCard. InfoCard is very, very exciting as it is built around open standards. Imagine a federated identity system that uses open standards... Mmmmmmmmm!
The afternoon was spent in what I'd call WCF immersion. We basically go through the architecture of WCF and then look at specific implementation patterns that use the technology and finish off by looking at some of the tooling that supports administration of WCF applications.
At the end of the day I was totally stuffed and so stayed at the hotel for a few beers - as opposed to going out to the local electronic gadget store. Luckily for me Ian Griffiths was equally stuffed and so we were able to have dinner together. Over dinner I stole more information from his brain but shared a few beers, a main course, and many interesting stories - ranging from languages, to blogging, to some wild speculation about where the next major branch of ASP.NET innovation might occur (discounting Atlas of course).
Anyways, tomorrow us WF, Deployment, and RSS. Here's a couple of photo's from today. One is a photo that I took during a break where a few of the guys were eating the interesting ice-creams that we were given and Ian seems to be happy for the opportunity to catch his breath.
The second photo is a close-up of the ice-creams. Notice the flavours: Sweet Corn, Red Bean, Yam, and Durian. Believe me, they were actually very nice :-)
Well earned break!
Interesting Ice-Creams
posted on 3/29/2006 11:34:08 PM ( 0 Comments )
Well, I'm in my hotel at Singapore getting ready for Day 2 of the Vista Touchdown training event and thought that I'd better make some notes about what happened yesterday.
There are about 25 people in our group plus Ian Griffiths who is the teacher, and then Ed and Mary - the two Microsoft DPE guys from Redmond and Angela the Program manager from Asentus in Canada.
Yesterday we started off with a short presentation from Intel which walked us through the various chipsets and how they support the features that will be required for Vista.
After the Intel presentation we got straight into WUX (Windows User Experience) and went through the updated style guidelines for building great Vista applications.
Next up came Search and and we learned about the Search system and the Properties system and saw how to consume those services from within our own applications.
After lunch we went through the new User Account model and saw how the the new least privellage stuff in the Vista security model works.
After that we ran straight into pure presentation stuff. A short session on how to develop Sidebar Gadgets and then 3 sessions of pure WPF content- WPF Overview and 2D, WPF Tools, WPC Databinding. Now I can finally say that I've built some custom UI using Sparkle and written code against it in VS.NET!
Everybody was thoroughly rooted by the end of the day but we persisted on to dinner at a local Chinese restaurant where I managed to have my first ever dish of Jellyfish :-) It was great to really get to spend time with people at dinner and there were lots of really funny jokes and stuff to keept he night entertaining.
Dinner finished at around 8:30 and we caught a bus to the Singapore zoo so that we could go to something that they call the "Night Safari". The Singapore zoo is huge and we basically caught a train that they have there which ran us all around it to show us the animals. The ride lasted for about 45 minutes.
Here's some photo's from dinner last night:
This is the view from the restaurant.
Eating Jellyfish!
The guys on my table at dinner.
posted on 3/29/2006 9:55:18 AM ( 0 Comments )
This exercise will really get the intensity up early in the training session and can be run for anywhere between 10 and 15 minutes.
You have groups of players at each of the hats marked 'A' and 'B'. The ball starts with the players on the 'A' hat and is passed alternately to the next player at the 'B' cone. The emphasis of this drill is for the passing to be very firm and accurate and for the finishing shot to be direct and hard.
posted on 3/26/2006 2:47:27 PM ( 3 Comments )
I'm heading to Singapore on Monday to attend the Vista Touchdown Trainer Event. Throughout the 4 days of training we cover Vista User Experience, WPF, InfoCard, WCF, and WWF. After attending the course I will be a "go to" trainer for the Vista Touchdown program which will start in Australia around the middle of the year. The Touchdown program will be run bu the DE team in Australia so keep an eye on Frank's blog for details.
One of the highlights of the Singapore training trip will be that I get to meet Ian Griffiths (who is the trainer for the week). I've followed Ian's writing for a long time and it will be great to finally meet with him.
posted on 3/25/2006 10:07:20 AM ( 0 Comments )
I've been running the version 8 beta of Messenger for a while now but it seems to crash very regularly whenver I minimize the window - at which point you get one of these:
I must have sent about 30 error reports to Microsoft in the past 30 days but still I'm faced with this "dialog" (Is this what they mean when they say that they want to have a "conversation" with me?).
posted on 3/24/2006 8:05:59 AM ( 0 Comments )
This drill is a good way to start a training session because it get's people moving around a lot and brings the goal keeper into play on every run through.
You have two group of players lined up on the hats labelled 'A' and they run either in a straight line or through hats, dribbling the ball into the circle. When they enter the circle a firm pass is given to a player standing at 'B'. The player receiving the ball initially pushes or flicks the ball at goal.
Eventually, when the goal keeper is warmed-up, the receiving players start to take a firm shot at goal.
posted on 3/23/2006 8:08:17 PM ( 0 Comments )
Here's a couple of tools that I wrote recently while doing a lot of work with XML. The first tool is called XSLTTestHarness and it allows you to create XSLT's and view the output of a transform immediately. Here is a screenshot of XSLTHarness:
[Grab the source code]
The next tool allows me to quickly validate XML against a schema by loading a schema and an XML file and pressing validate. You are notified of any errors in the XML and you can correct the XML within the tool and re-submit it to re-validate it. Here is a screenshot of SchemaValidator:
posted on 3/23/2006 9:21:27 AM ( 2 Comments )
Over the past month I've been using Outlook in a much more aggresive manner to manage the tasks that I do on a daily basis. Since implementing this methodology my daily tasks have been solely driven from the Today screen in Outlook as the following image shows:
Whenever an email arrives in my Inbox one of three things happens to it immediately after I've read it:
1) Delete it2) Drag it into the Tasks folder3) Drag it into the Calendar folder
This highlights the fact that all email is either purely informational - in which case you can delete it after consuming it or that it requires some form of action. The emails that require action are either events (Calendar) or require action (Tasks).
When a task is overdue it is displayed in red font and so you should always update the date of red tasks. It's as important to keep your task clean as it is to keep your email list clean. If you added a task but didn't get it done, re-assign it to another date or delete it.
posted on 3/21/2006 4:05:06 PM ( 0 Comments )
Suppose that you wanted to craft some schema that would match to the following XML:
<MyNames> <Name> <Nickname>Bluey</Nickname> <Nickname>Red</Nickname> <Nickname>Chief</Nickname> <Nickname>Tiger</Nickname> </Name> <Name> <Nickname>Red</Nickname> </Name></MyNames>
This would do the trick:
<?xml version="1.0" encoding="utf-8"?><xs:schema id="Test" targetNamespace="http://new.webservice.namespace" xmlns:my="http://new.webservice.namespace" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:complexType name="NamesType"> <xs:sequence maxOccurs="3"> <xs:element name="Name" type="my:NameType" minOccurs="0" /> </xs:sequence> </xs:complexType> <xs:complexType name="NameType"> <xs:sequence> <xs:element name="Nickname" type="xs:string" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType> <xs:element name="MyNames" type="my:NamesType" /></xs:schema>
<?xml version="1.0" encoding="utf-8"?><xs:schema id="Test" targetNamespace="http://new.webservice.namespace" xmlns:my="http://new.webservice.namespace" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="NamesType"> <xs:sequence maxOccurs="3"> <xs:element name="Name" type="my:NameType" minOccurs="0" /> </xs:sequence> </xs:complexType>
<xs:complexType name="NameType"> <xs:sequence> <xs:element name="Nickname" type="xs:string" maxOccurs="unbounded" /> </xs:sequence> </xs:complexType>
<xs:element name="MyNames" type="my:NamesType" /></xs:schema>
However when you run that through XSD it creates the following class definition:
public partial class NamesType { private string[][] nameField; /// <remarks/> [System.Xml.Serialization.XmlArrayItemAttribute("Nickname", typeof(string), IsNullable=false)] public string[][] Name { get { return this.nameField; } set { this.nameField = value; } }}
That's interesting. A multi-dimensional array of strings names Name. Not quite what I'd expect to see. I would have expected that the NamesType class would have an array of complex types called NameType and that the NameType class would have an array of strings.
Anyways, I came across this behavior when I received an error by adding a Web Reference to a valid WSDL file that had been created in XML Spy. The error occurs when you have operations on a WSDL file that return these types. The operations deserialize correctly by returning an array of strings for the Nickname element whereas the generated types contain a string[][].
There's some documentation about this behavior here:
posted on 3/21/2006 11:03:56 AM ( 0 Comments )
How many cool websites do you visit on any given day? I'll bet that there must be some amazing sites and web pages that people visit on any given day that just go un-remembered and un-shared. Not any more! Today I added a new feature to my blog called "Daily Links" which allows me to arbitrarily add cool or interesting links via an administrative web part and have them appear on an RSS feed. You can subscribe to the feed here:
This idea was originally an SUBV2 feature suggestion by Howard Van Rooijen as you can see in this comment: http://markitup.com/Posts/Post.aspx?postId=622ac040-d459-40dc-a66d-5478bbe2db8a#94085f1b-853d-4d1e-b1be-37f2ecc23448
I think that it would be great if this took off and we all started blogging our most interesting "visited links"; I think that this will turn up some real gems!
Thanks Howard :-)
posted on 3/20/2006 5:37:38 PM ( 5 Comments )
How many of the pages in your web application execute in over 1 second? How many execute in over 3? Do you know? And for the pages that are taking longer than 3 seconds, what's the cause and how often does it occur?
Last week I posted an intro article on the topic of instrumenting code and discussed some of the issues as I see them. The point of writing about this topic is that I want to arrive at some simple prescriptive guidance for when and how to use Health Monitoring and Instrumentation in applications. In this post I want to mention some of things that should be monitored for health.
Unlike standard tracing, the purpose of health monitoring is exactly that - to determine the health of code so that we can be proactive in fixing code before problems occur. Here is a list of some of the things that are good candidates for Health Monitoring code:
Calls to External Systems Whether it is a connection to a database or a web service call to an external site, you should monitor these activities and raise health alerts when the time to perform the action exceeds a certain limit. For example, if you make a web service call as a part of the execution of a page you don't really want to get an alert for every call that is made and you don't want to wait until that connection starts timing out. Instead you can write some health monitoring code that notifies you whenever the time that it takes to make the web service call rises beyond a certain limit - say 1 second. Or you could write the code so that it was even smarter and informs you whenever the time that it takes to call that resource is "growing".
Here is a sample of code that raises a custom health event named ExternalCallWebEvent whenever the time to load an XmlDocument from an external resource exceeds a hard-coded limit of 2 seconds:
Stopwatch watch = new Stopwatch();XmlDocument tmp = new XmlDocument(); watch.Start();tmp.Load(this.OpmlPath);watch.Stop(); #region Health Monitoring Code if (watch.ElapsedMilliseconds >= 2000) { ExternalCallWebEvent e = new ExternalCallWebEvent( string.Format( "The call to {0} took {1} milliseconds to complete.", this.OpmlPath, watch.ElapsedMilliseconds ), this, WebEventCodes.WebExtendedBase + 1 ); e.Raise(); } #endregion return tmp.OuterXml;
Stopwatch watch = new Stopwatch();XmlDocument tmp = new XmlDocument();
#region Health Monitoring Code
if (watch.ElapsedMilliseconds >= 2000) { ExternalCallWebEvent e = new ExternalCallWebEvent( string.Format( "The call to {0} took {1} milliseconds to complete.", this.OpmlPath, watch.ElapsedMilliseconds ), this, WebEventCodes.WebExtendedBase + 1 );
return tmp.OuterXml;
Application Restarts
Another symptom of failing health is when your application see's a large number of application re-starts. Aside from anything else, application restarts can indicate things such as thread pool starvation and also denial of service attacks. Typically you will want to receive batched health alerts when your application has many restarts in a short space of time. The following configuration entry will raise an alert that will be displayed in the Event Log whenever event 1001 (ApplicationStart) has 5 or more instances within a minute.
<healthMonitoring> <rules> <add name="Check For DOS" eventName="Application Start" provider="EventLogProvider" profile="Critical" minInstances="5" maxLimit="Infinite" minInterval="00:01:00" custom="" /> </rules> <eventMappings> <add name="Application Start" type="System.Web.Management.WebApplicationLifetimeEvent,System.Web,Version=188.8.131.52,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a" startEventCode="1001" endEventCode="1001" /> </eventMappings></healthMonitoring>
Security Audit Warnings Another thing to keep an eye out for are security warnings. If someone enters a bad username/password attempt then that's no biggie, but get 10 of those in a minute and you can be sure that something's going on. The following article provides some information about health monitoring the security of your application.
posted on 3/20/2006 12:31:23 PM ( 0 Comments )
Congratulations G and E!
posted on 3/18/2006 4:36:11 PM ( 2 Comments )
A cool feature that has been added in ASP.NET 2.0 is the App_Offline.htm file. Scott Guthrie blogged about it a while ago when he had this to say:
Basically, if you place a file with this name in the root of a web application directory, ASP.NET 2.0 will shut-down the application, unload the application domain from the server, and stop processing any new incoming requests for that application. ASP.NET will also then respond to all requests for dynamic pages in the application by sending back the content of the app_offline.htm file (for example: you might want to have a "site under construction" or "down for maintenance" message).
For my blog I have an HTML file named App_Offline.RENAMETO_htm that contains the page that I want people to see whenever I'm updating my website - such as when I'm uploading a new set of assemblies. Before I start the FTP process of the new files I simply rename that file to App_Offline.htm. Once the upload process has completed I then rename the file back to App_Offline.RENAMETO_htm.
The content that is displayed on my App_Offline.htm file basically tells the viewer about App_Offline.htm and explains that I'm probably updating my site right now :-)
posted on 3/18/2006 12:56:59 PM ( 4 Comments )
One of the killer features on the new Live.com web portal is that all of the web parts offer this great "Read More" feature.
With this feature you can hover the mouse over the "[more]" link for an item and have the details of the item displayed in a pop-up panel. In the case of blog posts or news articles you get the additional text and in the case of something like the Flickr web part you get a larger version of the image.
Very nice as it allows you to consume lots of information without ever having to leave the page. I find that it also allows you to make pages much busier with links - such as by adding dozens of news web parts - and then simply scanning over them for interesting news titles and then hovering over those interesting titles to get the content.
posted on 3/16/2006 7:37:59 AM ( 0 Comments )
Just like SOA before it, Web 2.0 can mean pretty much anything you "feel" it to mean. For me it means: Simple, Commercial, and Shiny.
OK, if you are reading this there's a fair chance that you're a programmer right. Then guess what, even though you say you "Get Web 2.0", you probably don't. In fact there's loads of people who tell us that they "get" Web 2.0 - and probably about 40 or so who really do.
Lately I've seen new blogs and podcasts springing up all over the place espousing their passion and knowledge for Web 2.0. Which is fine... kinda. I guess that I think that there's probably more "feel" that "grok" in there. In other words, when you hear people say: "I really get Web 2.0", just keep in mind that what they probably mean is: "I really get a stiffy from Web 2.0".
If you doubt it, ask them to point you at their most successful Web 2.0 "commercial" ventures :-)
posted on 3/15/2006 10:37:03 PM ( 1 Comments )
Update: the new SUBV2 release is available here.
I've been running a new build of SUB for about a week now and things look pretty good so I'm planning to do a build and release it on ProjectDistributor later tonight. This build has a bunch of performance fixes that should see your install go from "groggy" to "zippy" in one easy hit.
The other fixes in this build are:
I've also included a new web part in this release:
Quote of the Day Web Part: Simply add a bunch of quotes to this web part and it will randomly display a new quote each day on your site.
Here's a screenshot of the QOTD web part:
posted on 3/15/2006 9:07:22 PM ( 3 Comments )
Chapter 9 is all about looking at various ways to manage a web portal an my favourite sample from that chapter is a feature that the ASP.NET team showed off at PDC in LA last year. In that session Mike Harder, who is a Software Design Engineer on the ASP.NET team for the web parts feature, showed us how to create a page that displays all of the web parts for another page and then allows individual web parts to be deleted from the personalization data for that page. To do this, we dynamically execute the target page "silently" and then handle the PreInit event off of it and then grab the web parts from the WebPartManager instance on the page.
To dynamically execute another page and attach an event handler we use the following snippet of code:
Page page = (Page)BuildManager.CreateInstanceFromVirtualPath(path, typeof(Page)); WebPartCollection webParts = null; page.PreLoad += delegate { webParts = WebPartManager. GetCurrentWebPartManager(page).WebParts; }; ExecutePage(page, path, context);
Page page = (Page)BuildManager.CreateInstanceFromVirtualPath(path, typeof(Page));
WebPartCollection webParts = null;
page.PreLoad += delegate { webParts = WebPartManager. GetCurrentWebPartManager(page).WebParts; };
ExecutePage(page, path, context);
Here we instantiate a page dynamically by using CreateInstanceFromVirtualPath method of the BuildManager class. This method takes the path of the ASP page that we wish to create an instance of and also a type argument which indicates what the base type for the page class is.
At this point you might be wondering why you would want to create a separate page to delete web parts. Consider what would happen if you added a web part to your page and that web part had some logic error which caused it to throw an exception from within its RenderContents method. The answer to this is that the web part would get added to the personalization data for the page and then that page would not be able to be displayed again - because of the exception that is thrown from the web part. This means that you cannot access the page to remove that web part and fix the problem. Now consider what would happen if that happened on the home page of a public internet site that you have just deployed!
Now I'm sure that you can see why it's important to provide a separate page so that we can recover from just such a case.
In our example, the helper method for executing the page looks is shown in the following snippet:
private static void ExecutePage(Page page, string path, HttpContext context) { string originalPath = context.Request.Path; context.RewritePath(path); try { context.Server.Execute(page, TextWriter.Null, false); } catch {} context.RewritePath(originalPath);}
private static void ExecutePage(Page page, string path, HttpContext context) { string originalPath = context.Request.Path; context.RewritePath(path);
try { context.Server.Execute(page, TextWriter.Null, false); } catch {}
You can see here that a null TextWriter is passed to the Execute method so that the page is not rendered anywhere. Once the page is executed, our anonymous method in the first snippet will get invoked and the web parts will be popped-off into our local webParts variable. This variable can then be bound to a GridView and displayed to the user. When the user chooses which part they would like to remove we run through a similar set of steps to when we loaded the web parts initially only our anonymous method uses the DeleteWebPart method on the WebPartManager to remove that web part like so:
page.PreLoad += delegate { WebPartManager webPartManager = WebPartManager.GetCurrentWebPartManager(page); WebPart webPart = webPartManager.WebParts[ID]; webPartManager.DeleteWebPart(webPart);};
page.PreLoad += delegate {
WebPartManager webPartManager = WebPartManager.GetCurrentWebPartManager(page);
WebPart webPart = webPartManager.WebParts[ID]; webPartManager.DeleteWebPart(webPart);};
In the book I go into more depth and there's also a working example of how to hook this up as the standard handling mechanism for errors that occur in a portal application so that users are given an immediate self-service option for fixing their broken page.
Thanks Mike, now I know that I won't get a call from the boss at midnight asking me to fix his broken portal page!
posted on 3/13/2006 9:30:01 PM ( 0 Comments )
Answer me this: How will Ajax sites perform on my new JAMin mobile device?
posted on 3/13/2006 8:42:56 PM ( 0 Comments )
In my last blog post I mentioned that I've moved to having Live.com as my home portal and today I thought that I'd talk about how I can use the features of the Live.com portal to light up all areas of my browsing world.
The Live.com portal allows you to easily create new pages on the fly and each of these "pages" appears as a tab within the portal itself. The idea behind this is that you create a page and then you can add web parts to that page to show you a specific set of information. In my portal I have created the following pages:
Here is a picture of the tabs being displayed in the Live.com portal page:
The Home page contains my Mail web part, a Flickr web part and also displays the weather and time information for a set of cities that I'm interested in. For example, I often IM with the Development Editor on my web portal book and so it's useful to have her timezone and weather displayed while I'm chatting with her.
The News and Sport page is a dump of news, finance, and sporting information from around the globe so that I can easily scan it to look for stories that might be of interest to me.
The Blogs page allows me to easily keep up to date with the latest feeds from a very small subset of Thought Leaders on topics that are relevant to me. Currently I have Frank Arrigo's blog listed on this page so that I can keep abreast of the latest news from the Australian developer market. I have Scoble's blog listed there so that I can keep up to date with the latest buzz and gossip that is relevant to the industry. Finally I have the GadgetNews feed and the Live.com feed listed there so that I know when new Gadgets or Features are being added to the site.
The last page - "My Custom Feeds" - is similar to the blogs page but these feeds are based on custom search queries that I have created to alert me when new information about my projects appears on the web. Currently I have two web parts on this page - one web part runs a search for information relating to BlogML while the other web part searches for information about SUBV2.
All-in-all I'm enjoying using the Live.com portal to light up my world and keep me in tune with the information that I need to be effective in my role.
posted on 3/13/2006 8:16:27 PM ( 13 Comments )
I'm just finishing off Chapter 9 in my book which is a chapter on how to manage a web portal and in that chapter I take some time to look at the PersonalizationAdministration class to show what it has to offer. The PersonaliztionAdministration class has static properties and methods that allow us to query personalization data. For example, using this class you can run a query to view all stale personalization data - that is personalization data that has not been accessed for longer than a given time. You can also run queries that allow you to view all personalization data for a given user or users. Most of the queries return a PersonalizationStateInfoCollection which represents the personalization data that matches your query. Here's an example of a query that is used to return all personalization data that is older than 200 days:
DateTime inactiveSince = DateTime.Now.AddDays(-200) ; PersonalizationStateInfoCollection inactiveUserResult = PersonalizationAdministration.GetAllInactiveUserState(inactiveSince) ;
DateTime inactiveSince = DateTime.Now.AddDays(-200) ;
PersonalizationStateInfoCollection inactiveUserResult = PersonalizationAdministration.GetAllInactiveUserState(inactiveSince) ;
Running this type of query would be useful for a large, highly active site that did not wish to keep personalization data for users who no longer used the site. In such a case the site administrator could run this query and then make decisions about which users to delete the personalization information for. To assist with such a task the administrator could write another query which allowed them to view all personalization data for a specific user before they deleted the data for that user. The following picture shows what these queries might look like when presented as a couple of administration web parts.
The code for finding the personalization data for a specific user looks like this:
PersonalizationStateInfoCollection userResult = PersonalizationAdministration.FindUserState(null, UserNameTextBox.Text);
When the administrator has decided to delete the personalization data for a specific user they can simply call the ResetUserState method of the PersonalizationAdministration class like so ;
PersonalizationAdministration.ResetUserState(null, UserNameTextBox.Text);
Finally, the PersonalizationStateInfoCollection class contains a collection of PersonalizationStateInfo instances. The PersonalizationStateInfo class is an abstract class and so each of the items will actually be an instance of either the UserPersonalizationStateInfo class or the SharedPersonalizationStateInfo class. The PersonalizationStateInfo class itself only contains 3 properties that are useful to us which are: LastUpdatedDate, Path, and Size. When looping through a collection of personalization data from a query such as GetAllInactiveUserState we must therefore cast each item to a UserPersonalizationStateInfo object before we are able to get at the Username of the user that is associated with the personalization data. The following code snippet shows an example of the properties that can be found on a PersonalizationStateInfo item:
inactiveUserResult[0].LastUpdatedDate; inactiveUserResult[0].Path ;inactiveUserResult[0].Size ; ((UserPersonalizationStateInfo)inactiveUserResult[0]).Username;((UserPersonalizationStateInfo)inactiveUserResult[0]).LastActivityDate;
inactiveUserResult[0].LastUpdatedDate; inactiveUserResult[0].Path ;inactiveUserResult[0].Size ;
posted on 3/13/2006 7:31:41 AM ( 6 Comments )
Last week in Sydney I asked a few people at the Live.com event about how they consume the web because I wanted to see whether people use their web browser for more than search. My argument was that I only ever use web pages when I'm searching for stuff and that because I mostly used Google for search I had Google/ig as my portal. This made sense to me because if I'm going to the web to search for stuff then that's where I wanted to be but I could see current news, events, weather, and read blogs from that page by adding web parts to it. Frank shot me down by telling me that he starts his day by opening up a bunch of web pages to news, sport, weather, blogs and such and browsing through them like a digital version of a newspaper. Frank will like the feature that I'm about to talk about here...
I've really wanted to give MSNSearch a chance but it's a catch-22 because I won't trust MSNSearch until I use it and I won't use it while I don't trust it. This problem becomes even greater for me now that Live.com is "lit up" because quite frankly it's easily the best portal on the market and so I'm only robbing myself by using the Google portal just because I use their search.
Thankfully IE7 now allows you to have multiple Home pages and so when I start up my browser I can get the Live.com portal as my main home page and keep the Google window bubbling away in the background until I'm confident enough to sever that link altogether.
Having used MSNSearch as my primary search for a few days now I must say that I'm liking it - and the DHTML "infinite scrollbar" on the Live.com search results page makes it a cinch to page through search results in an Ajaxian way.
posted on 3/12/2006 10:57:02 AM ( 1 Comments )
Since I started blogging a couple of years ago my blog has had the following tagline's:
With the upcoming release of my book about creating web portals I'm hoping to align myself much more closely to things such as Vista, Web Portals, and personalization in software and the topic that cuts across these slices and which also has attention is Live.com.
The phrase that is associated with Live.com is "Light up" and you'll hear it a lot over the coming months. It is a term that is used to indicate that something has become active or engaged - such as an interaction between two participants or a web part which performs some gesture upon activation. It is even used to refer to the Live.com site itself. When Microsoft say: "We're planning to light up Live.com" they are saying that they will "activate the site" or "release it".
Over the next 12 months I'm planning to grow the readership of my blog through much more planned release of content that is targetted around Web 2.0. In other words, I'm going to "Light Up" my blog. Because of this new "focus" I want to create a new tagline for this blog that reflects what I'm doing and so far I have the following ideas:
I think that I prefer the first one because it infers that there is some for of engagement in the blogging activity between me and you - and that's very much how I'd like it to be.
Which tagline do you prefer?
posted on 3/11/2006 9:12:37 AM ( 4 Comments )
I was fortunate enough to see a preview of the Live.com platform last night in Sydney. At the event I saw the Live applications and heard about the future of the platform. I have to say that I walked away with a head full of ideas.
My main interest in Live.com centers around gadgets and so I'm very interested to see whether "Live" exposes an open set of services that could act as a bedrock for building rich Web 2.0 mash-up style applications. My hope is that at some point developers will be able to tap in to the Live services to create gadgets that are highly personalized and which target the end-user.
I haven't done a lot of research into gadgets at this stage but I'm very keen to learn more about where Microsoft is heading with this stuff. If the Live services are open then this is going to be an amazing time to be a component builder in the web apps space.
posted on 3/10/2006 7:14:50 PM ( 0 Comments )
Chris blogs about his experience of being able to seamlessly migrate his blog content from Community Server to SUB to SubText. This is great!
Chris's experience reads like a core use-case for BlogML. If more bloglords adopted BlogML in their products stories such as this would be common-place and users would finally be free to try out as many different blogging platforms as often as they liked.
posted on 3/8/2006 1:30:00 PM ( 1 Comments )
A little while ago Chris Frazier wrote this post about Byte Order Marks in the payload of an XML response. All that I can say is that I'm extremely grateful for that post because it has saved me on a couple of occassions now. The first time that it saved me was when Mitch and I were doing some work at a client site last year and we were having trouble reading the XML that was being returned from the TFS web services. I encountered this problem again the other day while consuming Grant's Readify Bloggers OPML file. If you download the OPML file and look at the first character you will see that it is not a '<' character.
As Chris points out in his post, the way to fix this is to check the first character of the XML payload before reading it in and if it's not a '<' character then simply strip the Byte Order Mark off like so:
//...the DeserializeResponse method that accepts a streamStreamReader sr = new StreamReader(stm); string content = sr.ReadToEnd(); if(content.Trim().Length > 0 && content[0] != '<'){ content = content.Substring(1);} StringReader str = new StringReader(content); try{ xdoc.Load(str);}
//...the DeserializeResponse method that accepts a streamStreamReader sr = new StreamReader(stm);
string content = sr.ReadToEnd();
if(content.Trim().Length > 0 && content[0] != '<'){ content = content.Substring(1);}
StringReader str = new StringReader(content);
try{ xdoc.Load(str);}
posted on 3/8/2006 6:03:03 AM ( 3 Comments )
I recently started a new consulting engagement here in Canberra to do some hard-core work with VSTO. It's been pretty cool and the guys have been great to work with but unfortunately they have some pretty sloppy induction processes. For example, can you guess how I discovered that the bathrooms with the showers are Uni-Sex areas? :-)
posted on 3/7/2006 5:45:54 PM ( 3 Comments )
As Brendan pointed out in his recent post, I got pretty slack with implementing the UrlFormatter class in SUB. Basically, every data type in SUB inherits from a base class known as "ApplicationDataObject" which gives each item enough properties to be displayed within an RSS feed. One of the classes that I implemented quite early on in the piece was the UrlFormatter whose job it was to take an instance of a generic ApplicationDataObject class and to produce a suitable URL from it. Internally the code looks something like this:
public class UrlFormatter { public static string FormatUri(ApplicationDataObject item) { if (item is Post) { return string.Format("{0}Posts/Post.aspx?postId={1}", Globals.UrlStartPath, item.Id); }else if( ... ) { ... }else{ return Globals.UrlStartPath; } }}
Here we can see that the UrlFormatter is passed an ApplicationDataObject and then uses an if statement to determine the type of the object and then returns the URL for that particular instance.
Over the weekend I went through the SUB source code and identified several of the Repeater that Brendan mentioned in his post that were using independent logic for displaying the URL's for posts. What I ended up doing was to remove the ItemTemplate code from each of the main display Repeaters that are used to display Posts on the Home Page, the Posts By Category page, and the Posts By Month Page and I put the HTML that was within those ItemTemplates into a User Control and I load that as the ItemTemplate of the Repeaters. The code for the User Control looks like this:
<div class="post"> <h5><a href='<%# UrlFormatter.FormatUri((Post) ((RepeaterItem)Container).DataItem) %>'> <%# ((Post)((RepeaterItem)Container).DataItem).DisplayName%></a></h5> <p><asp:literal runat="server" text='<%# ((Post) ((RepeaterItem)Container).DataItem).Description %>' id="Label4"/></p> <p class="postfoot">posted on <%# ((Post)((RepeaterItem)Container).DataItem).DateCreated.ToString()%> ( <a href="<%# UrlFormatter.FormatUri((Post) ((RepeaterItem)Container).DataItem) %>#Feedback"> <%# ((Post)((RepeaterItem)Container).DataItem).CommentCount.ToString()%> Comments</a> ) </p></div>
You can see that the Container must now be cast to a RepeaterItem before it is cast to a Post. The code in the hosting Repeaters now looks like this:
<asp:repeater id="PostList" runat="server" enableviewstate="False"> <separatortemplate> <hr /> </separatortemplate></asp:repeater>
… and I simply put in some code to load the template at runtime:
protected override void OnInit(EventArgs e) { base.OnInit(e); this.PostList.ItemTemplate = Page.LoadTemplate("~/UserControls/PostItemTemplate.ascx");}
Now I can easily implement Brendan's cool idea for using the FormatUri function of the UrlFormatter as an abstraction for implementing friendly formatted Url's for posts in SUB.
posted on 3/7/2006 5:42:58 PM ( 1 Comments )
The other day I posted a plea for subscribers of my blog to point the subscription for my feed to my feedburner link but today I'm asking that you change it back to the original Url of:
The reason for this is that in a comment to that post, Rick Klau who is the VP of Business Development with Feedburner mentioned that I'd be better off having people continue to point at my Rss.ashx page and performing a silent re-direct to the Feedburner URL under the covers. This makes a lot of sense because it means that I'm not constantly asking people to change their link - like I am now :-)
To implement the solution I created a special URL which still exposes my RSS feed and I point the Feedburner bot at that link. The link for the bot is: http://MarkItUp.com/RssForBots.ashx. Notice that if you browse to my http://MarkItUp.com/Rss.ashx page that you will end up at the Feedburner page but it you point at the http://MarkItUp.com/RssForBots.ashx URL you will see my raw feed.
Anyways, as with all simple programming tasks things quickly went south and it resulted in a major operation. My initial thought was that I could simply use the UrlMappings service that comes with ASP.NET and re-target my RSS feed like so:
<urlMappings> <add url="~/Rss.ashx" mappedUrl="http://feeds.Feedburner.com/MarkItUp" /></urlMappings>
Unfortunately it turns out that the UrlMappings service will not serve up URL's that are external to your site. Damn! I'm starting to hate that darned UrlMappings thing… me and it just don't hit it off.
So what I decided to do was to create my own UrlMappings service instead. I iplemented my service as an HttpHandler that would read in a Mappings.xml file and handle re-directions to external URL's.
First I created a mappings file named UrlMappings.xml which lives in ~/App_Data and which looks like this:
<UrlMappings> <UrlMapping url="~/Rss.ashx" mappedUrl="http://feeds.feedburner.com/MarkItUp"></UrlMapping></UrlMappings>
Next, because my feed is now served up at two locations I deleted the Rss.ashx physical file and moved it into the ~/App_Code directory and configured a couple of UrlMappings using that silly ASP.NET UrlMapping service like so:
<urlMappings> <add url="~/Rss.ashx" mappedUrl="Redirector.ashx" /></urlMappings>
In this case, Redirector.ashx is the location of the custom HttpHandler that I wrote to manage my own UrlMappings file. You can see that from the HttpHandler mappings that I created to handle the requests:
<httpHandlers> <add verb="GET,POST" path="Rss.ashx" type="MarkItUp.SingleUserBlog.Web.RssFeedHandler" /> <add verb="GET,POST" path="RssForBots.ashx" type="MarkItUp.SingleUserBlog.Web.RssFeedHandler" /> <add verb="GET,POST" path="Redirector.ashx" type="MarkItUp.SingleUserBlog.Web.Redirector" /></httpHandlers>
So now when a user browses to my Rss.ashx page they are redirected to the Redirector which reads my UrlMappings file and sends the request off to Feedburner. Of course the upside of all this is that SUB now has a dinky little redirector that can map out to external links - whoop-dee-doo!
posted on 3/6/2006 8:47:40 PM ( 3 Comments )
I mentioned recently that the performance of SUB has been quite poor and I've started diagnosing the cause of this by instrumenting my code to see what's going on. I also wrote an introductory article on code instrumentation which can be found here:
I'll talk more about the specifics of the instrumentation and diagnostics in a follow-up post when I have things totally sorted although the changes that I've made so far have improved things quite dramatically.
While going through the SUB file handling code I've been taking the time to check some of my coding patterns to ensure that operations such as caching and how I'm handling resource locking is all sweet. Because caching plays such a large and important role within SUB I decided that I should check my caching pattern just to be sure that things are cool there and that the pattern is solid. Currently my caching pattern looks something like this:
Data GetData( dataID ) { string key = "GetData" + dataID ; if (Cache[key] == null) { Data item = GotoDatabaseAndFetchData( dataID ) ; CacheHelper.Insert(key, item); } return HttpRuntime.Cache[key] as Data; }
Data GetData( dataID ) {
string key = "GetData" + dataID ;
if (Cache[key] == null) { Data item = GotoDatabaseAndFetchData( dataID ) ; CacheHelper.Insert(key, item); }
return HttpRuntime.Cache[key] as Data; }
To check my pattern I headed off to Steve Smith's blog since he is the caching expert that I know best. While browsing Steve's blog I found the exact post that I was after here:
As Steve pointed the correct pattern to use is this:
Data GetData( dataID ) { string key = "GetData" + dataID ; Data item = Cache[key] as Data ; if (item == null) { item = GotoDatabaseAndFetchData( dataID ) ; CacheHelper.Insert(key, item); } return item; }
string key = "GetData" + dataID ; Data item = Cache[key] as Data ;
if (item == null) { item = GotoDatabaseAndFetchData( dataID ) ; CacheHelper.Insert(key, item); }
return item; }
Notice that in Steve's pattern a local variable is populated and then inserted into the Cache but that it is the variable that is returned from the method. In my original code I was returning the value held in the Cache directly from the method. As Steve notes in a recent email, on a busy site where you have sufficient load/memory pressure the code in my original pattern can cause inconsistent behavior because the item can actually be removed from the Cache in-between adding the item to the Cache and returning it at the end of the method.
Thanks Steve!
posted on 3/6/2006 5:15:14 PM ( 2 Comments )
In this post Brendan Kowitz talks about how he managed to implement friendly URL's for SUB - very cool! He also pointed out that even though I had a FormatURL method that was initially created to do all of URL formatting in the application that I hadn't done a very good job at using it - too true! My mistake there I'm afraid.
There should be another release of SUB coming out in the next fortnight which will have some bug fixes and I'll try to include the cool stuff that Brendan has done for formatting friendly URL's into the core source code.
posted on 3/5/2006 9:08:06 PM ( 0 Comments )
Recently I noticed that my blog was running really slowly even though SUB was running at a fine clip on my own development machine. In addition to the general application slowness, Mitch and I discovered that when we went to import the BlogML for his NotGartner site that we experienced some unhandled exceptions relating to file locks on the XML index files.
My suspicion is that as the size of the XML files gets larger that the time to acquire and release file locks is taking longer to the point where my logic becomes fragile and unstable. I'm going to have to revisit the FileHelpers class and refactor it to ensure that files are handled in a much more error resistant manner. FileHelpers has always been in need of a good refactoring and some Health Monitoring code so taking the time to go through that code should do it the world of good I suspect.
During the refactoring I'm going to normalize the architecture of the file writing api's so that I have a more normalized structure of a business logic wrapper which calls through to a data storage engine. Architecture diagrams and details pending :-)
NOTE: If you are suffering from these performance issues then I can advise you to check out Brendan Kowitz's new SQL Lite Data Provider for SUB. This should speed things up a whole heaping lot:
posted on 3/5/2006 8:24:53 PM ( 0 Comments )
As ASP.NET developers we are all familiar with the concept of writing trace statements to the Trace log so that we can use that information later at runtime to assist us with diagnosing problems in our applications. For example, writing exception messages to the Trace log can help understand why things are not working as we expect - especially when our code is layered and finding the root cause of small inconsistencies may not be easy to detect by simply viewing the output of a web page.
As for prescriptive guidance about where to place tracing statements within an application's code, the obvious strategic targets that are most likely to cause problems at runtime should be targeted so that we can work out how to diagnose those errors when they occur. At a minimum I would suggest instrumenting the following code:
Writing trace statements is useful for diagnosing problems that already exist in our applications but wouldn't it be nice to be alerted to potential problems before they actually occur so that we can do something to remedy them before they start causing our application to fail. In this way we can be proactive to potential problems rather than always being reactive. The activity of and detecting certain types of issues before they become problems is known as "Health Monitoring" and involves keeping track of performance counters in our code and viewing these vital statistics periodically to keep a look-out for things that might be going wrong.
ASP.NET 2.0 contains an event based health monitoring system known simply as "Health Monitoring" that we can tap into to keep track of the health of our applications. We can use the Health Monitoring system to monitor the health of our applications and send notifications as thresholds for certain types of events are reached. For example, periodically the ASP.NET process will be forced to recycle which will cause an application restart to occur. Most of the time these restarts are to be expected, such as when an administrator makes a change to the web configuration file an application restart will occur. However there are other times when application restarts indicate that an application is experiencing extreme difficulty and we would very much be interested in receiving notifications about these events to let us know that everything is not fine. As an example, large numbers of application restarts are a typical symptom that a denial-of-service attack is taking place. Using the Health Monitoring service we could configure our application to listen for application restarts and configure a rule that would cause a notification to be sent after a certain threshold is breached within a given time.
The Health Monitoring system comes with a large number of standard events that are raised during the lifecycle of the application and also some standard providers (Sinks) that are used to log the event notifications. The standard provders include an Email provider for sending email, a SqlWebEventProvider for logging notification information into a SQL Server database, and a WMIEventProvider that maps ASP.NET health-monitoring events to Windows Management Instrumentation (WMI) events.
The Health Monitoring system is highly configurable and so we can easily create our own events and providers to record information about certain types of events and have them forwarded to a store of our choosing. For example, we might want to send an SMS to an application administrator whenever the time to make web service calls to external sites exceeds a certain time threshold - such as 3 seconds.
Here are some excellent articles that will help you get started with implementing Application Health Monitoring in your ASP.NET applications:
PAG : How To instrument Codehttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/paght000016.asp
PAG: How to use Health Monitioringhttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnpag2/html/PAGHT000011.asp
Link to an excellent article which demonstrates how to create custom Events and Providershttp://msmvps.com/blogs/gbvb/archive/2004/09/15/13578.aspx
posted on 3/5/2006 7:57:56 PM ( 9 Comments )
Late last year when BlogML was a shiny new object I started to look around the blogging universe for potential blogging engines to target. One of the people that I contacted was Phil Haack who I knew was involved in an open source blog called SubText. SubText is a branch of the the old .Text codebase. This all happened in early October last year.
This morning when I synch'd up my aggregator I was very pleased to read this announcement from Phil:
I get a great feeling when I see projects like SubText come to life; it keeps me believing in the dream that I had when I started coding.
Anyways, because these guys have implemented BlogML, all of you suckers who have installed SUB can go to your Administration page and dump out your SUB blog into BlogML and then import it into "Nautilus"!
Well done guys, enjoy the glory!
posted on 3/4/2006 2:19:35 AM ( 0 Comments )
Up until the weekend I had really only heard about Feedburner but hadn't taken the time to go and see what it's all about but after seeing this post I got interested in enough to move my RSS feed over. So now I have a favour to ask. If you are subscribed to my feed could you please change the URL that you use to my new Feedburner address:
This will help me to better understand how many people are subscribed to my blog and will also hopefully help me to ultimately produce better content.
posted on 3/3/2006 2:32:22 AM ( 9 Comments )


text:
Teaching Note | HBS Case Collection | August 1996
by Nitin Nohria and Stephanie L. Woerner
Teaching Note for (9-494-017).
Nohria, Nitin, and Stephanie L. Woerner. "Ford: Petersen's Turnaround TN." Harvard Business School Teaching Note 497-023, August 1996.
View Profile »View Publications »
Text Book | 2013
Ranjay Gulati, Anthony J. Mayo and Nitin Nohria
Keywords: management; leadership; business; organization design; organization structure; strategy; Strategy; Leadership; Organizational Design; Management Practices and Processes;
Article | Harvard Business Review | November 2012
A Whole New Way of Looking at the World
Nitin Nohria
What Makes Analysts Say 'Buy'?
Boris Groysberg, Paul M. Healy, Nitin Nohria and George Serafeim


text:
Open Daily
Extended Hours
Raise your expectations.
Meet the demands of every day life with versatile gathering height dining sets that take your dining experience to another level.
Timber Ridge Gathering Dining Collection
Noah Gathering Collection
The "Noah" collection features a unique triangular shaped table with seating options for a fun, casual dining set.
Timber Ridge Collection
The Timber Ridge gathering set has a casual, rustic style.
Munich Collection
The 'Munich' Collection features this crafted contemporary counter height dining set with a convenient shelf storage table base and removable 16" leaf in the table top.
Larkspur Gathering Collection
Made for today's everyday lifestyle, the Larkspur Collection has a self-storing butterfly leaf and offers chairs and a bench for versatile seating options.
Tulsa Collection
The Tulsa Collection's Mission Style Gathering Height Dining Set offers you two seating options. Choose from a Gathering Height Stool or Counter Bench. In a Cinnamon Oak Finish.
Stanton Dining Collection
This contemporary style gathering height collection in a deep espresso finish, includes a curved gathering height bench, matching stools and unique triangle shape table with a storage shelf underneath.
Logan Gathering Collection
Modern lines meet casual elegance taking the Logan dining experience to a new level. The spacious rectangle storage table has plenty of room for six dark brown counter stools and has matching bar stools too.
Al Fresco Gathering Collection
Gather around the Al Fresco for a fresh take on mix and match dining. The gathering height collection has both Black and White finished pieces with Driftwood tops and seats and is reminiscent of farm house styling.
Avion Gathering Collection
The Avion Gathering Collection has smooth transitional styling that gives it great decor versatility and long lasting appeal. See the Avion Dining Collection, for the same styling, in a dining height.
Larkin Gathering Collection
Made in the USA! The Larkin storage base gathering table is stylish, roomy and functional. Made of solid Maple in a two tone finish, with two different gathering stool options.
Lawson Gathering Collection
Casual dining offers a new look with the Lawson Group. Light and dark espresso finishes and splat back gathering stools with cushioned seats add a unique look to the trestle table base. Gather around and enjoy!
Linwood Gathering Collection
It's easy to entertain around the spacious & casual Linwood gathering storage table with plenty of elbow room for six or more. Ladderback cushioned stools are comfy to sit & relax in. Use drawer for extra storage.
London Gathering Collection
Gorgeous spanish marble in rich neutral brown tones is the highlight of this collection. The unique table leg design and superbly comfortable gathering chairs make this group stand out from the rest.
Midtown Gathering Collection
The contemporary Midtown gathering height group comes in a dark espresso finish with cushioned stools. The glass top table has a unique feature of a see through grid pattern in the table base.
5 Piece Dining Room Set
The Timber Ridge table is 36" wide, perfect for smaller spaces but extends to 96" with the addition of 2 leaves to seat eight comfortably.
Dimensions:Height - " Width - " Depth - "
Compare at $1,699.99
5 Piece Munich Dining Room Set
Open grain pattern veneer top has a self storing butterfly leaf.
Compare at $1,049.99
5 Piece Larkspur Gathering Set
This 54"x36" gathering height table includes an additional 18" self-storing butterfly leaf, extending it to 54", to seat 8 people, comfortably. Heavy tapered table legs add stability and a sturdy feel.
Compare at $1,339.99
Timber Ridge X Back Stool
The Timber Ridge gathering stool features a decorative "X" back motif and a durable leather like seat cover.
Dimensions:Height - 43" Width - 19" Depth - 22"
Compare at $169.99
Noah Swivel Stool
Stool features a swivel mechanism and is upholstered in a leather like material for long lasting wear.
Dimensions:Height - 44" Width - 17" Depth - 21"
Compare at $249.99
Venice Gathering Stool
Rich cherry finish legs with dark, easy to clean cushioning and tufted accenting on the stool back lends both to this gathering stool's design and comfort.
Dimensions:Height - 41" Width - 19" Depth - 22"
Compare at $129.99
Logan Counter Height Stool
Dark brown barrel back style Counter Stool is fit for a King and comfortable enough for any Queen of the house making it the perfect fit for this gathering set. Matching swivel bar stool also available.
Dimensions:Height - 41" Width - 21" Depth - 23"
Timber Ridge Gathering Table
Dimensions:Height - 36" Width - 70" Depth - 36"
Compare at $1,019.99
Larkspur Gathering Stool
Heavy cushioned seats in dark brown and wide solid panels in the gathering height chair back, add to the sturdy appeal and comfort for daily use.
Dimensions:Height - 43" Width - 22" Depth - 19"
Compare at $159.99
Venice Marble Gathering Table
Rich cherry finish contrasts beautifully with the dark, natural marble top on this 48"x48" gathering table.
Dimensions:Height - 36" Width - 48" Depth - 48"
Compare at $459.99
Noah Gathering Table 54"
Features triangular shaped top with shelf beneath for additoinal storage.
Dimensions:Height - 41" Width - 54" Depth - 54"
Compare at $669.99
Munich Gathering Height Table
Compare at $449.99
Double X-Back Gathering Chair
The double X-Back gathering chairs have turned legs in front while the back legs follow the arch of the chair back. Available in both White and Black finishes with a Driftwood seat, for mix and match versatility.
Dimensions:Height - 35.5" Width - 41.5" Depth - 21.12"
Compare at $189.99
Larkspur Gathering Table
Dimensions:Height - 36" Width - 54" Depth - 54"
Compare at $699.99
Stanton Gathering Table
Contemporary triangle shaped gathering height table has an storage shelf under the top and beautifully curved table legs all in a deep espresso finish.
Compare at $569.99
Gathering Stool
Counter height stool has contemporary style and shaped back for added comfort. Four stretchers add stability and strength. Soft beige upholstered seat adds comfort.
Dimensions:Height - 40" Width - 18" Depth - 22"
Compare at $149.99
Al Fresco Wht Gathering Table
This casual 42" x 54" storage table has a White finish with a plank style Driftwood finish top. The counter height makes gathering for family meals fun again. A 12" butterfly leaf extends it to 54" x 54".
Dimensions:Height - 36" Width - 54" Depth - 66"
Compare at $959.99
Gathering Table
48x48 large Table Top has a self storing 16" butterfly leaf which opens to 48x64.
Dimensions:Height - 36.5" Width - 64" Depth - 48"
Compare at $799.99
Noah Curved Gathering Bench
Curved bench is upholstered in a leather like fabric for long lasting wear.
Dimensions:Height - 30" Width - 51" Depth - 21"
Compare at $379.99
Taylor Stool
Solid two tiered ladder back Taylor gathering stool has a contoured seat and two tone finish of Sandstone and Espresso, made of solid maple and entirely handcrafted in the U.S.
Dimensions:Height - 41" Width - 19" Depth - 21"
Compare at $569.90
Avion Gathering Stool
The Avion chairs have square tapered legs, upholstered seats and back with neutral fabric, and curved ladder back slats revealed from behind.
Dimensions:Height - 44" Width - 17" Depth - 23"
Stanton Gathering Stool
Matching gathering chair has horizontal slats in chair back and easy to clean, cushioned seats.
Dimensions:Height - 41" Width - 18" Depth - 20"
Chairs have shaped back for comfort with a woven fabric cream colored upholstered seat. Four stretchers add strength and stability.
Dimensions:Height - 45.7" Width - 19" Depth - 18.5"
Compare at $179.99
Ensley Stool
A unique sunburst pattern chair back highlights the Ensley gathering stool with a contoured seat and two tone finish of Sandstone and Espresso, made of solid maple and entirely handcrafted in the U.S.
Dimensions:Height - 42" Width - 19" Depth - 21"
Tina 24" Gathering Chair
This 24" gathering stool has easy to clean upholstery on it's seat and back, with slight contrast in the stitching detail. Stool legs include H-stretchers for strength and stability.
Dimensions:Height - 42" Width - 20" Depth - 26"
Compare at $199.99
Brannin Ladderback Stool
The Brannin ladder-back gathering height stool has an easy to clean brown upholstered seat cushion and matching Espresso finish of the entire collection. Use with any style Montage conversion height table.
Linwood Ladderback Gth Stool
This tall 42" ladder back gathering stool has a comfortable and easy to clean cushioned seat in a rich chocolate brown color material.
Dimensions:Height - 42" Width - 23" Depth - 18"
Avion Gathering Table
This 52" x 36" gathering table has a beautiful detailed pattern in cherry, walnut and prima vera veneer. Adding the 18" leaf extends the table to 52" x 54" for guests. The Storage Base has a door and open shelf for storage.
Dimensions:Height - 36" Width - 54" Depth - 52"
Compare at $629.99
Lawson Gathering Stool
This splat back gathering stool has cushioned seats and matches the darker finish of the trestle base.
Dimensions:Height - 41" Width - 18" Depth - 17"
Stanton Gathering Bench
Gathering height bench has curved shaping to match the triangular table and is cushioned in an easy to clean, material, matching the chairs.
Dimensions:Height - 24" Width - 40" Depth - 18"
Compare at $229.99
Larkspur Gathering Bench
This comfortable bench has a sturdy back that matches the chair style for added stability and safety.
Dimensions:Height - 45" Width - 41" Depth - 22"
Montage Server
The Montage server has two doors flanking an inset wine holder plus three drawers for additional storage. The matching Espresso finish makes it an ideal match for any style table and chair combination you choose.
Dimensions:Height - 36" Width - 54" Depth - 18"
Valenica Gathering Ht. Stool
Extremely comfortable and easy to clean, these stylish black vinyl chairs have shaped backs and seats in a highly contemporary style.
Dimensions:Height - 42" Width - 20" Depth - 17"
Trenton Gathering Table
Gather round! This warmly finished, beautiful contemporary gathering table is 36"x54" and extends to 54" square with the addition of an 18" leaf which is included.
Compare at $519.99


text:
An evaluation license gives professional researchers the opportunity to explore all the features of Stata while making purchasing decisions.
Request your 30-day evaluation copy of Stata.*
*Evaluation copies are sent pending review and approval of your submission. Submissions with incomplete information will not be considered.
Have you subscribed to the Stata listserver yet? It's free.
Have you subscribed to the Stata Journal?


text:
Probing Atomic Precession | EDM Experiments |
(Click on regions of setup for more detail) |
UV laser system at 254 nm: Hg 1S0 3P1 line. |
The laser allows us to scan across the Hg absorption lines. |
Hg Cells |
Probing Atomic PrecessionWe use pump and probe method, alternating between optical pumping and probing atomic precession. For optical pumping we chop circularly polarized laser light at the Larmor frequncy of the spins, pumping them into a rotating frame. For probing the precession we use linearly polarized light and detect the rotation of the plane of the polarization produced by the spins. |
Optical Rotation Signal | ||


text:
Found the same room at a different price? Tell us, and we'll offer to match it.
Lisbon Apartments - Palácio de Camões
In this dream scenario, full of history and fully recovered in 2012, which are located most spectacular apartments in Lisbon, all with beautiful views of the river and bathed in warm light with the city welcomes its visitors. There are 10 fantastic apartments (6 T1, 5 of whom Duplex, and 4 T2, 2 of them with magnificent terraces), fully equipped, spacious, comfortable and luxuriously furnished. They are the best choice for a stay in the heart of Lisbon.


text:
No minimum purchase. First time buyers only. Click here to activate.
From the Field's Purrrfect Deluxe Gift Set is a must for every feline! Available in a durable, reusable vinyl bag with handle and zipper.
Purrrfect Deluxe Gift Set contains:
From the Field makes all natural and holistic healthy toys for happy cats. Each cat toy is made with strong and durable hemp fiber material and filled with organic catnip.
Click here for more Catnip and other natural From the Field products.
Review Rating: 4.5
Country of Origin: USA
Manufacturer: From the Field
Shipping Weight: 0.45
The reviews below are presented for informational purposes only and are not intended as an endorsement of any product. The information is not intended to be a substitute for visits to your local veterinarian. Instead, these testimonials offer the reader information and opinions written by pet owners and/or veterinarians concerning animal health and products that they have used.
(based on 10 reviews)
Ratings Distribution
5 Stars
4 Stars
3 Stars
2 Stars
1 Stars
of respondents would recommend this to a friend.
Best Uses
Reviewed by 10 customers
Sort by
Displaying reviews 1-10
Back to top
The purrfect gift
By Kitty Convert
from Austin Tx
Comments about From the Field Purrrfect Deluxe Cat Toy Gift Set:
I purchased 2 , one for each friend that got a new kitty member of the family and already had a mature cat. These are good because they will entertain both the older and younger member of the family
Comment on this review
My cats love this!
By Angela D.
from Texas
About Me Long-time Pet Owner
I purchased this gift set for my three cats for Christmas. It arrived a couple of weeks prior and I had to hide the box it was packaged in because they kept playing with it! :) My cats are 12 years, 11 years and 9 months old. All three love everything in this set. I only put it out sometimes and don't leave the items out all of the time because they get a little crazy. LoL
Purrfect deluxe cat toy gift set
By LouiseRavert
from Fredericksburg, VA
My cats love to toss it around, play with it, roll on it. To them, it was pure enjoyment.
(1 of 1 customers found this review helpful)
PURRFECT for ANY AGE
By Riv's Mom
from New York
Be creative-my 18+ year old and I found all parts of this gift package entertaining-even just smelling the plastic carrying case-AS LONG AS SHE DOESN'T GRAB TO EAT THE PLASTIC : ) Just know your particular furkit and be careful-THEY ARE QUITE INTELLIGENT-SPECIALLY OUR GIRL!!!
The mice were a hit!!!
By jkl
from Des Moines, IA
The catnip mice were quite the hit with our girls from the moment I took them out of the package!
Great Gift!
By Krittermom
from Baltimore, MD
This is one of three gifts that I bought for my boss's cats!
Mt cats woke up and moved!!!!!!
By NikkiBikki
from Michigan
My cats don't play.They are fat and lazy and when I presented the hemp catnip they had movements I had never seen. We as a family have never laughed so hard as we watch them roll and jump all over the place. Thank you for a quality product.
Fun for us all!
By marymargaret
from central california
My kitties love to play..They will play with these cloth mice and toss them all around the house.I am glad I bought 2 because they enjoy their "soccer" games..
Fun useful adored gift
By JMI
from Boulder, CO
A neat kit! It looks good. Well designed. Our cats REALLY like these mice - they love the catnip and I feel good knowing this toy is made of natural hemp. The cats are so cute playing with this and the mice last a long time. The enclosed spray is really versatile, can be used with other toys, surfaces.
Most fun EVER
By Renee
from Edmonds, WA
Cannot say enough about this product. Purchased one for the holidays and now am ordering several more. I have not seen my guys go after something like this ever. I love it because it is all natural. I am tossing all their other toys out the door.


text:
David Crabtree will give his talk 'Stories in Black and White'
Wilmslow Guild
This course is designed to give you an insight into how to photograph birds and mammals.
Bath HQ
An opportunity for you to experiment with photography and enter your images! The competition is open to all members and a different theme features every month.
Online Competition
A chance to meet and chat to Len Dance FRPS FIoD about his photography and his life as an International photographer.
The Cave, Greenwich
Visual Art Group Spring Weekend 2014 in Bristol
Hilton Garden Inn
During the course you will learn the essentials of colour management, print preparation and how to use bespoke profiles for getting the best possible results. We have the luxury of a digital c-type printer on site and each delegate will be able to make at least four 16"x12" prints during the day, normally costing £50.
This course aims to provide more experienced users with the knowledge and hands-on experience in techniques necessary to create, manipulate and edit professional quality images with skill and precision.
Aimed at all those who love photographing plants and landscapes and who may be considering doing it for a profession.
Mells, Somerset
Lectures, Workshops
An introduction to Lightroom fundamentals and using the develop module.
In a new venue, and a new start time of 10:30 am, the morning will be an opportunity to show your sequences for comment. In the afternoon the guest speakers will be Malcolm FRPS FACI(M) and Maggie Imhoff.
© 2014 The Royal Photographic Society Registered charity number: 1107831
Copyright Notice Warning: This web site comprises and contains copyright materials. You may not distribute, copy, publish or use the images or any part of the images in any way whatsoever. You may not alter, manipulate, add to or delete an image or any part of an image. Copyright for all the images remains with the photographer, contributor or The Royal Photographic Society. A link to a non-Society site does not imply endorsement.
To process your order please click view basket button. If you would like to add more items into your basket before you checkout click continue.


text:
Locke & Key: Alpha
Series: Idw Locke Key Alpha
volume: 1
publisher: IDW
product type: digital comic/eComic (Mini Series)
"Omega and Alpha," part 1: In the second-to-the-last issue of Locke & Key, the damned and the saved alike will make their final stand in the Drowning Cave, in a clash of blood and fire. The shadows have never been darker and the end has never been closer. Turn the key and open the last door; it's time to say goodbye.


text:
Miss KG Glamorous Jewelled Peep Toe Shoes
From £0.69 per week
- Was
- Was £105.00
- Now
- Now £52.50 to £73.00
- Save Up To £52.50
- Low stock, selling fast
- Delivery
2 reviewsMiss KG Peep Toe Shoes with Jewel Embellishments
Get ready to dazzle those around you in these beautiful statuesque peep toe shoes by Miss KG. They're the perfect addition to your polished party wardrobe.
Covered in sparkling jewel embellishments, these shoes shimmer from all angles for the ultimate glam finish. In nude sparkle, they are soft and delicate for a gorgeously feminine style, whilst the black hue is classic and offers a timeless appeal. The peep toe is elegant and shows off your French polish, whilst the skyscraper heels will lift your look and define your pins for a svelte silhouette.
Wear them with a bodycon dress to show off your hourglass figure. Add sparkly accessories and a cute clutch bag for added impact.
Useful info:
- Peep toe shoes by Miss KG
- All-over jewel embellishment
- Available in nude sparkle and black
- Heel height: 6 inches
Miss KG Bobby Patent Knee High Boots
From £1.06 per week
- Was
- Was £118.00
- Now
- Now £82.00
- Save £36.00
- Low stock, selling fast
- Delivery
2 reviewsMiss KG Patent Knee High Boots
Channel the equestrian look this season in these patent knee high boots by Miss KG - they're perfect for off-duty days.
Their shiny patent finish gives them a luxe sheen and smooth-to-the-touch texture that gleams as the light hits them. Knee high they instantly add an authoritative appeal to your look and the inside leg zip fastening secures the fit.
With a pair of skinny jeans tucked into them, a long sleeve top and fitted jacket, these boots add the finishing chic touches to your outdoor style this season.
Useful info:
- Knee high boots by Miss KG
- Patent finish to upper
- Inside leg zip fastening
- Heel height: 1.5 inches
Miss KG Mabel Flat Shoe
From £1.25 per week
- Was
- Was £50.00
- Now
- Now £25.00
- Save £25.00
- Low stock, selling fast
- Delivery
4 reviewsMiss KG Mabel Flat Shoe
Monochrome and croc print featured heavily on the catwalks this summer and now, thanks to these pointed ballerina pumps by Miss KG, they've found their way into your autumn/winter casual-chic wardrobe.
The black and white patent design is ultra mod and will score you major points on the fashion front this season. The leopard print introduces a wild, edgy appeal into your winter outfits. The pointed toe design lends these shoes a sophisticated finish, whilst the ballerina style is casual yet chic.
Wear them with everything from your pencil skirts and fitted shirts 9-5 wardrobe to your skinny jeans and fitted top combinations.
Useful info:
- Mabel Flat Shoe by Miss KG
- Pointed toe; flat style
Miss KG Bliss Biker Boots
From £0.81 per week
- Was
- Was £105.00
- Now
- Now £63.00 to £73.00
- Save Up To £42.00
- Low stock, selling fast
- Delivery
5 reviewsMiss KG Biker Boots with Buckle Detail
Get that edgy daytime look you crave in these Miss KG biker boots - they're perfect for laid back, off-duty styles.
Available in black they are classic and have a timeless quality, whilst the mink hue channels the season's love for neutral colours. Double metal buckles add a biker feel to these boots, whilst the exposed outside leg zip fastening lends them a raw edge appeal.
Wear with stone wash jeans and a long sleeve top for an urban street-style. Mix up your feminine look by pairing them with tights and a knitted dress.
Useful info:
- Biker boots by Miss KG
- Contrast buckle detailing
- Outside leg zip fastening
- Heel height: 1 inch
Miss KG Bea Ankle Boots
From £0.89 per week
- Was
- Was £99.00
- Now
- Now £69.00
- Save £30.00
- Low stock, selling fast
- Delivery
2 reviewsMiss KG Leather Ankle Boots
A luxe addition to your autumn/winter wardrobe, these ankle boots by Miss KG are the perfect footwear for off-duty chic days.
Their tan hue channels earthy autumn and makes a stylish alternative to black. Strap detailing to the ankle adds impact, whilst the chunky heel is laid back but lifts your profile for a confident finish to your daytime look.
Wear with tights and a knitted jumper dress. Coordinate your relaxed style with a slouchy leather shoulder bag and leather jacket.
Useful info:
- Ankle boots by Miss KG
- Strap detail to ankle
- Inside leg zip fastening
- Heel height: 3.5 inches
Miss KG Girl Mesh Sandals
From £1.04 per week
- Was
- Was £99.00
- Now
- Now £79.00
- Save £20.00
- Low stock, selling fast
- Delivery
0 reviewMiss KG Cut-out Sandals with Stud Embellishment
These mesh sandals by Miss KG are a fun and flirty addition to your luxe evening looks.
With a cut-out mesh upper these sandals are given a twenties-inspired twist that wouldn't be out of place at one of Gatsby's infamous parties! Gold stud embellishments are subtle yet sparkle as they catch the light for a chic twist and the platform raises your profile in ultimate style.
Wear these platform shoes with little black dress with feather skirt or a gold trim scalloped hem for that flapper finish this party season.
Useful info:
- Sandals by Miss KG
- Mesh detail upper
- Studs to upper
- Platform detail
- Heel height: 6 inches


text:
Product Description
Groom Your Dog Like a Professional presents step-by-step instructions from an award-winning groomer to teach you how to get your furry pal looking like a show dog.
During these tough economic times, do-it-yourself dog grooming is a great way to save money while providing excellent care for your canine companion. Groom Your Dog Like a Professional presents step-by-step instructions from an award-winning groomer to teach you how to get your furry pal looking like a show dog. The breed-specific instructions are arranged by type of coat, making this an easy-to-use reference for anyone wishing to naturally enhance their dog's features, create fun and striking looks, or just reduce shedding and dander around the house. Each grooming example is fully illustrated with easy-to-follow photos to ensure beautiful results every time. This expertly written guide also explains how grooming provides an opportunity to check your dog for health concerns (which can help spot any potential problems early in their development) and to strengthen the bond between dog and owner. A special tips section reveals professional secrets to grooming older dogs, common grooming challenges and how to overcome them, grooming missteps to avoid, and myth busting information.
About the Author
Peter Young is an internationally renowned poodle breeder, handler, and Crufts-accredited judge. Owner of Peter's Posh Pets, a grooming parlor located in West London, he holds many grooming contest titles and has won three Cardinal Crystal Achievement Awards, the Oscars of the grooming industry. A celebrity in the grooming world, Peter conducts seminars internationally. He resides in the United Kingdom.
Author: Peter Young
Publisher: TFH Publications, Inc.
Pub. Date: August 2009
Paperback, 144 pages


text:
vampire wine product review
Vampire Wine
In plenty of vampire lore the description of a vampire tasting blood is similar to a mortal drinking wine. There is a fine bouquet that you find alluring — that first enchanting sip that rolls over your tongue whetting your appetite and the sensual experience of discovering the fusion of fruits, spices and exotic flavors. ... Full story
| displaying:
1 - 1


text:
Vizio Tablet Video
Vizio Tablet Video Transcript
Hi, I'm Natalie Morris for CNET and you're watching CES 2011. I have with me here the Vizio VIA Tablet. This is the first entrant into the tablet market by Vizio which is the company you normally think of for TVs. The reason they're getting into this mobile space is because they're trying to merge the TV with the tablet with the phone and make it all one seamless experience. So, the same software that will run on the Vizio VIA Phone will also run on this tablet which will work with Google TV. Now, this is running a version of Google's Android operating system and we're not exactly sure which one yet. This is a prototype device. It doesn't come out 'til the summer but a couple things we know about it are pretty impressive. First of all, it has three different speakers, two along the top and one along the side here so that when you use it in landscape or portrait mode, you always have surround sound with two speakers at a time. It also has this IR blaster in the front meaning that you can use this as a universal remote so when you walk into your house, you can control the electronics in your home entertainment system with the Vizio app and this is running a Vizio skin of Android. Now, this is a Wi-Fi-only version of this tablet. We don't know when they'll come out with a mobile version like 3G or 4G but we think that is in the works. We also don't have price or release date for this yet. We just know that we'll see it some time in the summer of 2011. Again, this is the Vizio VIA Tablet. I'm Natalie Morris for CNET and you're watching our coverage of CES 2011.
Related Videos
In addition to offering all of the standard Android features, Vizio's first tablet doubles as a universal remote control. Even better, the 4GB version is expected to cost only $349 when it debuts in the summer of 2011.
Vizio's 7-inch tablet has nothing special, but the still-unannounced pricing could make all the difference.
The Vizio VO32L's mostly solid image quality and fully packed connectivity package make it a top choice among small-screen LCDs.
Vizio's affordable 8-inch Android tablet offers a few unique tricks, but faces steep competition.
CNET's Sharon Vaknin takes a First Look at the Vizio XVT3D0CM series televisions at CES 2011 in Las Vegas.
At CES 2011, Natali Morris takes a First Look at the Vizio phone.
The Vizio XVT3D580CM is a unique widescreen television designed to appeal to videophiles but doesn't quite make it.
Vizio's M3D550KD is one of our favorite LED TVs this year
Very good picture quality and an extremely aggressive price make the Vizio M3D0KD one of the best LED TV values on the market.
First look: Vizio CA27T-B1 touch-screen all-in-one
A good set of specs and a crisp-looking screen plus dual HDMI inputs make Vizio's top-end touch-screen PC a decent pick for those who want their computers to double as TVs.
Vizio's risky, affordable 27-inch all-in-one
For its first desktop all-in-one, budget TV maker Vizio shows a penchant for consumer-friendly design.
Vizio Tablet VTAB1008 Review
The good: The Vizio Tablet VTAB1008 stands out from the crowd of Android tablets with its unique size, customized interface, universal remote control capability, and affordable price.
The bad: Vizio's tablet isn't the thinnest, fastest, prettiest, cheapest, nor the most up-to-date tablet we've seen, and the viewing angles on its screen aren't great.
The bottom line: The Vizio Tablet makes a great competitor to 2010's Samsung Galaxy Tab, but lacks the grace, speed, and features of today's best tablets.
Vizio Tablet VTAB1008 Specs
Manufacturer: Vizio
Part number: VTAB1008
- Product Basic Spec
Vizio Tablet VTAB1008 Prices
Online stores
Store | Certified rating | Inventory | Price |
| Rate this store See store profile | In stock | $189.95 |
| Rate this store See store profile | In stock | $189.95 |
Newegg.com | Rate this store See store profile | In stock | $89.99 |
Newegg.com | Rate this store See store profile | In stock | $89.99 |
Newegg.com | Rate this store See store profile | In stock | $89.99 |


text:
Search Result
Search Tags: John Owens
PTO changes the way it invests in IT systems
John Owens, the Patent and Trademark Office's CIO, said the agency used to spend 85 percent of its IT budget on operations and maintenance (O&M) support and 15 percent on development, modernization and enhancements (DME) of systems. Now, the agency spends 50 percent on each. That change has allowed it to upgrade IT systems without additional money.
Tags: technology , Patent and Trademark Office , budget , IT modernization , Jason Miller , Ask the CIO
Owens, PTO heeding call from Obama for reform
John Owens, the CIO at the Patent and Trademark Office, says his biggest priority is to fix the patent process.
March 10, 2011
Tags: PTO , patents , CIO , technology , Ask the CIO , Jason Miller


text:
High school students from five area counties will receive training in business etiquette, making a great first impression, public speaking and other essential workplace skills at the annual Student Leadership Academy event at Biltmore.
The event is organized by the Asheville-Buncombe-Madison Career Pathways consortium in conjunction with Biltmore. More than 100 students were selected to attend from over 20 local high schools across a five-county area in western North Carolina.
Students will be participating in a series of interactive workshops during the morning led by representatives from Asheville-Buncombe Technical Community College, Blue Ridge Community College, and Biltmore. Workshop topics will include how to make the best first impression and ace an interview, professionalism and etiquette in the workplace, and tips on how to be an effective public speaker. Biltmore personnel will also be on hand to provide information about career opportunities through a mini Career Exposition, as well as to share details about the company's internship and apprenticeship programs.
Following the morning session, students will have the opportunity to take a tour of Antler Hill Village with estate managers and staff. Activities will include: "Field to Table" presentation with the culinary team from Cedric's Tavern; Outdoor Adventure Center program overview and Segway demonstration; and a Question & Answer session with the Antler Hill Barn and Farmyard staff.
If you would like to learn more about this event, please get in touch with LeeAnn Donnelly, 828.225.6725, email@example.com; or Salem Bombace, 828.225.6130, firstname.lastname@example.com.
Subscribe to XpressMail. Free Sneak Peek. Every Week.
Want to know what's coming out in Xpress this week before the paper even hits the stands?
We've got your free sneak peek, along with deals available in XpressMail, our weekly email newsletter. (It's the best we can do without time travel.)
Related Articles
No commments yet.
Make a comment


text:
Follow me on Google+
Recent Posts
- Happy Chinese Spring Festival
- Sword Art Online – Silica's Chest Plate Tutorial
- The Last Days to get big discount for this halloween 2013
- Halloween 2013 Big Save!
- New Cosplay Costumes In 11th July
- New Cosplay Costumes In June
- New Cosplay Costumes 24th May
- New Cosplay Costumes 22th May
- New Cosplay Costumes 21th May
- New Cosplay Costumes 20th May
Tag Archives: cosplay wig cleaning
How to Wash a Fiber Wig?
Wig is always a must-have item for an excellent cosplay performance. So, does the large collection of comfortable & faithful wigs stocked at Miccostumes.com meet your need? Anyway, this is a tutorial shared by Lajvio, guiding us on how to wash a fiber cosplay wig. Thanks, Lajvio . Author About caoxiaopingI'm also a devotee for [...]
Posted in Cosplay Tutorials Also tagged Cosplay Wig, how to wash a wig, wash a cosplay wig Leave a comment


text:
CBS 58 asks MPD: What does 2,000 arrests really mean?MILWAUKEE- In our on-going CBS58 news investigation, we continued to dig into the violent crime numbers brought on last month by a comment made by Milwaukee Police Chief Ed Flynn. In an August 26th news conference, the chief bragged about his department and the number of arrests made following a month of shootings and homicides. He said "We've stepped it up a notch, you don't make 2000 arrests in a month if you haven't stepped it up." So CBS 58 asked the chief, did they really step it up because monthly data shows that 2,000 arrests is actually common for the department.
Of the 21,311 arrests, 8,577 were for felonies, 8,816 for misdemeanors, and 11,312 for non-criminal offenses (matters disposed of with a municipal citation). These three numbers do not sum because the categories are not mutually exclusive (arrest for more than one category). In 2012, there were four months with over 3,000 arrests, so far in 2013, there have been no single monthly totals over 29-hundered. Chief Flynn explained that the "stepping up" really means a better focus on high crime areas in the city and high interest individuals. The Chief went on to explain that, while overall arrest numbers stay about the same, certain types of arrests have increased. For example: Numbers show there's been a 22 percent uptick in robbery arrests, a seven percent bump in recklessly endangering safety, and a nine percent increase of felons possessing firearms. Overall, according to MPD numbers, year to date crime overall has dropped despite the spike in homicides, shootings, and robberies. The chief explained that he believes with thoughtful deployments, working with community, use data to drive activities, and focuings on the right people and places, the department is going to make an impact on the crime rate even more.
PollMost Popular


text:
BEACON eSpace at Jet Propulsion Laboratory > Items for Subject "QuikScat SeaWinds Rain-Flagging Technique Multidimensional Histogram"
Showing 1 items.
+ Div 27 + JPL Space |
Site last updated on November 15, 2012. If you have any comments or suggestions for this web site, please e-mail Alexander Smith or call 4-4202. |


text:
meta.DJ is targeted at modern DJ-style performances and lets you blend your iTunes music tracks with drum machine beats, sound fx, synthesized instrument parts, mix effects like delays, stutters, filters and more!
Finally the app that truly stands out in the sea of "me too" DJ apps.
Excellent and worth every penny… :)
There is demo video by DJ Puzzle available on You Tube as well:


text: He'll come, the King of Glory. He's coming for His own. He'll come , the King of Glory to take His people Home. I know. His wword has told me And His Word is tried and true. He said that He would come again so that's exactly what He'll do. He said,"Now I must go away but I will come again." "No man knows the hour, but my Father, He knows when." "Until that time ,my faithful ones I go now to prepare A place especially for you, then I will take you there." "For in My Fathers House there are abundant dwelling places." "You will meet your loved one there with long desired embraces." "So persevere and occupy maintain until the end." "Hold on tight to God's true Light, He's your forever friend."


text:
View of Fort Snelling
Edward Thomas was not trained as a painter. He was a career soldier. But he painted pictures wherever he was stationed, including two years at Fort Snelling in Minnesota Territory from 1849 to 1851. Most of his pictures have been lost over time. Today's Minnesotans will easily recognize Fort Snelling. It still perches above the joining of the Mississippi and Minnesota Rivers to this day, now surrounded by busy freeways and airport runways. Historians can identify nearly all the other buildings pictured here. Among them are the U.S. Indian Agency building, the American Fur Company warehouse, and the home of trading agent Henry Sibley. But of all the structures in the picture, the painter seems to have been most interested in the Dakota tipis in the foreground. He closely observed the patterns decorating the tipi covers. He carefully detailed the ends of the tent poles holding them up. The Dakota campsites, painted in the same browns and reds as the hills around them, become almost a part of the landscape itself. But unlike the stone fort in the distance, they would soon vanish from the scene. With the Treaty of Mendota, signed near this spot in 1851, the Dakota lost all but a thin strip of land further west along the Minnesota River.