Welcome‎ > ‎

Share Point

How to talk with aliens :)

posted May 25, 2014, 11:24 PM by Shaukat Mahmood Ahmad   [ updated May 26, 2014, 12:11 AM ]

Archaeology, Anthropology, and Interstellar Communication cover imageAddressing a field that has been dominated by astronomers, physicists, engineers, and computer scientists, the contributors to this collection raise questions that may have been overlooked by physical scientists about the ease of establishing meaningful communication with an extraterrestrial intelligence. These scholars are grappling with some of the enormous challenges that will face humanity if an information-rich signal emanating from another world is detected. By drawing on issues at the core of contemporary archaeology and anthropology, we can be much better prepared for contact with an extraterrestrial civilization, should that day ever come.

Introducing TypeScript

posted May 1, 2014, 10:53 AM by Shaukat Mahmood Ahmad   [ updated May 1, 2014, 10:53 AM ]

JavaScript has grown from a webpage toy to being used in large-scale deployments both on the server and in the browser. This rapid growth has outpaced the growth of the language itself, which lacks features that allow teams to communicate requirements and build applications safely. This session will be a guided tour of TypeScript, showing how the language and toolset makes it easier to write cross-platform, large-scale JavaScript applications.

TechEd Countdown Show: The One with the Tech Expo

posted May 1, 2014, 10:27 AM by Shaukat Mahmood Ahmad   [ updated May 1, 2014, 10:47 AM ]

Less than TWO weeks remain until TechEd North America in Houston Texas! This week Rick and Joey sit down with Michelle to talk all things Tech Expo. The Tech Expo is the place where you get to meet and interact with not only Microsoft folks, but also our fantastic Partners!

To Support French Startups France May Introduce Developer Visa

posted May 1, 2014, 10:20 AM by Shaukat Mahmood Ahmad   [ updated May 1, 2014, 10:23 AM ]

French Secretary of State for the digital economy Axelle Lemaire announced in an interview with Le JDD that the French government will work on a developer visa for highly skilled employees.

While the French government already announced that it plans to create a so-called startup visa for entrepreneurs and investors, Lemaire wants to extend this visa to engineers. more


A Very Short Guide to Writing Guides

posted Nov 1, 2012, 9:41 AM by Shaukat Mahmood Ahmad   [ updated Nov 1, 2012, 9:50 AM ]

Author coderoshi   

This is just a few thoughts on the topic of writing technical guides. This was intended for Basho's engineering team, but this may apply to open source projects in general.

It's commonly preached that the first step in writing is to identify your audience; to whom are you writing? This is the most well known, most repeated, and most overlooked step of writing in general and technical writing in particular. Take this document, for example. My audience is technical people who need to communicate technical information, and not teen girls, so I shy away from images of pop icons riding unicorns. I use jargon and words like "identify" rather than "smokin' out".

The flipside of the audience, is you. Although you should get out of the way of the material as much as possible, our language doesn't exactly account for that without sounding like a 50's robot (use active voice; we don't have to pretend like we are not real humans). Use collective pronouns like we or us. Don't use I unless you're writing a blog post. I'm using I because I'm talking to you, as me, Eric Redmond; however, our technical guides should be written as Basho or as the Riak Community to someone in particular.

Guide or Reference
With the audience clearly marked, the next step is knowing and identifying what kind of document you want. This is easy and important, as long as you know what you're trying to convey.

Reference: A Reference is just a technical list or table of raw information. It should be complete. Never write a partial reference, because it's pointless. If you have a reference of HTTP commands, delineate every command, because missing one or two is maddening, and users have every right to be pissed when they later learn the setting they've searched for for hours is undocumented.

Guide: Writing is not about the words. That's why we call these documents "guides," because they, well, guide a user through some thought process. This is much more art than a reference is, but there are some useful rules we can follow.

One thing to note is that a guide is not a replacement for a reference. To paraphrase Mike Pope: If there is no reference, it doesn't exist. Don't ever "mix and match", trying to combine a lookup reference within a guide. There are many reasons, but the basic ones are: 1) the reference will never be complete without making the guide overly long, and 2) it's not nice to make your audience read lots of prose just to look up some simple fact, like how to configure a PB port.

Answering Questions
Technical writing should teach someone how to do something. The easiest path to this is to be clear. A good start is by answering a couple implicit questions your reader will have.

Why should I care?
What new thing will I be able to do?
(If these questions look familiar, I long ago synthesized them from Dave Thomas and Andy Hunt... so, credit goes there)

I can't stress the importance of answering the first question. If you can't explain in the first couple sentences of the guide, why should the reader bother reading? Respect their time, and give them motivation for reading on. It's like a built-in TL;DR. For example,

In this guide we'll learn how to increase write performance.
The second question is equally important. You don't need to state upfront what the reader will be able to do. But if they read your document, and are unable to answer this question, what was the point?

I tend to try crafting the two question answers into a single statement early on, as a courtesy to the reader.

You can predictably increase write performance by adding more nodes to the cluster.
This is, IMHO, a big step that seperates good from mediocre tech writing. It puts the reader in the correct frame of mind for the following. This isn't a single sentence that each document must answer, but instead, a question that every section must answer on its own. If a section cannot answer these questions, consider removing it.

This is a bonus step, something to keep in the back of your mind. Though not part of the document writing process per se, this can help keep our constellation of docs in a cohesive shape, suitable for navigation. Where will this document live, in the grand scheme of things? A blog roll? A wiki? Public docs? Private docs? What keywords can be associated with this document? What's a great title (I actually like to create titles last, but that's just a preference)?

That's all for now. This might be considered a work in progress, but I didn't want to be too hardnosed about it. Suggestions welcome.


Urdu Poetry

posted Nov 1, 2012, 9:25 AM by Shaukat Mahmood Ahmad   [ updated Nov 1, 2012, 9:27 AM ]

کیا بھلا مجھ کو پرکھنے کا نتیجہ نکلا
زخم دل آپ کی نظروں سے بھی گہرا نکلا
توڑ کر دیکھ لیا آئنہِ دل تُو نے
تیری صورت کے سوا اور بتا کیا نکلا
تشنگیِ جام گئی پتھر کی طرح ھونٹوں پر
ڈوب کر تیرے دریا میں  میں پیاسا نکلا

Unicode Movie :)

posted Nov 1, 2012, 8:55 AM by Shaukat Mahmood Ahmad   [ updated Nov 1, 2012, 9:10 AM ]

One complete show staring 109.242 characters

Editor: Johannes Bergerhausen
Design: Daniel A. Becker, Johannes Bergerhausen, Siri Poarangan, Wenzel S. Spingler, Mathias Wollin
Software Development: Daniel A. Becker
Sound: Andreas Leo Meyer

Orignaly Shared by Siri Poarangan on vimeo.

Mosync Hakathon Lahore Pakistan (Welcome Mosync)

posted Apr 27, 2012, 1:28 PM by Shaukat Mahmood Ahmad

Mosync  is coming to Pakistan, the event (Mosync Hakathon) will be held in Lahore Pakistan at Marvel Hotel, My team (Me and Usman Ahmad Nasir) is one of the 100+ teams participating in this event.
The event is starting at 12:00 noon Saturday April 28,2012, and we are aimed to win the first prize ;) :p .....  Good luck to me and my team, and I say very warm welcome to Mosync to Pakistan.

Quick overview of Mosync:
Mosync is an open source SDK for cross platform mobile application development, maintaining single code base  you can target Windows Phone, Android, iOS, Blak Berry ans Symbian platform.
Mosync offers you to develop your application using C++ only, HTM5 + Javascript or hybrid code ( HTML5, JS and C++).
I am planning to publish a complete series of tutorials, articles and walk throughwww.mosync.com to develop state of the art mobile applications using MoSync, my plan is start with C++ track and then move to HTM5 / JS and Hybird Apps, if you have any suggestions please write me at write@sma.im

Thanks and Good Luck 
Happy  Mosyncing ...

SQL Injection Cheat Sheet

posted Apr 13, 2012, 12:47 PM by Shaukat Mahmood Ahmad   [ updated Apr 13, 2012, 12:48 PM ]

Currently only for MySQL and Microsoft SQL Server, some ORACLE and some PostgreSQL. Most of samples are not correct for every single situation. Most of the real world environments may change because of parenthesis, different code bases and unexpected, strange SQL sentences. 
Samples are provided to allow reader to get basic idea of a potential attack and almost every section includes a brief information about itself. read more

A Code-Based Introduction to C++ AMP

posted Apr 3, 2012, 2:39 AM by Shaukat Mahmood Ahmad

This article covers a prerelease technology called C++ AMP that will ship with Visual Studio 11. All information is subject to change.

Visual Studio 11 brings support for heterogeneous computing to the mainstream through a technology called C++ Accelerated Massive Parallelism (C++ AMP). This enables you to take advantage of accelerators, such as GPUs, for speeding up data parallel algorithms.

C++ AMP delivers performance, in a hardware-portable manner, without compromising the productivity you’ve come to expect from modern C++ and the Visual Studio package. It could provide orders of magnitude speed gains compared with just using the CPU only. At conferences I typically demo a single process taking advantage of both NVIDIA and AMD GPUs at the same time, while still having a CPU fallback solution......  more

Source [msdn.microsoft.com]

1-10 of 21