Safari InformIT – For the IT Crowd.

Safari Books Online
Image by iogi via Flickr

One of my long-term favorite services that I’ve subscribed to as a paying member on-again, off-again is Safari Books Online. Safari offers access to a vast library of hundreds of IT related books for online reading.

If you work in the IT realm, its well worth the subscription cost – especially if you can get your employer to foot the bill for you. IT books are such a niche volume and oftentimes so massive in size that they frequently run $50-$100 for a single volume. Safari offers a relatively inexpensive alternative – while also preventing the proliferation of the dreaded stacks of outdated IT books that seem to crop up around us as technology changes at a blistering pace.

The price used to be $10/mo. for their basic subscription – but that was years ago and it is now a much steeper $23/mo. – but still well worth the price.

Oftentimes when we find online subscription services the best and the brightest are not among the selection – this is not the case with Safari. You’ll find numerous volumes from a variety of the best technical publishers including O’Reilly Media, Microsoft Press, Sams, Apress, Cisco Press, Packt Publishing, Que, and McGraw-Hill.

Perhaps a little insiders peek at what I’ve been reading (or at least perusing) over the last year or two on Safari will help provide some idea of the range and depth of the collection:

  • Martin WP Reid’s Pro Access 2007.
  • Ross Mistry and co.’s Microsoft SQL Server 2005 Management and Administration.
  • Michele E. Davis and Jon A. Phillips’ Learning PHP and MySQL 2nd Edition.
  • Luke Welling and Laura Thomson’s PHP and MySQL Web Development.
  • Andrew and Paul Hudson’s Ubuntu Unleashed 2008 Edition.
  • Karen S. Fredricks’ SugarCRM for Dummies.
  • John Paul Mueller LINQ for Dummies.
  • Dino Esposito’s Programming Microsoft ASP.NET 3.5.
  • Scott Driza’s Word 2007 Document Automation with VBA and VSTO.
  • Kirk Haselden’s Microsoft SQL Server 2008 Integration Services Unleashed.
  • Larry Tenny and Zeeshan Hirani’s Entity Framework 4.0 Recipes: A Problem-Solution Approach.
  • Alex Mackey’s Introducing .NET 4.0: with Visual Studio 2010.
  • Michael Lisin and co.’s Microsoft SQL Server 2008 Reporting Services Unleashed.
  • Brian Larson’s Microsoft SQL Server 2008: Reporting Services.
  • Laurent Bugnion’s Silverlight 4 Unleashed.
  • Michael W. Picher’s Building Enterprise-Ready Telephony Systems with sipXecs 4.0.

Along with extensive collections of books on development (web, java, .net, php), database (mssql, mysql, oracle), server/workstation administration (windows/linux), and network administration there are titles on digital media, engineering, math and science, personal and professional development, and so on.

Did I mention you get discounts on books (significant ones) if you purchase them while having a subscription? Sweet.

No, I’m not getting paid by Safari for this post. ­čśŤ

Thinking Well: Christianity and Singularity (Part 1: Why it Matters)

Christ the Saviour (Pantokrator)
Image via Wikipedia

Introduction:

I still do not know how to answer the question, “Who am I?” When pressed, one method is to describe some of my salient characteristics or interests – and, there are certain ones I am not eager to share. In my life two of the salient characteristics/interests/values are my faith (in Christ) and my technological inclinations.

Today, I’d like to talk a little bit about the intersection of Christianity and the Technological Singularity. There is much that has been said and is being said about the Technological Singularity – but very little (that I am aware of) being said about how Christianity and the Technological Singularity can, should, or cannot coexist.

Let me close my introduction by simply acknowledging my feebleness in approaching this task. While my knowledge on this topic may be significantly more than many, it is also significantly less than all who work within this realm. I apologize for any misrepresentations or misunderstandings that I may make or propagate in this article and look forward to the opportunity to refine this article and (more importantly) my thinking through ongoing discussion and learning.

To the Christian (or Why the Technological Singularity Matters):

I am sure I have already lost a significant percentage of those who visited this posting. Technological Singularity? What is that? There Dave goes talking his geek-speak again. I see it every day when I try to explain technological concepts to others – their eyes immediately gloss over. If you have read this far, please bear with me for a few moments more as I explain why the technological singularity is applicable to the non-geek.

Simply put, the technology singularity (in theory or actual existence) may become the single largest challenge to Christianity in the near-term future.

The technological singularity will allow for the self-improvement of mankind to the point of perfection. Tom Foremski, a technology journalist writes perceptively on this topic in his article, “Is ‘The Singularity’ The Elite Geeks’ Version of ‘The Rapture’?”[1]

Christianity revolves around the central tenets that (a) man is irretrievably broken and (b) Christ is God’s way of fixing the irretrievably broken. Yet, the Technological Singularity offers an alternative. Salvation (fixing) is available not (only?) through God’s grace but also through technological progress. This removes the necessity of a other-natural[2] process for redemption.

Other religions – as we traditionally conceive them – will not be our greatest challenge. Rather, we now face a challenge which will provide a secular alternative to redemption which seems provable and actually occurring[3]

To the Technologist (Or Why This Isn’t an Anti-Tech Rant)

:

At this juncture I am sure many of my technological readers are also beginning to close this page and navigate to some other, less spiritually adventurous blog posting – I would ask you to bear with me as well.

While I view the technological singularity as one of the largest challenges to the Christian faith this does not mean that I am opposed to idea or the pursuit of a technological singularity (necessarily). Rather, I am attempting to discuss in what framework (if any) the singularity may be discussed without abandoning a theological context. I hope (in part) to demonstrate that Christians are not and need not be Luddites, but rather should be amongst the foremost advocates of technological advances – when placed within a correct framework.

Does Anyone Really Believe in the Singularity?

I am not a fan of abstract debates[4], and am oftentimes frustrated when discussions move towards the theoretical too heavily or consistently. I try to be a person who lives in the “real world” and deals with the issues and dilemmas of today. I want to be more concerned about the issues of my own wickedness and apathy than about topics which I cannot do anything more than hypothesize about.

When I talk about the Singularity, for many this will be their first introduction to the topic. It seems like the stuff of science fiction (and surely, much has been written in this vein on the topic), but I firmly believe that it has a much more practical and present application – and is and will genuinely impact our lives.

Perhaps one of the easiest ways to demonstrate the importance of the Singularity is to note some of the individuals and organizations associated with the movement. This does not prove the theory correct, only that it has support and finances behind it – and is likely to garner a growing following in the near future.

The Singularity theory has a number of proponents, one of the most vocal and important is Ray Kurzweil, author of the massive work, The Singularity is Near. While best known for his ideas about the future (the singularity) he is not an ivory tower philosopher. Among his accomplishments were the invention (in high school!) of a “sophisticated pattern-recognition software program that analyzed the works of classical composers, and then synthesized its own songs in similar styles.”[5] He went on to invent a software application that matched high school students to colleges (while a sophmore at MIT), innovations in Optical Character Recognition (OCR), Text-to-Speech synthesization, musical synthesizers, and speech recognition. Seriously, Kurzweil has been involved with some of the most significant inventions of recent times – read the Wikipedia article for more information. Kurzweil co-founded The Singularity University which is located at NASA’s Ames Research Center. This University is backed by corporate funding from Google, ePlanet Ventures, Autodesk, Kauffman Foundation, Nokia, FIAP, 23andMe, Canon, LinkedIn, WordPress, X Prize Foundation, Cushing Academy, International Space University, among others!

If you want to find a list of some of the great intellects today in technological and scientific realms – take a look at the faculty and advisors page of the Singularity University: Neil Jacobstein (Stanford), Dan Barry (NASA), Jason Lohn (Carnegie Mellon), Dharmendra Modha (IBM), Peter Norvig (Google, NASA, Sun Microsystems), Sebastian Thrun (Stanford), Raj Reddy (Carnegie), Daniel Kraft (Stanford), Jim Karkanias (Microsoft), Ralph Merkle (Institute for Molecular Manufacturing), Peter Diamandis (X Prize Foundation), George Smoot (2006 Nobel Prize in Physics), Pete Worden (NASA), Bob Metcalfe (Co-Founder, 3Com), Vint Cerf (Google), Will Wright (Electronic Arts), Brad Templeton (Electronic Frontier Foundation), Tim Ferriss (The 4-Hour Workweek), Matt Mullenweg (WordPress), and Dave Tosh (Elgg). Some of these are academic types you won’t be familiar with (neither was I…), some will be more familiar to those in the tech industry (see bolded), and some may be familiar either by name or affiliation to most readers (italicized). I only listed a few – and didn’t spend any significant amount of time picking out the most important or respected…

End of Part I:

I had hoped to write my entire article on this topic, but I have only introduced the reason this discussion is important…I hope to write some continuing articles on the topic in the near future…

I’ll close by suggesting some reading for those who are interested. The Wikipedia article on Technological Singularity is a good place to start for a brief introduction. The ‘definitive’ text on the topic (which I am currently plowing through) is Ray Kurzweil’s The Singularity is Near. Once one has a basic understanding of the technological singularity I’d recommend looking at some books that cover where this science fiction is becoming reality and the nature of feedback loops. These books are not about the singularity directly, rather they provide insight into the current and future state of technology and help provide concrete examples of how science fiction is becoming reality. Peter D. Kramer’s Against Depression is an excellent read on the biological and physiological nature of depression and mental illness (and worthwhile, even without its implications for singularity) and Fritjof Capra’s Web of Life is an excellent resource in understanding chaos theory, systems theory, feedback loops, and other concepts that play directly into the singularity philosophy.

  1. [1]Kudos to Foremski for choosing to place his punctuation (?) outside of his quotation marks. This is against traditional English grammar but evolving into acceptability due to technological requirements where punctuation can change the meaning of commands for input/output to a technological device.
  2. [2]I prefer the term other-natural to super-natural. I find super-natural to be too closely identified with the ethereal and unbound, despised by the intellectual. Yet, the spirituality to which I refer and I believe that Christianity teaches is not an unreality but rather a greater or other reality. It is as real, more real, than our reality – it simply is beyond our current comprehension or scientific measurement in many facets and aspects.
  3. [3]More on this later.
  4. [4]This will come as a surprise to many, as I participate in discussion on what many would consider abstract topics…
  5. [5]Wikipedia. Ray Kurzweil

ASP.NET Components List

I was recently looking for ASP.NET components and figured I’d share some of the resources I came across. I’ve attempted to only include some of the big name / best out there. Hope these are helpful!

  • Obout – Offers a large variety of controls, several for free. They also offer free licenses to students. A few of their controls are: Grid, TreeView, HTML Editor, Spell Checker, Calendar, Easy Menu, AJAX Page, and Splitter.
  • ComponentArt – Offers a large variety of controls for ASP.NET AJAX, MVC, Silverlight, WPF, etc. A few of their controls are: Calendar, Chart, Editor, DataGrid, Snap, and Splitter.
  • Karamasoft – Offers a large variety of controls for ASP.NET including UltimateAJAX, UltimateCalendar, UltimateEditor, UltimateEmail, and UltimateTabstrip.
  • Telerik – A huge variety of controls for ASP.NET AJAX, MVC, Silverlight, WinForms, and WPF. Also have a number of other productivity tools for development. Some of their controls include Calendar, Captcha, Compression, Editor, FileExplorer, Grid, SkinManager, and StyleSheetManager.
  • DevExpress – Offers a set of sixty controls for free. Has a large variety of premium controls available for ASP.NET, WinForms, WPF, and Silverlight. Some of their controls include Charting, Grid, Data Editors, Calendar / Scheduler, Gauges / Dashboards, and Utility Components.
  • ComponentOne┬á(now GrapeCity)- Large variety of controls and tools. Includes calendar, expander, formdecorator, gridview, headercontent, splitter, superpanel, and tooltip amongst others.
  • (Added: 5/21/10) Infragistics – Large variety of controls.
  • (Added: 5/21/10) GrapeCity.

Stackoverflow – A Great Resource for the Budding Programmer.

Image representing Stack Overflow
Image via CrunchBase

Stackoverflow is a niche site, but for its niche it is absolutely amazing. The site features a tremendous community of developers who ask and respond to questions. This creates both a huge knowledge base of existing information and a quick way to get additional information. It is very similar in concept to Aardvark or Yahoo! Answers but differentiates itself in its tight focus on development related topics. If you are a developer or are considering becoming one this site is an absolute must.

If you do sign up – say hi – I’m davemackey on stackoverflow. ­čÖé

Ramblings on Search.

A Better Search Engine.

X= (C*15) + (E*40) + ((A1*40) + (A2*30) + (A3*20) + (A4*10) + (A5*5)) + (M*20)

X = The ranking value for any given entry for a given search query.
C = The natural ranking given by a natural search engine analysis (such as provided via Google, Yahoo, Bing).
E = The ranking value given by individuals noted as experts in the field. For example – an individual “recognized” as an expert in American Civil War History voting on SiteA as of high importance to queries on “Vicksburg battle” would cause SiteA to receive a ranking value boost of E*40, where E is the ranking given by the expert, ranking inverted so that 1 = 1 (first result) and 10000 = .00001 (ten thousandth result).
A(1,2,3,4,5) = Aggregate of users rankings. These are aggregated based on “trust.” A user receives trust as they demonstrate reliability over time. This would be determined by a sub-algorithm that considered factors such as (a) how often user agreed with experts, (b) how often user agreed with crawler, (c) how often user agreed with other high-level users, etc.
M = Whether the user has verified their identity and linked a valid credit/banking account to their account. Fines would be imposed on individuals abusing the system using this linked information. Linking to valid monetary funds would not be required but would be an optional means of increasing trust.

An Introduction.

Since at least 2003 I have believed there was a better way to do search – and that way is socially. I nearly launched a business at that juncture to create such a search engine. I’ve waited eagerly over the years for someone to implement what seems so common sense to me – only to repeatedly be disappointed.
Google has now killed off SearchWiki. While far from what I envision – it was still closer and a move in the right direction for the company that has always insisted that machines can do it better. I had hoped it was the beginning of a change for Google – but the reversion to stars is devastating. So, I wanted to whine….and here it is.
I’m not going to spend all night on it at this juncture…but I may add to this article on occasion. That’s all.

What Would It Take?

Some would suggest that this project would be nigh impossible to complete – certainly impossible against a behemoth like Google. I don’t think so.

  • There is a free/open source robust, web search engine currently available called Nutch. It’s actually been around for years (I was looking at it back around 2003 as well).
  • There is also the option of using one of the many discarded web search engines – or getting a larger partner on-board like Yahoo! or Microsoft. Wink had something going for a while, Eurekster also looked like it had potential.
  • Matt Wells has demonstrated what can be done on a low budget with web search for ten years now with Gigablast. Think <$10,000 to start for hardware.
  • Hiring “experts” isn’t that hard. For initial seeding one could use educated non-experts (e.g. college students) who are willing to work for a low hourly rate ($10/hr.) but can make intelligent choices between web results.
  • Wikipedia has demonstrated that it is possible to create an open eco-system which remains fairly spam free.

Incentives.

For both businesses and individuals there would be an incentive to play fair, to contribute content, etc.:

  • Businesses would receive “cred” for good submissions/votes which they could then use to promote their own valid content (they’d lose cred quickly if they abused their cred).
  • Individuals could do the same for their own websites.
  • We also find the pride of ownership and accomplishment would play a significant role as seen in Wikipedia, YouTube, and DMoZ.
  • It’d make sense to me to implement revenue sharing (at the “higher” levels of user trust).[1]

For Each userx

myportion = myrelevantresults + (mytrustlevel * mytrustpoints)

Next

We’d then divide the 25% ($250) by the sum of all userx’s myportion (sumx). Then give each user sumx*myportion (ex. $250 / 3000 = $0.083 * 60 = $5). Not a lot of cash – but that is a rough guestimate on a single search query!

Why Don’t You Do It?

I’m sure some will wonder why I didn’t do it in the past and why I haven’t done it now. Ahh – that is the question. There are numerous contributing factors both past and present but the essence comes down to, I like ideas more than implementation (who doesn’t?)…and more importantly, I find myself more the aggregator of knowledge than the creator of methods. In other words, to some small extent, I’m a walking search engine – and I would love to input my knowledge into an engine like this…but I am not a skilled developer. I mean – I program, but I’m no Scott Guthrie (or…more in my realm, Corey Palmer, Ash Khan, or Kevin Clough).

Feedback Requested.

I’m open to feedback from anywhere…so speak up. A few individuals who come to mind are Steve Marder, Grant Ryan, and Jason Calacanis.

  1. [1]Consider, we have say 500 individuals with levels A1, A2, or A3 trust who have voted on at least one result on a query result. This query result over a months time generates $1,000 in revenue. 25% is set aside for user compensation. We’d do something like this:

ScrewTurn Wiki (ASP.NET Software).

For those who are interested in website design / management ScrewTurn Wiki will probably be of interest. Free, open source (GPLv2), and under constant development ScrewTurn Wiki is a ASP.NET wiki application. I use it on my freewargamer site.

Why would I suggest ScrewTurn as worth a turn or two? Well:

  • It depends on whether you are looking for a Windows based stack or a Linux based stack. There are lots of options out there for Linux based stacks – but for Windows there are far fewer.
  • As mentioned above its free, open source, and licensed under the well-known, widely utilized GPLv2.
  • ScrewTurn also seems to be under continuous development with regular releases and well supported forums…and its not some new project that just popped out of the woodwork – its been around for a while.
  • Its extremely easy to setup. Anyone who can learn how to purchase some shared hosting and use an FTP client can get ScrewTurn up and running within minutes.
  • It supports a good variety of databases (e.g. MSSQL and MySQL) but also allows for flat filesystem site creation (what I use on freewargamer). This makes setup/management even simpler and reduces the requirements in a shared host (which usually limit or don’t provide database access).
  • The UI is simple and easy to use. Its intuitive.
  • It has WYSIWYG editing of articles.
  • It supports Active Directory integration!

The list could go on – but check it out for yourself. Enjoy! (P.S. they recently released the final version of 3.0 which is pretty awesome).

My Platform as a Service (PaaS) List.

Some people are going to be up in arms over this list – because it isn’t truly a PaaS (platform as a service) list. I’m sure some noticeable entries are missing and some non-noticeable entries are present. The order is random. I’ve just been evaluating PaaS solutions and figured I’d post most of what I’ve found thus far. I had a hard time finding any good lists – so perhaps this will ease someone else’s research. I’d love to hear what PaaS solutions I am missing!

  • WaveMaker – Build rich internet applications (RIA) using a WYSIWYG interface. Community edition is open source. Creates Java applications. Wikipedia Article.
  • Visual Web GUI – Build RIA’s using visual development interface. There is a free/open source express edition with regular pricing beginning slightly under $350 for a license. Creates .NET applications. Can deploy to Windows Azure.
  • SalesForce – The Force platform is the defacto standard PaaS. Significant free offering included with up to 100 users, etc. Also, free licenses for non-profits with majority price discount on additional licenses.
  • nuBuilder – A open source project that allows for rapid development of web database applications. Wikipedia Article.
  • BungeeConnect – Uses an Eclipse-based IDE.
  • Web Fuser (Inuvia Technologies) – IDE and hosting. Hosting starts at $20/mo.
  • WinDev – Free lite IDE for rapid development of JAVA/.NET applications. Wikipedia Article.
  • Wolf Frameworks – Has a free starter plan (2 users, 100 MB storage, unlimited apps/entries). Wikipedia Article.
  • LongJump – Pricing starts at $30/user/mo.
  • WorkXpress – No pricing, thirty-day free trial. Does offer the ability to host with them, a third party, or your own. Claims to require no programming.
  • SpringBase – Fairly impressive free account for those looking to create a small database application. Appears they no longer offer a free trial. Pricing starts at $99/year.
  • TrackVia – Pricing is expensive ($249/mo., starts at $99/mo.). Online database platform
  • DBstract – Offers free accounts and low-cost premium accounts ($20/mo.) for creating database applications/hosting.
  • Caspio – Starts at $40/mo. Claims to require no programming. Wikipedia Article.
  • Zoho – Free account for up to two users, $5/ea./mo. additional users.
  • Hyrdo4GE – Still in closed beta.
  • HyperBase – Part of HyperOffice. (thanks: Jean Churchill).
  • MyTaskHelper – UI is pretty basic, but it is free.

Microsoft’s Free Development Tools.

Image representing Microsoft
Image via CrunchBase

I remember as a teenager programming for years in QBASIC – a free, lite version of QuickBasic Microsoft bundled with DOS and early versions of Windows. It was great fun – but I yearned to get my hands on the full QuickBasic so I could compile my applications and give them to others without giving away all my source code (okay, OSS was barely known back then).

Later I would save for months to purchase Visual Basic 5. $100+ is a lot of money for a teenager – but I wanted to program so bad that I scraped and saved.

After that there was the ASP.NET Web Matrix – a predecessor to the great tools Microsoft now offers for free. Unfortunately, its development was abandoned and for a long period of time I was left in a painful lurch….but then Microsoft started the trend that has made me extremely happy – free lite development tools.

These development tools include Visual Basic 2008 (for desktop applications), Visual C# 2008 (also for desktop applications, but in C#), Visual C++ (just like the last two), and Visual Web Developer (for web applications) – all in the Express line. Additionally they’ve thrown out there SQL Server Express (database back-end) and SQL Server Studio Management Studio Express (for writing SQL and managing databases).

While these applications are noted as “express” that doesn’t suggest that they are majorly crippled – rather they are extremely full functioning applications which can be used to create many impressive applications. For the new, hobbyist, or small business developer many times the Express Editions will be all that you ever need.

This was a smart move on Microsoft’s part – it gets people hooked on Microsoft development young – and it works great for us as well – because we get free development tools. By the time Microsoft expects us to shell out cash – well, we are probably making some from our now decent development skills. Go grab yourself some free development applications: https://www.visualstudio.com/vs/visual-studio-express/.