| Raj's profileRaj ChaudhuriBlog | Help |
|
June 01 Depth is in demand (again)Just before I went to Tech Ed, I was thinking of folding up my training and consulting business. The way I saw it, my two main areas of interest, Business Intelligence and SharePoint, were solved problems. People already knew these subjects well, and there was no real need to for me to continue to provide training and consulting for them. Also, I provide in-depth trainings only. The vibe I was getting from my colleagues and the market was that deep training was a luxury people could not afford any more, and in fact, did not want. So, I was seriously looking at taking up a job again, and in fact was talking to a very good company about this. At Tech Ed, I got a totally different vibe. It seems that SharePoint and Business Intelligence are still very much in vogue, and there is a demand for training and consulting in both subjects. People are even willing to pay my What was even more encouraging was this: I participated in some hardcore technical sessions, and I strongly got the feeling that people want to get down to brass tacks again. People want to learn the basics well. Depth is in demand again. And so, I have shelved my plans of getting employed, temporarily. I am still available to provide deep training, and consulting. My subjects of choice remain SharePoint and Business Intelligence. My rates remain And, I have started to think about going back to the basics too. You can’t do SharePoint well if you don’t know ASP.NET well. You can’t do ASP.NET well if you don’t know the .NET Framework well. You can’t do SQL Server Analysis Services well if you don’t know SQL Server well. So far, I have just been putting basic subjects as prerequisites in my trainings. Maybe I ought to take them up as well. And cover them like no one around here has covered them. Interested? Tell me. Watch this space, and also my web site, which is http://rajware.net. Something is coming. May 21 Tech Ed India 2009 Presentations and DemosA big Thank You to the organisers of Tech Ed India. Another big thank you to everyone who attended my talks. The presentations and demos of all the talks that I was a part of are now up on my web site: http://rajware.net. December 09 A note to the software industry (and especially my beloved Microsoft)You can keep your "opinionated", "community-supported", "social", "fluent", "agile", "standards compliant", "test driven", "open source" etc. etc. Thank you. May I please have my "documented" and first-party "supported" back? December 01 A ProposalLet there be a fund set aside for metropolitan security. There should be four contributors to this fund: central government, state government, city self-governance and interested private parties. Let this fund be audited by the office of the Comptroller General, as well as by a reputed private agency, with quarterly reviews where all sponsors participate. Let this fund be utilized for setting up an intelligence-gathering network, as well as a contemporarily armed, equipped and trained security force. Let the scope of this force be the metropolitan and suburban areas of the city only. Let this force report directly to the state home minister (note: not the home ministry. A person should be responsible and accountable.), and have authority equal to city police under peaceful circumstances, and exceeding the city police in emergency situations. Let the force be empowered to act without waiting for clearance in case of an emergency, but still be accountable for their actions. To make this possible, let there be a clear and unambiguous definition of an emergency situation, that is well known to everyone through public and private media and even through primary and secondary education. Let the intelligence component of this force be classified, and protected with every ounce of technical and manual facilities available. Let pertinent portions of this information be released to the public once every five years, in the middle of the electoral term. Let part of this fund also be utilised to set up reserve medical and trauma care centres, which can be activated immediately at times of need, and preferably be mobile. Let there be adequate public and private participation. Let members of the general public volunteer for active and reserve positions in the non-classified parts of this initiative. Let basic training in self-defence, disaster recovery, emergency medical treatment and trauma care be disbursed as part of the initiative. I am willing to volunteer my time, money and skills to setting up and running such an initiative. I am also willing to be taxed extra for the privilege of living in a secured city with an accountable security initiative in place. Who is with me? November 17 भागो भूत आया (Run, here comes the Bhoot)In Sanskrit, भूत (Bhoot) means "past". And in colloquial Hindi/Bangla/Marathi, it means "ghost". My past has always seemed ghostly to me, and I have indeed run from it. Now, the distant past (20 years) has returned to haunt me again. I am connecting with people I knew that many years ago. I love those people. But I did not and do not love the person I was then. That is the real Bhoot which is coming back to haunt me now. Do I love you or hate you, FaceBook ? November 09 The Simplicity Manifesto - Billy HollisPlease read this. http://visualstudiomagazine.com/columns/article.aspx?editorialsid=2851 I agree with every word. Most especially with Point 4. November 07 Monster.com Express Résumé serviceYesterday, I received a call from a very well-spoken lady from Monster.com. The call started out sounding like they wanted to verify my details. I could feel her steering the conversation towards making me subscribe for one of their services. I liked the way she did this. It wasn't even persuation, it was more guidance towards a concept. Most callers get this wrong. This lady got it right.
I have been thinking, off and on, about taking up a job again. So, to satisfy my curiosity, I decided to buy into their Express Résumé service: only Rs. 1000/-. Monster very cleverly disclaims any kind of results, nor does it offer any form of tracking to show that you are getting anything whatsoever for your money. I have no complaints about the results part, but the lack of tracking bothers me a bit. But that's not Monster's fault; it's my own, for not having examined the offering before buying. However, if anyone from Monster reads this, I would advise that you offer some form of tracking. And no, "Send an e-mail to customer service quoting your order number" does not cut it in these Web 2.0 days.
I will see what happens over the next one month, and report. October 29 Lies, Damned Lies, and UNIXI browsed, briefly, through the section called "Windows NT" in my copy of "The Art of UNIX Programming". I felt tremendous anger.I know that the author is an intelligent person, so I cannot call that section "misinformed". I'll have to call it "deliberate slander" or "bald-faced lies".
Then I calmed down. People of that ilk do this. Consistently. It's a decent book otherwise. I had just ignored the section thus far. Why did I read it today?
I am getting angrier. I shouldn't. I don't normally. I am Windows power user. I am a Visual Basic "programmer". I am Mort. I'm too busy getting work done to be bothered by these quasi-religious issues.
Why am I getting angrier? Why am I writing about it? Why should anyone care?
I read about all the announcements and stuff at the Microsoft Professional Developers' Conference. October 18 Vista IS robustI have not been able to keep my "no .NET" resolution, thanks to a dear friend who wants what he wants before he wants it. This was the same...uh...gentleman who caused me to do SharePoint development using Notepad(++) a while back.
Anyway, picture this scenario. Virtual PC, running SharePoint on IIS, being debugged in Visual Studio, breakpoint hit due to a call from a browser outside the Virtual PC, visualization showing. At this point, machine is hibernated.
Resumed later, and everything continues to work exactly as expected. Bravo, Windows Vista. Bravo, Dell XPS.
October 09 Basic (and Spot On) InstructionsBravo, Scott Meyer. I love this web comic. This post happenned because of the "instructions" called "How to advertise Windows Vista". October 02 Back to the pastFor the past couple of months, I have been experiencing a funny feeling. With all the latest and greatest tools at my disposal, I seem to be taking longer to get stuff done. So, I am going to test a hypothesis. I have two projects I need to do over the next two months, and I'll use two old friends to get them done: Visual Basic 6.0 for applicaton development, and Visual Foxpro 9.0 for scripting/admin stuff. No .NET whatsoever, not even PowerShell. No Ruby, Python or any of that stuff, and no third-party libraries if I can help it, with the possible exception of PocketSoap.
If anyone is interested, I'll post observations after two months. April 13 राज चौधुरी को गुस्सा क्यों आता है? Because Raj Chaudhuri does not know the proper meanings of words.When you are annoyed about something, you tend to notice other related things. I have no clue how I stumbled upon this one: http://fci.wikia.com/wiki/Campaign_for_Document_Freedom I'm not going to debate their claims - everyone is entitled to an opinion. The one thing that got my goat, is this line:
The emphasis is mine. Like their patron saint, open source adherents are very free with the use of such terms. This is what I object to. What is unethical about any form of document encoding? At this point, I cooled down a bit, and started examining my position. I was getting mad as hell over just one word? I looked it up on dictionary.com : http://dictionary.reference.com/browse/ethics. I request any readers that I have to please do the same - I don't think it's ethical (heh heh) to copy and paste from there. Big whoops pour moi. Ethics, as defined by dictionary.com, is subjective. Those...people are talking about their ethics. According to their "system of moral principles" (see definitions), its unethical to encode a document using anything other than the "standard" (yes, those are quotes. Standard is subjective too) that they propose. Okay. I apologise to the good people behind that link for getting angry for no reason. Just for the record, my "moral principals" ( see definitions) say that thrusting one's views on others using absolutist terms is wrong. So, in my subjective opinion, the entire linked article is "unethical". April 08 The Bureau Of Indian Standards Sub-committee on Wordprocessing MLI was somewhat disappointed when India voted "no" for ISO standardization of Office Open XML (hereinafter referred to as OOXML, in this post). I was even more disappointed when Microsoft, after winning the ISO vote, made a (lame, in my opinion) complaint against the Bureau of Indian Standards (hereinafter BIS); ऐसा व्यवहार Market Leader को शोभा नही देता. Over the past couple of days, through Guruji* and Amol**, I learned of a "minutes of meeting" document that is available on odfalliance.in, which records a meeting of the BIS on the subject of said standard. Amol has written a post on the subject, here. When I read the document, I was at first infuriated (like Amol) and then disappointed (like Guruji). And then my now-normal sense of apathy set in. Still, after reading Amol's post, I felt the need to write some observations. Here they are. Read the document (PDF format) first. 1) The composition of the panel is very interesting. The convener, Dr. Bhattacharya, is from Sun Microsystems. Two members who have asked important, and dare one say slightly provocative questions, are from IBM and the Free Software Foundation. This is very fair - a debate over the national vote on an international standard should have all interests represented. There are three things which bother me in all this. They shouldn't, because all three are the way the world turns, and I should have got used to them by now. But they do. From the minutes, the feeling I got was that the Microsoft representatives were on the defensive throughout. The Open Source proponent, typically, was vocal, caustic even. I call this the पिंजरे में बन्ध शेर को बच्चे भी मुंगफली फेंककर मारते हैं syndrome. After all these years, this still bothers me. The supporters of anything other than Microsoft can use whatever language they feel like, say whatever they want, with no supporting evidence, or pointing to each other's work as evidence. And this is, somehow, okay. This bothers me. The learned Professor is so...professor-like. Correction, current professor-like. This bothers me at a more personal level, and I will blog about this separately. I applaud those that sat through this meeting. Some of the comments sounded vitriolic. I would not have been able to tolerate such. Incivility disgusts me.
* Guruji is Sanjay Vyas, who has taught several generations of Indian software professionals to think in Visuals and dream in C++. ** Amol is Amol Vaidya, one of the best .NET (and associated subjects) trainers in India. March 19 Sharepoint Developent Tool - NOTEPAD(++)I needed to quickly build a SharePoint tool for a friend, and all that I had access to was a Windows Server 2003 machine with WSS 3.0 installed. No dev tools, no SDK, and (for some very valid reasons) no way of downloading them either. So I built the tool - 1 ASPX page, 2 compiled Web Server controls, 1 Feature, 1 Solution Package - using just a text editor (NotePad++, which happened to be installed. Very nice. I normally use Sciite.), the compilers included in the .NET Framework install, and the tried and tested method of copy/paste from existing feature definitions. I used a horrible method for generating guids involving SQL Server, uuidgen not being present. The experience makes me feel good, good and bad. Good, because it's possible. Good, because so many years away from my "hardcore" days, I can still do things this way. And BAD, because I actually feel good about things like this. Looks like I still don't have a life. February 04 SharePoint Forms AuthenticationForms Authentication in SharePoint Products and Technologies (Part I, Part II and Part III) should be required reading for anyone studying SharePoint development. For the lazy progeny of bachelors, here are some salient points.
Details for points 1, 2 and 3 are in Part I. Points 4 and 5 are covered in Part II . Part III covers 6, 7 and 8. October 12 Visual Studio Documentation SurveySome time back, I was about to write a post that would reveal my feelings about the current state of Microsoft documentation to the two and a half people who read my blog, and simultaneously teach them some basic Hindi profanity. But then my blood pressure returned to normal. The Hindi profanity-laden draft sits in my space, never to be published. Then today, via the Visual Basic Team Blog, I discovered and took the Visual Studio Content Survey. Please, two and a half people, do so too. Thanks for helping improve Microsoft's documentation! I want to talk about some of my responses. The survey is anonymous, so I will not quote the questions themselves. But on the off-chance that someone from the relevant team at Microsoft is reading this (and cares), I will mention the question numbers. I have no problem in providing a signed response to the survey. My answers to the survey are quoted in this color. They are accompanied by some additional comments I want to make. Partial answer Question 12: Once upon a time, there used to be separate User Guides and Reference Guides for technical topics. How-to topics and samples would go to the User Guides, while Reference guides would contain both very well-written concept material, as well as very well cross-indexed references. I would like to see all Microsoft documentation go back to this format. I could then skim (and then ignore) the "user guide" section, [print out and] read the concepts part of the "reference guide" section page-to-page, and consult the reference part at need. One thing I miss is properly written concept material. The last (chronologically) place where I saw acceptably good concepts documentation was the .NET Framework SDK 1.1. After that, we have been inundated with samples, "How-to" articles (please) and "Quickstarts". These things have their place (yeah, in the freaking open-sore world. Okay, kidding. Yes, a lot of people benefit from the How-To and Quickstart articles (चू...ने हुए लोग). Yes, it's Open SOURCE. Sorry), but so does the kind of writing I am talking about, which seems to have disappeared. Case in point - A topic called "Control Execution Lifecycle" in the .NET Framework SDK 1.1. The ms-help URL on my machine is ms-help://MS.NETFrameworkSDKv1.1/cpguidenf/html/cpconcontrolexecutionlifecycle.htm. Find me the equivalent topic in the .NET Framework 2.0 SDK, or the Windows SDK for .NET Framework 3.0. And look at the difference. In finding the damn thing in the first place, and if you do find it, in the content. Partial answer to Question 13: It seems that the task of explaining concepts has been farmed out to blog writers, end user (MSDN "Wiki"? I mean, come on...) or worst of all, book writers. This question talked about "content types". Apart from the usual suspects, it mentioned blogs, the MSDN "Wiki" and MS Press books. I don't like this. I do NOT want to reference any number of blogs to get accurate information on a released product. I do NOT want to write it myself, or read things contributed by other users which, and this is the clincher, may or may not be correct (In any case, user-contributed content does not go through a formal check. And no, "peer-review" does not cut it. Too many iterations, and too much time, and very real danger of something that "seems to" work getting accepted as gospel truth). And I do NOT want to pay extra to learn the basics about the software that I have just bought. Blogs, books, and even "technical articles" inject a certain amount of personal predisposition...okay, strong term, let's make that "opinion"...into the topic being covered. That's a good thing; I buy Charles Petzold, read Raymond Chen, and admire Bruce McKinney. But I would like to read these opinions after, or at least during the process of, forming my own. To form my own opinion, I need an impersonal, just-the-facts, readable text OVER AND ABOVE a hyperlinked reference. This is what the old "Technical Reference Manuals" used to provide, and this is what is sorely lacking in these fill-in-the-blanks-in-the-Sandcastle-generated-outline-and-write-some-examples-and-माँ-का-आशिर्वाद-howtos-to-supplement days. That's another thing: the Table Of Contents. Different people browse content in different ways, which is why there are Contents, Index, Search and Favourites...sorry, Favorites options. For me, the Table Of Contents is the best way to locate and recall information. Even in paper books, I use the table of contents a lot. In current editions of Microsoft documentation, the Table of Content has gone smelly. It's badly organized, inconsistent, and worst of all, incomplete. Show of hands, those who could not "Sync TOC" from some MSDN topic or another. Can I see two and a half hands? There was a question about the content being available exclusive online - as in - via World Wide Web. NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO!!!!!!!!!!!!!!!!!!!!!!!!! What do I do on the road? At 11pm on a rainy night when my ISP's router is under water (I live in Mumbai, and don't have a life. MSDN is after-dinner reading.)? And when I...let's just say that MSDN makes a nice alternative to a newspaper or magazine. So please, make me pay for the DVD burning and shipping maybe. But not online, exclusively. And my favourite method of browsing the content, the TOC, SUCKS on the web. Question 13 also talked about videos etc. as content types. You know, I can read text MUCH faster than I can watch a video. And text content can be much more distilled than video or audio. So, I would not like to see any content that is video or audio exclusively. There was the usual "Anything else" question also. My answer: Please, make sure the documentation is available completely offline for those who require it. Please, make sure *every* topic syncs to the TOC. And please, either give up on "integrating help collections" or get it right. Preferably give up, on that last one. In summary, documentation needs some real writing, by some real writers. I'd like to see the day when the FIRST (as in, the first place an end user looks) authoritative source of information about a released Microsoft product is NOT a blog from the product team, NOT online MSDN, NOT a technical article, NOT a public standard, and definitely NOT a book by a distinguished author, but the documentation that accompanies a product. Maybe we should go back to printed manuals. For some reason, I feel people take more effort if content has to be in print. क्या लं...बा हो गया। पोस्ट। August 16 World's Simplest Code Generator.cmdI am a big fan of Leon Bambrick's World's Simplest Code Generator. In this post, he blogs about being stuck on a machine with no dev tools and no internet connection, and re-implementing the WSCG in pure Javascript. Way cool.
When the same thing happens to me, I reach for CMD.EXE first. Thus, here is WSCG in CMD batch language.
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION REM Check for command-line parameters IF %1x==/?x GOTO :Usage IF %1x==-?x GOTO :Usage IF %1x==x ( echo Please type the pattern. Finish with a ^z. copy con pattern.txt SET PATTERNFILE=pattern.txt ) ELSE ( SET PATTERNFILE=%1 ) IF NOT EXIST %PATTERNFILE% ( echo Pattern file not found GOTO :EOF ) IF %2x==x ( echo Please type the input data. Finish with a ^z. copy con input.txt SET INPUTFILE=input.txt ) ELSE ( SET INPUTFILE=%2 ) IF NOT EXIST %INPUTFILE% ( echo Input file not found GOTO :EOF ) REM Perform substitution for /F "tokens=1-10 delims=, " %%a in (input.txt) do ( for /F "tokens=*" %%z in (pattern.txt) do ( SET line=%%z SET line=!line:$10=%%j! SET line=!line:$9=%%i! SET line=!line:$8=%%h! SET line=!line:$7=%%g! SET line=!line:$6=%%f! SET line=!line:$5=%%e! SET line=!line:$4=%%d! SET line=!line:$3=%%c! SET line=!line:$2=%%b! SET line=!line:$1=%%a! ECHO !line! ) ) GOTO :EOF :Usage ECHO Usage: ECHO %0 [patternfile] [inputfile] ECHO. ECHO If [patternfile] or [inputfile] are not specified, %0 will prompt the user ECHO for the relevant data. These will be stored as Pattern.txt and Input.txt ECHO respectively. ECHO. ECHO Use the variables $1 to $10 in the pattern. ECHO The output will be shown on the standard output, and can be redirected. It's quite simplistic, but will work as expected wherever CMD.EXE lives. The core is in the sixteen or so lines following the "Perform substitution" comment.
I find this tool very useful. All credit to Leon. Any brickbats for this quick-and-dirty implementation to me. August 13 Warning! Windows XP Zip functionality truncates filenames silentlyI received a large zip file with many levels of folders within it. I unzipped this inside a folder that was itself five levels deep in my folder hierarchy, using the built-in zip functionality. Once the full path names exceeded a certain length (~200 characters, I think. I’ll update this post after some experiments later), the unzipped filenames were *silently* truncated. I searched for reports of this behavior, but couldn’t find anything. The truncating part doesn’t bother me much; the silent part does. August 08 ASP.NET Wrapper Controls for OWC 11.0I have started a new project, to scratch an itch I have had for some time now. If interested, please take a look at
I would love some help with this. |
|
|