Backup All Outlook Contacts to VCard in 3 Easy Steps « Manage This! For some reason, the Microsoft Outlook developers never really embraced the vCard format, and did not provide adequate ways to import/export to this format. The “File > Import and Export…” menu only has ways to import vCards, and no options to export them. Because of this, various tools and add-ins have appeared that allow you to backup/export your Outlook contacts to vCard, and some of them even cost money!
Why should you have to pay to back up your contacts? Well, you don’t. STEP 1: Select all contacts in your Outlook contact folder (CTRL-A). STEP 2: Select “Forward as vCard” from the Actions menu. STEP 3: When the new message appears with all of your vCards attached, select File > Save Attachments and save your vCards to a folder on your hard drive. The draft message can be deleted/discarded. WARNING: When Outlook 2003 exports to vCards, it only exports the first email address! Comments are closed. Bringing in Social Content to Custom Applications with Apache Shindig. Social networking is currently one of the hottest things on the Web, so it comes as no surprise that many web applications are trying to incorporate social networking content to attract more customers. The challenge that many developers are experiencing is that, despite the attempts to standardize the APIs[1], the majority of the existing social network websites are still providing either proprietary APIs or support different versions of OpenSocial.
As a result, there is currently a proliferation of the APIs and a wealth of open source code for supporting them[2]. In this article I will discuss how an OpenSocial implementation, Apache Shindig[3] can be used to alleviate some of these issues. I will start with discussing OpenSocial standards and Shindig architecture and then show how they can be used for bringing social networking content to an application. OpenSocial APIs As defined by the OpenSocial Specification[5]: Figure 1 Typical architecture for using JavaScript OpenSocial APIs. REST vs. SOAP – The Right WebService.
Web Services are the key point of Integration for different applications belonging to different Platforms, Languages, systems. It wouldn’t be wrong if you call Web-services as the “Rendezvous point of the Business”. I’ve been using HTTP and SOAP since several years new. REST is rather new. SOAP revolutionized RPC and loose coupling beyond the restrictions posed by earlier protocols. However off late I have been giving APIs and interfaces considerable thought and am leaning a lot more towards simple HTTP based APIs with an XML or JSON response format as opposed to SOAP.
Let’s try to discuss all the aspects one by one. Before we start, Let’s do a basic terminology headsup - SOAP refers to Simple Object Access ProtocolHTTP based APIs refer to APIs that are exposed as one or more HTTP URIs and typical responses are in XML / JSON. Although, in alst ffew years we saw growth of large no. of Web Services, despite that the hype surrounding the SOAP has barely reduced. What is a REST Web Service.
No Silver Bullet: By Frederick P. Brooks, Jr. Of all the monsters that fill the nightmares of our folklore, none terrify more than werewolves, because they transform unexpectedly from the familiar into horrors. For these, one seeks bullets of silver that can magically lay them to rest. The familiar software project, at least as seen by the nontechnical manager, has something of this character; it is usually innocent and straightforward, but is capable of becoming a monster of missed schedules, blown budgets, and flawed products. So we hear desperate cries for a silver bullet--something to make software costs drop as rapidly as computer hardware costs do.
But, as we look to the horizon of a decade hence, we see no silver bullet. There is no single development, in either technology or in management technique, that by itself promises even one order-of-magnitude improvement in productivity, in reliability, in simplicity. Skepticism is not pessimism, however. Does It Have to Be Hard? Complexity. Conformity. Is there a difference between asking and telling? « monkey island. These days testing interactions is getting very common.
Mocking tools are becoming a necessary supplement to xUnit libraries precisely to facilitate testing interactions. I cannot imagine writing software without assert() (to test state) and verify() (to test interactions). I’m about to show that it is very useful to distinguish two basic kinds of interactions: asking an object of data and telling an object to do something. Fair enough, it may sound obvious but most mocking frameworks treat all interactions equally and don’t take advantage of the distinction.
Let’s have a look at this piece of code: Before mocking was invented we manually wrote stubs and tests looked like this: Sometimes I miss those days before mocking. Anyway, let’s try to extract a pattern from above test code: 1. when the repository is asked to find “foo” article, then return article 2. deleteByHeadline(“foo”); 3. make sure repository was told to delete article So, to generalize it: 1. stub 2. run 3. assert Controversies. Interrupt.pdf (application/pdf Object) The Future of Programming Languages.
In this session, recorded at JAOO Aarhus 2008, Anders Hejlsberg provides fascinating insight to the future of programming languages. He talks extensively about dynamic and static languages, imperative and declarative languages, functional programming, concurrency, and metaprogramming. The discussion provides ample code samples that exemplify the advantages of the different paradigms and styles of programming. To conclude, he makes some interesting predictions on what the future of languages has in store. Dynamic languages will provide more static typing capabilities while statically type languages will become more dynamic with implicit typing and type inference. If you have a spare hour, this session is definitely time well spent.
Premature Optimization. Premature optimization is the root of all evil -- DonaldKnuth In DonaldKnuth's paper "StructuredProgrammingWithGoToStatements", he wrote: "Programmers waste enormous amounts of time thinking about, or worrying about, the speed of noncritical parts of their programs, and these attempts at efficiency actually have a strong negative impact when debugging and maintenance are considered.
We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%. " However, PrematureOptimization can be defined (in less loaded terms) as optimizing before we know that we need to. Optimizing up front is often regarded as breaking YouArentGonnaNeedIt (YAGNI). But by the time we decide that we need to optimize, we might be too close to UniformlySlowCode to OptimizeLater. ThreadMode discussion:Optimization practices allow you to produce a better product. We all become what we do.
Generalizing Specialists: Improving Your IT Career Skills. Generalizing Specialist: A Definition A generalizing specialist is someone who: Has one or more technical specialties (e.g. Java programming, Project Management, Database Administration, ...). Has at least a general knowledge of software development. Has at least a general knowledge of the business domain in which they work. Actively seeks to gain new skills in both their existing specialties as well as in other areas, including both technical and domain areas. Generalizing specialists are often referred to as craftspeople, multi-disciplinary developers, cross-functional developers, deep generalists, polymaths, versatilists, or even "renaissance developers".
Becoming a Generalizing Specialist Figure 1 depicts a fictional skills assessment of an IT professional, showing how it evolves over time. As an individual it's an incredibly good strategy to become a generalizing specialist. Why Generalizing Specialists? Improved communication and collaboration. Figure 2. Figure 3. Conclusion.