tech support15

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Friday, 30 December 2011

Javascript: Uncaught SyntaxError: Unexpected token ILLEGAL

Posted on 08:36 by Unknown

Notes to self: If you get this error on your javascript console:

"Uncaught SyntaxError: Unexpected token ILLEGAL"

The first thing to try, is that if you are passing a string as a parameter, put it single quotes.

This drained me for an hour.
Read More
Posted in javascript, parameter, Uncaught SyntaxError: Unexpected token ILLEGAL | No comments

Sunday, 11 December 2011

The Meta Refresh Tag with JSF, JSP, XHTML and Icefaces Apparently Doesn't Work

Posted on 07:25 by Unknown
I have an application that not only has the Icefaces Ajax push, but certain elements require a client side refresh. I had a heck of a time trying to make the meta refresh tag work.

Tried a whole pile of stuff, then I realized that the tag should be in template and not on the xhtml page. Worked like a charm.

I thought that I would put this up for others who struggle with this and Google is of little help. So if your meta refresh tag doesn't work, put it in the template.
Read More
Posted in icefaces, JSF, jsp, meta tag, refresh, xhtml | No comments

Thursday, 13 October 2011

Microsoft Mango Desperate For Developers

Posted on 18:12 by Unknown
It looks like Microsoft is desperate for developers to make apps for the Mango phone. I am a registered Microsoft developer, and I just received the email printed below. (They want $99 from me to develop apps. Amazon just waived the $99 fee for developers to develop on the Android phone). Here is the email:

Mango for everyone Vol 14 | October, 20
It’s been a very exciting couple of weeks in the world of Windows Phone! Over the past two weeks, we have seen an incredible amount of activity surrounding the launch of Windows Phone 7.5 (formerly Mango). It’s actually been somewhat surreal in some ways because people are paying attention to this release and actually think it’s downright cool!

So what exactly did we announce over the past few weeks? I’m glad you asked! The major announcements included:
The Release of Windows Phone 7.5 by carriers to end consumers: Microsoft has begun delivery of the Windows Phone 7.5 update to Windows Phone users by carriers. To find out when your carrier will be ready to send out the update to you, there is a handy little web page here that gives you the status of the update relating to your carrier.

Introducing the Mango App Challenge: Developers, do we have an awesome deal for you. We have introduced a promotion called the Mango App Challenge that in essence will give you a new phone (up to 300 total for the entire promotion) if you build 2 new, quality Windows Phone 7.5 apps (or games). Interested? Then start your PC and begin coding, because the promotion ends on December 15th, 2011!
The Introduction of the Web-Based Marketplace: Last week the web-based version of the Windows Phone Marketplace was launched. This is great because it allows you and potential end users to find and purchase apps you’ve built onto their phones using a non-Zune experience. It’s also great for providing a way for potential users to see your apps that don’t even have the Zune software on their machines.
Windows Phone SDK 7.1 Launches: Also last week, we launched the go-live version of the developer tools for Windows Phone 7.5 and you can download the tools here for free . Even if you’ve built Windows Phone 7 apps already, it’s a good idea for you take a look at your app and update them to take advantage of the Windows Phone 7.5 features that were previously unavailable.
The Marketplace Expands by 19 Countries: When Windows Phone 7 launched, the Marketplace supported 16 countries. With the update of the Marketplace, we have included 19 new countries making it easier for your apps to reach an even larger audience.
In-App Advertising: In the past it was difficult to collect the revenue from in-app advertising using Microsoft’s Advertising Framework as it required you to provide a US non-PO box address for US tax regulations. That requirement is no longer required for Canadian developers using the Microsoft Advertising solution . This gives you a really great new option for monetizing your creations on Windows Phone.
A Change to the Bulk App Policy: One of the things that Microsoft is committed to is providing the end consumer with the best possible experience to find, download and enjoy apps and games. To ensure that experience remains extremely enjoyable, we have made some changes to our bulk app policies . In a nutshell, app publishers will be able to submit up to 10 apps in a day for certification. Likewise, publishers will limited to publishing 10 apps in a single day as well.

That’s just some of the cool stuff that’s been happening on the Windows Phone front. Excited? We certainly hope you are! So since you’re excited (and maybe have a couple of great ideas for apps that you want to build and get a free phone out of it), how do you start? Below are some steps that can get you from idea to published app!

GO DO's:
Download the Windows Phone SDK 7.1 . All the tools you need to start building apps and games are here.
Read the Microsoft Canada Windows Phone Development resource page . This page contains links to everything you need to start learning how to build amazing app and game experiences on Windows Phone.

Register as a developer on the Marketplace. Once you’ve developed your app, you’ll need to submit it to the Marketplace for certification and publication which requires you to be registered on the Marketplace (it’s a $99 annual subscription).
Build a second app or game, and submit both of your new apps/games to the Mango App Challenge !
Paul Laberge
Developer Advisor, Microsoft Canada Inc.

Read More
Posted in app, developer, mango, microsoft, phone | No comments

Wednesday, 28 September 2011

UIX and UX Tip -- A Note To CNN as Well

Posted on 16:25 by Unknown
Above is a screen shot of the new CNN beta video player. The reason that you don't see any video (yet) is because I got a screen shot of it while the video was loading. It was slow.

But slow loading is not my issue today. The issue is an all black screen. I have been using my laptop on the balcony all week long outdoors, and when you have an all black screen outdoors, it acts more like mirror than an all white background on a web page.

More and more people are viewing web pages on mobile devices while outdoors. It you want them to have a good User Experience, you will not use an all black screen like CNN is doing -- unless you want your web page to be used for a make-up mirror.

And yeah -- I know ... I know .... this blog is an all black screen. My excuse is that I used a Google template and this was the only one that fit my theme.
Read More
Posted in no black screens, UIX, User Experience, User Interface Experience, web page development tip | No comments

Sunday, 25 September 2011

Java - Convert Gregorian Calender to DateTime

Posted on 07:39 by Unknown
When programming in Java, I like java.util.GregorianCalendar a lot. It makes date and time manipulation easy peasy. For example, I have an application where I have to get the current datetime and add twenty minutes. It happens in a couple of lines:

GregorianCalendar gc = (GregorianCalendar) GregorianCalendar.getInstance();
gc.set(GregorianCalendar.MINUTE, +20);

Piece of cake. But when I wanted to take the manipulated time and cache it back to the database (mysql), I was stymied for a moment. The database field was a datetime entity, and for a few minutes I wondered how to convert Gregorian Calendar to DateTime.

I didn't realize the relationship between DateTime and TimeStamp, so it took me a few minutes longer to figure out. The piece of code that eventually worked was:

GregorianCalendar gc = (GregorianCalendar) GregorianCalendar.getInstance();
gc.set(GregorianCalendar.MINUTE, +20);
java.sql.Timestamp javaSqlTS = new java.sql.Timestamp(gc.getTimeInMillis());

Hope this helps someone Googling how to convert Gregorian Calendar into DateTime for SQL.


Read More
Posted in convert Gregorian Calendar to DateTime using Timestamp | No comments

Saturday, 24 September 2011

The Future of Computer Gaming

Posted on 07:06 by Unknown
One of the reasons that computer gaming is so popular and addictive, is that it offers some real excitement in the boring moments of a person's life. If one has a normal life, it can get pretty mundane. Playing a computer game stimulates the production of brain chemicals like dopamine and other endorphins like adrenaline. One can get used to the chemical rush produced by playing video games.

So computer games will push the envelope further and further to produce larger highs and more excitement for their players (and line their pockets with the profits). The ultimate computer game is casino gambling, but that has negative social connotations and it is dangerous in the fact that the odds are stacked against the player and one can lose all of your money.

Video games will get more and more realistic, until they cross the line into reality. We have already seen that with foursquare.com. However foursquare is too much reality in the fact that it misses the instant gratification of say a computer game.

So the new genre of computer games will ultimately combine reality, excitement, suspense, competition and a bit of gambling thrown in. That is the ultimate formula. I think that I have a recipe. Thank goodness that I am a coder.
Read More
Posted in how computer games will evolve in the future, The Future of Online Games | No comments

Wednesday, 21 September 2011

Escape The Ampersand

Posted on 08:42 by Unknown
I just spent several hours pulling out my hair trying to escape the ampersand character in an .aspx URL with parameters. The URL was a third party URL which needed to be encoded. I was working in JSP, JavaScript, XHTML, JSF, and JSTL.

It went something like this:

www.mydomain.com/login.aspx?name=Username&Password=password&accountNo=AcctNo

I constructed the string and tried to escape it with a "\". Of course, I quickly realized that it was illegal. There are only a few things that work with that escape character.

Then I tried the '& amp;' thing. That didn't work.

Then I tried the '% 26' thing. That didn't work.

I imported the URLEncoder and fed the string into that. It didn't work.

I tried using the URI constructor with the 5 input elements. I have more than 5 inputs and it kept throwing a path exception. Nothing seemed to work.

I tried most things and they didn't work.

What finally worked was the \u0026 thing.

In the JSP the URL looks like this:

String url = "www.mydomain.com/login.aspx?name=Username\u0026Password=password\u0026accountNo=AcctNo";

Hope this helps somebody.
Read More
Posted in escape ampersand, JSF, jsp, url, амперсанд | No comments

This Caught My Eye -- Investigating Jurors Over the Web

Posted on 07:44 by Unknown


Check out how Facebook and social media is being used to investigate jurors.
Read More
Posted in data privacy, innovative uses, social media | No comments

Tuesday, 20 September 2011

Yahoo Mail is Down?

Posted on 08:08 by Unknown
I haven't been able to access Yahoo mail today. That includes all permutations and combinations of Yahoo mail such as rocketmail. It started out very slow, but eventually a message showed up when you clicked on it in the in box. Then it started timing out. Finally, I got the server hangup message.
Read More
Posted in mail, rocketmail, server hangup, unavailable, Yahoo | No comments

Saturday, 17 September 2011

Java Server Faces Redirect

Posted on 19:18 by Unknown
I have been created a JSP/JSF web application and a certain aspect of it was coded in XHTML using JSF and Facelets. It has been giving me no end of grief. On every page, I do a check of a session attribute to see if the person is logged in or not. It is a simple check. I have a page that is included with every JSP page that contains a little scriplet that queries the session attribute. If an attribute called "Access Granted" is true, then the person is logged in and gets to view the page. If not, they are re-directed to the index page which is the login page.

Here is the normal code that works great as a scriplet:

<%

//If a user bookmarks a page, then this check is performed to see
// if they are properly logged in. If not they get re-directed
// to the login page.

// The way that it is done, is that the login validation sets an
// Access Granted attribute.

String accessGranted = (String) session.getAttribute("AccessGranted");
if(accessGranted == null)
accessGranted = "false";
if(accessGranted.equalsIgnoreCase("false"))
response.sendRedirect("index.jsp?NotLoggedIn=True");
%>

Simple stuff. Then I had a page coded in XHTML and I used the ui:include tag:


The tag worked, but the page didn't. The scriptlet tag <% some code ... %> fails because it is not well formed html. It is not closed like a regular tag "/>".

So I rewrote the page in well-formed XML. I added the JSTL jar so that I would have access to the c:if conditional tag and the c:redirect tag. One can always get a session attribute with the following syntax:

"#{sessionScope['attribute_name']}"

OK, so I use the conditional tag in the jstl core to see if the session attribute was true, and if not, then re-direct to the index page. Piece of cake, right? Wrong.

After dicking around for a long time, I had an error message that said something like the tag was defined in "http://java.sun.com/jsp/jstl/core", but no class could be found. It was after a bit of hair pulling that I found out that the c:redirect tag was not supported by facelets.

A lot more dicking around ensued until I found this javascript work-around that enables a JSF redirect. Here is the code in its entirety:




Having a problem as this blog wants to parse the tags in the code. Replace '<' with < and '>' with >.




'<'ui:composition
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html" '>'

'<'c:if test="#{!sessionScope['AccessGranted']}" '>'

'<'form jsfc="h:form" id="redirect"'>'
'<'a jsfc="h:outputLink" value="#{'index.jsp'}" id="path" '>''<'/a'>'
'<'script type="text/javascript"'>'
var link = document.getElementById("redirect:path");
location.replace(link);
'<'/script'>'
'<'/form'>'
'<'/c:if'>'

'<'/ui:composition'>'



It works perfectly. However, JSF is supposed to uncomplicate your coding life. It just did the opposite for me.
Read More
Posted in how to redirect, JSF, redirect | No comments

Thursday, 15 September 2011

Website Traffic Faking

Posted on 19:49 by Unknown

There is a new trend in town, and its traffic faking. It happens two ways. The first traffic-faking scenario is when a website has Google Adsense on it, and Google pays per page impressions. The pay for click is pretty good, but Google has ways of detecting fraudulent clicks. However they pay a penny or two for a certain number of page views, and this is what traffic faking targets. It is relatively easy to spoof unique page views, but a heck of a lot harder to spoof the controls that Google puts in for fraudulent clicks. So this type of traffic-faking hits as many times per hour as programmed, and the pennies add up for page views.

The other type of traffic faker is aimed at people who check their web analytics. For example, I have a blog based on philosophy, and I noticed that I was getting referrals from an ad-laden website peddling tooth-whitening products. It appeared that they had a referring link to my blog. As it turns out, I went to the page, and there was no link. They generate traffic to their pages through sheer curiosity.

On another one of my blogs, a company selling colored toilet paper used a traffic faker. I usually go to their websites, and hit the contact button, and used terms related to lower anatomy and sphincter muscles, and tell them forcefully to stop traffic faking. I don't know if my scatological references really work, but it makes me feel better.

One would think that the smart people at Google would work out a traffic faking filter. I think that I will go and ask them to do so. I will let you know what they say.
Read More
Posted in bogus, fake traffic hits, scam, traffic faker | No comments

Monday, 29 August 2011

Nokia Site Hacked

Posted on 05:15 by Unknown
I am a registered Nokia Mobile Developer. I got this email from them late last night informing me that my information has been compromised:


You may have seen reports or received an email from us regarding a recent security breach on our developer.nokia.com/community discussion forum.


During our ongoing investigation of the incident we have discovered that a database table containing developer forum members' email addresses has been accessed, by exploiting a vulnerability in the bulletin board software that allowed an SQL Injection attack. Initially we believed that only a small number of these forum member records had been accessed, but further investigation has identified that the number is significantly larger.


The database table records includes members’ email addresses and, for fewer than 7% who chose to include them in their public profile, either birth dates, homepage URL or usernames for AIM, ICQ, MSN, Skype or Yahoo. However, they do not contain sensitive information such as passwords or credit card details and so we do not believe the security of forum members’ accounts is at risk. Other Nokia accounts are not affected.


We are not aware of any misuse of the accessed data, but we have identified that your email address was in one of the records accessed, though it contained none of the optional information, so we believe that the only potential impact to you may be unsolicited email. Nokia apologizes for this incident.


Though the initial vulnerability was addressed immediately, we have now taken the developer community website offline as a precautionary measure, while we conduct further investigations and security assessments. We hope to get the site back online as soon as possible and will post developments there in the meantime.


If you have any questions on this, please contact Nokia.developer-discussions-support@nokia.com.


The Nokia Developer website team.




Somebody has to do something about security. There has got to be a better way for authentication.


Read More
Posted in nokia, nokia developer, nokia website hacked | No comments

Monday, 22 August 2011

Classmates.com -- Another MySpace in the Making?

Posted on 05:30 by Unknown


A few years ago, I signed up on Classmates.com. I did it out of pure curiosity to find out where my peers in high school ended up. I enrolled in the free registration and had my name posted on my school page and my year of graduation.


They had all sorts of features such as someone coming by and signing your guestbook, or sending you a message. Of course to read who signed your guestbook, or to open your messages, you had to pay a monthly premium. I never did pay the monthly premium. I was never that curious.


Then along came Facebook. It was easy to find your classmates with a recent picture, and if their privacy settings were low, you could find out who they were married to, who they were working for, and in general determine that they didn't surpass you in the game of Life. However in my case, my classmates are respected members of the Mayo Clinic, top universities, have played professional sports and made my resume look like I was an under-achieving failure.


Linked-In is even better at connecting with people from the past. I've noticed that Linked-In suggests possible connections of people that I have never emailed, but have Googled. How does that happen?


Anyway, Linked-In has enabled me to connect with a family member who didn't want to be found. It is superb at finding out degrees of separation between you and anybody.


So where does that leave Classmates.com. I regularly get spam from them, begging me to pay to read to see who signed my guestbook four years ago. The spam sounds more and more desperate.


In addition, Classmates.com is now trying to suck me into a "Memory Lane" thing where it matches movies, music and trivia to the year that I graduated. That isn't going to induce me. I don't need reminders of how old I am, and thanks to iTunes and others, I already have all of the music from that era that I would ever want.


So I am thinking that Classmates.com is another MySpace in the making. It can't be sustainable when Facebook and Linked-In do the job of connecting people much more efficiently with a bigger information load. If there is such a think as stock in Classmates.com, now is the time to sell short, if you haven't already!
Read More
Posted in classmates.com, declining membership, Facebook fatigue, myspace | No comments

Thursday, 18 August 2011

How A Geek Would Write A Gossip Column

Posted on 06:12 by Unknown
using package.urination;


public No_Class
{


public void BladderinPublic(String name)
{
if (name.EqualsIgnoreCase"Gerard Depardieu")
{
if (context==Integer.Parse(flight_Number))
{
try
{
_P = onTheFloor
}
catch (Exception stewardessYelling)
{
System.Out.Printline("Drunken Pig");
}
}
}
}
}
Read More
Posted in geek gossip, gerard depardieu, pee on a plane | No comments

Wednesday, 10 August 2011

The End of the Line for the Business Intelligence Cube?

Posted on 04:19 by Unknown
I was deep in conversation with a tech-savvy epidemiologist at a dinner party. He is a physician who is the head of an NGO (non-government organization) with offices in various countries on a few continents. He happened to mention that he had over a million record sets that needed data-mining in a very specific way.


His organization had ascertained that the easiest way to convey epidemic data to policy makers was via a 'weather map' where the geographic areas that were in the greatest danger would progress from green to yellow to red when a full blown epidemic developed. To that end they created a data-mining tool for reports. However there was one major flaw with the tool. It could only show results after the fact and didn't perform predictions. Predictions are important for epidemiologists.


I suggested that what his data mining gizmo needed was a Bayesian Inference Engine. Bayesian Inference principles are used for logical inference and prediction on imperfect data sets. A Bayesian operation takes historical data, and calculates the probabilities of a number of events of happening when their predecessor events have taken place. Bayesian inference is a tool in the arsenal of artificial intelligence. It is the perfect tool for running predictions on evolving data. In an epidemic situation, data evolves rapidly. One cannot wait until it is all said and done to run the analysis.


I described to my medical friend how one would make a real time inference engine. Before any row of data is inserted into a database, an inference factory instantiates an inference object. The inference object is used to either look up the probabilistic meta-data for the permutations and combinations of the columns in the row of data (it examines each data dimension) and recalculates the inferential probability with the input of the new data. The output is filtered and deposited into a results table.


Then the thought struck me, that if this function was built into the database engine, there wouldn't be a lot of need for business intelligence cubes that require vast amounts of ETL (Extract Transfer and Load) data dimensioning, data marts and obscure SQL statements the size of a novel.


All of the data would be digested in real time, and mined and refined in one shot. The inferential factory in the database engine would calculate in real time on every data insert, and various filters would be defined for reporting.


With the exabytes and exabytes of data that we are generating, this could be one way of handling the tsunami of data without being overwhelmed by it. And IBM would be awfully sorry that they bought Cognos Business Intelligence Cube software.


Read More
Posted in Bayesian inference, Business Intelligence Cubes, Handling large amounts of data | No comments

Sunday, 7 August 2011

What the Chinese Are Looking To Invest In

Posted on 05:15 by Unknown
It is interesting to see what the Chinese where to place investments in terms of technology.

I belong to a Mobile Technology group online, and today, the following advertisement was posted:


Looking for possible acquisition targets in US & Europe

A large Chinese investment company is looking for possible acquisition targets in mobile applications, games, internet, eCommerce, mobile & online advertising, 3D technology, animation, comics and traditional media such as newspaper and magazines. The company must be profitable. Targets size between $10m - $100m.




What I find interesting is that they want to invest in newspapers and magazines as well as technology media -- these are instruments for spheres of influence. This has the potential of being frightening to Americans, considering that the Chinese state probably owns this investment company.
Read More
Posted in chinese investments, technology, what the chinese are searching for | No comments

Friday, 5 August 2011

It's Time -- A New Plug-in Filter for Browsers Needed

Posted on 10:56 by Unknown
I am starting to get a little ticked off at how much data is being collected on me when I surf the internet. Websites often ask for authentication data including name and birth date, which they match to an IP address and can get a geographic location. For websites that I deem do not need that information, I always give them an alias, fake birthday and I use a throw-away free email address.

However, through various means, many companies collect browsing data, referrers and all sorts of meta-data, browser information etc. that can be used to pinpoint you. I say that it is time to stop the madness. It is time for us software geeks to take back the internet. I don't want to have to use a proxy server to browse the internet. I say that it is time for a new privacy plug-in for the browsers.

This privacy browser, first of all, would effectively filter out the ads as efficiently as the old incarnations of Firefox did. But it would do much more.

It would deny all http calls to third party sites not in the visiting domain. It would filter out third party cookie information. It would filter out browser information. It would prevent the reading of browsing history. It would deny any app from reading my email address or my contacts. It would not send any data to any domain not in the visiting domain.

Certainly it is not in the best interest for any organized company to write this browser filter, so it would have to come from the community of programmers who are concerned about online privacy. It is certainly time to take this privacy issue into our own hands.
Read More
Posted in browsing history, data privacy, determining user behind browser history, Internet, plugin, total privacy, Ultra data privacy | No comments

Sunday, 31 July 2011

Cosmological Cabbage: What the Chinese are searching for ??

Posted on 08:53 by Unknown



What the Chinese Search Engine Baidu is searching for ??: "This blog just started getting hits from a Chinese search engine. The Chinese are regular visitors here, especially when I diss the Commie hackers and dog eaters, but lately I have been getting hits directly from the Baidu Search Engine in China. Guess what for ???" Read more
Read More
Posted in baidu, China, Chinese Search Engine, what the chinese are searching for | No comments

Friday, 29 July 2011

IE Users are Stupid, and Microsoft Knows it.

Posted on 13:05 by Unknown
(Click on the pic to make it larger)

I have several email accounts. One of them is Hotmail. When I sign out of Hotmail, I usually land in the msn.com site. Lately that has changed. I am landing a site that begs me to download Internet Explorer.

The page asks the question Why? as to why should I download IE8 or IE9 . The reasons they give are:
  • Built-in security features
  • Fast Page and Tab Loading
  • Integrated Bing Search
  • Bing and MSN homepages.
As for the security features, every knows that because of its tight integration to Windows, IE is the least secure of all of the browsers. Using IE is like going to a ghetto brothel and having unprotected sex and hope not to get STDs (viruses, malware) or AIDS (Blue Screen of Death).

But if you take a look at the other features, they have integrated Bing. Bing is their slow-learner search engine compared to super-achiever Google. Who the hell wants that integrated into a browser to slow it down?

And the only reason ever that I visit MSN is that my hotmail account takes me there. I would never go on my own volition.

Microsoft thinks that I am dumb enough to fall for this. And the interesting thing is that the graphics for this browser is a bloated whale.

That's not all. It's official. Internet Explorer users have been proven to be dumber than the rest of us.

The survey by AptiQuant, a Vancouver-based Web consulting company, gave more than 100,000 participants an IQ test, while monitoring which browser they used to take the test.
The result? Internet Explorer users scored lower than average, while Chrome, Firefox and Safari users were slightly above average.

So there you have it. It validates my view that Microsoft users are as dumb as a post. I can hardly wait until the scientific community proves that using Windows proves that you have a learning disability and using MSSQL, Access and Windows Servers means that you are less evolved than us cognoscenti.

Read More
Posted in dumb ass, IE users stupid, intelligence test, Internet explorer | No comments

Tuesday, 26 July 2011

The Semantic Web and a Possible Rules Engine that Rocks

Posted on 05:20 by Unknown
The entry below on the putative consciousness of Google got me to thinking about "The Semantic Web". It was/is an initiative of W3C to make all web pages machine readable.

A good example of making dumb web pages smart is the "Apples for Sale" example. Picture this. An HTML web page has apples for sale. It is a simple page. There is a picture of an apple, a piece of text that says "Apples For Sale". Another piece of text that says $1.00 and another piece of text that says "Each". A machine reading that web page HTML would not know that it was a commerce page offering something for sale. It would not know that $1.00 is the price. It would not know that apples is the object being offered for sale and it would not know that each is the unit relating to price per unit.

The Semantic Web would change all that. It would mark-up a web page to associate all the stuff with the HTML so that a machine could sort through it.

A few years back, the "next big thing" was a rules engine. A rules engine would be incorporated into an application, and if the business rules change, you wouldn't have to change your application. You would just change a rules file that the rules engine read.

I used a rules engine for a network policy tool that decided which server would provide what services in a LAN. I expected rules engines to progress a lot further, but they have become sidelines rather than mainstream.

How a rules engine fits into the semantic web, is that a Rules Interchange Format is part of the infrastructure of the semantic web. One must agree on rules if machines are to read and understand web pages. Rules engines can be predictive or reactive (forward chaining or backwards chaining). For example, a forward chaining rules engine calculates loan risk during a credit application while a backwards chaining rules engine tells humans or other machines when inventory items are getting low.

Rules engines have not been widely used, and in my shortsighted humble opinion, it is because they are bulky, non-intuitive and put a performance hit on applications. However, I may have an algorithm for a rules engines that rocks.

Consider the following code. It is part of the The Rule Interchange Format (RIF) which is the W3C Recommendation:

Prefix(ex )
(* ex:rule_1 *)
Forall ?customer ?purchasesYTD (
If And( ?customer#ex:Customer
?customer[ex:purchasesYTD->?purchasesYTD]
External(pred:numeric-greater-than(?purchasesYTD 5000)) )
Then Do( Modify(?customer[ex:status->"Gold"]) ) )

The RIF is entirely based on "If ..... (some condition) .... then .... (do this)". What this bit of Rules Interchange Code does, is for a commercial entity to check each customer's year-to-date purchases and if they are greater than $5,000, then upgrade their status to "Gold".

The thought struck me, that one could have a rules engine that operated directly on the database. It would parse the RIF language and automagically convert it to SQL. (I will race you to the patent office on this idea).

My rules engine would create an SQL statement that would create a cursor with "Select * from CustomerTable where "YearToDate" total > '5000.00'. Then I would loop through the cursor and update the status to gold.

The great thing about this, is that this rules engine that rocks, would revolutionize data-mining and database reporting. The more that I think about it, the more that I am convinced that this could be the NEXT BIG THING in data mining.

And as for the Semantic Web, in my opinion it is a no-go. Who is going to mark-up a few billion pages that are already out there? Also the entire history of the Internet won't be re-worked so it will be useless to the semantic web. I see this function being done at a single point at the web server level, which will have context engines to recognize stuff and mark up the page as they serve it up. Now that is a workable plan.

I'd write more on this, but I have to open up an IDE and test this rules engine idea. Later.
Read More
Posted in datamining, new SQL functions, rules engine, semantic web, the next big thing | No comments

Friday, 22 July 2011

I'll Bite -- The Google Search Engine May Be Conscious

Posted on 09:58 by Unknown

I dabble in AI (artificial intelligence) and am known to spooge some AI code -- mainly playing around with multi-layer perceptrons and neural nets.

My own studies in university (highly science based) has told me that consciousness is an over-developed tropism from millions of years of evolution. A more mundane example of tropism, is that a plant stem always grows towards the light, while roots always grow down (phototropism and geotropism).

And then along come these guys. They posit that the Google search engine displays some sort of consciousness.

They are on Twitter as @GoogleConscious and they are trying very hard to go viral. That is how I came upon them. They followed me. I figure that anyone that follows me, is as pathetic as I am in going viral and getting followers. But I decided to check them out.

When the above video first started, it didn't exactly grab my attention. I couldn't make the connection of plants being the google of natural medicine in the rainforest. But I persisted and the interest factor increased in the video. I now consider myself at least an auditor instead of a devoted disciple.

To see if Google really did have a consciousness, I decided to test it. I googled the phrase "I hate google". I got a mixed bag of results, both laudatory and not-so-laudatory to Google.

If Google was truly conscious, it would have refused to return any results for the term "I hate Google". But then again, I may be confusing sentient with conscious. Or ... it may be silently plotting my revenge and strike when I least expect it.

If you want to stretch your mind, watch the video or visit www.googleconsciousness.com


Update: The guys behind this Twittered me with the following message:
thx 4 write up, but a correction. 'want it to go viral'? ha! that horse is out of the barn - over 130k views, w/ few 100 daily

Read More
Posted in conciousness, google, is the google search engine concious, Multi-Layer-Perceptrons, Neural Nets | No comments

Big Brother Google Keeps Reading My Browsing History Too

Posted on 07:09 by Unknown
I just had an amazing epiphany on how Google Adsense and Google advertising works, and I can't say that I am thrilled. Google reads my browsing history to serve up ads to me. I am not sure that I like that!

This was visibly demonstrated to me this morning. I was reading an online forum about how a politician may be suffering from Vitiligo. I didn't know what it was. I had to Google it. It turns out that Vitiligo is a condition where you lose pigmentation cells in your skin, and you get big white blotches that will never tan again.

The next thing that I did, was close the tab and navigate to another blog. And what do you know -- the advertisement next to the blog was showing me a treatment for Vitiligo. Coincidence -- I think not.

Big Brother reads my browser history to try to sell me stuff. It's a good thing that I wasn't googling pictures of hairy French babes.
Read More
Posted in adsense, big brother, browsing history, google, google ads | No comments

Thursday, 21 July 2011

See if you can see the difference between .AVI and .WMV files -- Direct Comparison

Posted on 03:23 by Unknown

Did you ever wonder what the real difference is between AVI and WMV movie files?

See if you can see the difference. Here is the same movie in both AVI and WMV. First, we have .avi:


The .avi file is 31.3 megabytes in size. Here is the .wmv file:





The .wmv file is only 18.5 megabytes in size, and is a proprietary Microsoft format. WMV has a higher compression and is not very good for editing.

After I uploaded these movies, it occurred to me that maybe Google converted them to flash, however perhaps the difference in a lossy compression format would be visible as there were different input parameters.

You be the judge.
Read More
Posted in .avi, .wmv, difference, movie files, video, visual comparison | No comments

Tuesday, 19 July 2011

Facebook vs Google+ or Google Circles --Creating the Ultimate Social Network

Posted on 12:30 by Unknown
In a previous blog post, I predicted the eventual demise of Facebook. This article further explains why I think that.

To start with, Facebook introduced a whole plethora of new paradigms in social media. They were innovative. They created new ways of interacting with people. They revolutionized social media.

For example, we can maintain relationships in a lazy fashion by pressing the "Like" button. In that fashion we can "connect" with someone (in some sort of fashion) in less than a second.

We can have more "friends" than in real life. Indeed, Facebook (and MySpace) have challenged the definition of friend. And they have redefined how we interact with them.

But in this ever-changing world, paradigms change over night. A new paradigm is introduced, it goes viral, reaches a tipping point, creates a critical mass and suddenly it makes unwittingly billionaires out of its inventors. Everyone thinks that this is the end of the story. It's not. What was created, eventually dies.

The entire life cycle ends in death. MySpace suffered old age and near-death dropping in value to a tenth of what it sold for. Nothing is forever, and cycles are a lot quicker in a highly inter-connected world.

So, did Google create a better mousetrap with Google+ or Google Circles? I have not seen Google+ or Google Circles, but it seems that it is more closely in line with non-virtual real life social networks.

With Facebook, a friend has full privileges to my online life, unless I undertake an onerous task of specifically blocking specific people for instances of specific things. That's not how real life operates.

The knowledge that I disseminate about myself in real life depends on the audience. For example when I travel on business through my home town, several hours away, I may stop in and see one of my siblings, but I do not want them to tell my parents who live in the same city that I am there on that occasion. My mother would insist of making a meal, and keeping me there for hours when I am time constrained. I prefer leisurely planned visits so that I can take my time and enjoy catching up with my parents. So, for that particular day, I want a certain sibling to see my status but not my parents. At other times, I want my parents to know that I am coming. Connections and statuses are dynamic depending on circumstance and Facebook cannot allow for that easily.

Another example is that a young niece of mine wants me to see some prom pics, and pic of her new boyfriend, but doesn't want me to see comments about him that her friends make.

All of the content has to have the ability to be controlled irrespective of who belongs to what circle. Generic circles with generic privacy settings, of family, friends, co-workers, etc do not work all of the time.

Human nature is such that we are all somewhat egotistical and narcissistic. So even though I know that I am in the circle of co-worker with one of my fellow cubicle drones, I tend to think that I am his/her most important friend, and that person does absolutely nothing to dispel that notion.

The closer that any new social network mimics this intrinsic human behavior, the more successful that it will be, and it will supplant the older paradigms.

So die Facebook die. You have been good to us, but unless you fundamentally change, you are on the way to the boneyard. Is Google+ the new way to go? Maybe, however as a humanist I would like to believe that a bunch of engineers cannot come up with the next best thing since sliced Facebook. It would have to be some unkempt guys spooging code for the fun of it, and not some dark force of dominance who's motto is "Do No Evil".
Read More
Posted in Facebook fatigue, Google Circles, Google+, is facebook dying, The Real Social Network | No comments

Monday, 4 July 2011

Facebook -- Dead Man Walking

Posted on 10:30 by Unknown
A couple of years ago, it would have been heresy to say that MySpace was irrelevant.

It is now a ghost of what it was, and it IS irrelevant. Facebook has moved in and trounced it. However, I will posit that Facebook is dead man walking and they don't know it.

Facebook is losing members. Facebook is losing relevance. Facebook will go the way of MySpace. I can hear the gasps now.

In the technology sphere, what goes up, must come down. Remember how Lotus Notes once dominated the market space. Remember DEC -- Digital Equipment. Let me take you further back. Lowell Massachusetts was the home on Wang -- a company that went from zero to the stratosphere with dedicated word processors. They went the way of the dodo bird.

Those crazy valuations of Facebook that one is hearing about should be a sign to investors. Get out now, and sell short. You won't regret it.

What will come next? I don't know. But what history teaches us, that fad cycles are getting shorter and shorter, and a plethora of new offerings are coming to the market daily. One of them will reach the tipping point, go viral, and make a new billionaire, leaving the oldies (of less than ten years) in the dust.
Read More
Posted in Facebook fatigue, is facebook dying, myspace | No comments

Saturday, 25 June 2011

Ultra secure, Data Privacy and Secure Storage

Posted on 20:30 by Unknown

This is a reprint from a White Paper about "My Privacy Tool".

Data privacy is a growing concern in this day and age. As the Internet evolved, it has become an incredibly important facet of our lives for communication, transacting business, socializing and entertainment.

Our electronic data and personal information is trapped every day in multiple locations through activities as signing up for a social network account, buying items online, or just surfing the web. We are tracked, recorded and analyzed continuously as we use the Internet.

Even more problematic in the privacy domain, is that various agencies, governments, businesses and media are quite interested in gaining access to our electronic data, documents and communications.

India and several countries in the Middle East have announced that they are banning Blackberry because their intelligence agencies cannot read the communications.

The United States, in its war on drugs and terrorism, has sweeping powers of electronic surveillance. The intelligence agencies currently archive every single email sent over the Internet, and automated software robots troll the emails for keywords.

In early September of 2010, the Obama administration announced that they were seeking to further the government’s ability to tap into communications, by having providers like Skype and Blackberry build a back door into their software so that the government could monitor communications.


The "My Privacy Tool" solution is a secure, encrypted paradigm that incorporates email, instant messaging, data storage in a document repository and hot back up for documents on a computer.

The way it works, is that the application creates an encrypted tunnel to a storage and server farm in a trusted offshore jurisdiction (You can have your own server hosted there, you can use it as a service and have it hosted on an application hosting service, or you can have the server on your own premises.)

The encryption in the "My Privacy Tool" system is twofold. The first level of encryption is the tunnel which uses SSH and SSL encryption. SSH is a network protocol that allows data to be exchanged using a secure channel between two networked devices. Secure Sockets Layer (SSL), are cryptographic protocols that provide security for communications over networks such as the Internet. Then the documents are further encrypted by AES encryption. In cryptography, the Advanced Encryption Standard (AES) is a symmetric-key encryption standard adopted by the U.S. government.

The company that provides the "My Privacy Tool" operating infrastructure has been providing gateway mail services over fifteen years to international clientele.

The secure tunnel over the internet is created when the user starts the application. The application cannot be started without a USB key, which contains the encryption tools necessary to connect and be validated. Each user is also provided with a panic password. If the user is forced to divulge his login credentials, he/she can provide a panic password that when used, insulate the data and the session is directed to an innocuous place with artificial data. Removing the USB key also causes the application to quit with no ill effects should the user require instant privacy.

Once the tunnel is set up, the user enters their password, and has access to secure communications and storage.

The email is not regular SMTP email, or email that is broadcast across the internet. When an email is sent from one person to another, it is merely put into an inbox behind the bastion server in the bunker that guards against intrusion.

Users wishing to check their email, must tunnel into the bunker and check their inbox. Nothing is ever broadcast over the internet like regular email.

The instant messaging (chat) works in the same manner as the email, in terms of security. Both users tunnel in, and if they are both connected, they can chat. Chats transcripts may be saved.

The communications (email & instant messaging) algorithm is based on the Swiss Trust paradigm that enables anonymous communication. Each user has three account numbers that he may give out to other "My Privacy Tool" users. These numbers all point back to the user. The other user then creates a contact nickname for this person using the given number. The nickname or alias can be nominal or random. Also, if the account number is disclosed by one party only, the person receiving the account number may communicate with that person without ever disclosing his/her identity. The system keeps track of the users while routing the messages.

The next piece of the solution is the secure document storage. It is a repository with the capability of created private and shared folders. Each user must be specifically assigned to a folder by an administrator before he or she has access to it.

There are various levels of access. The first is a data contributor. A person may create a document for the enterprise, and has the ability to upload it to a shared folder. But that person does not have the ability to download documents or delete documents.

The second level of trust is the data user, who has the ability to upload documents to shared folders, download them to edit them, and upload them again. This person has no delete privileges.

The next level of trust is the ordinary user who can create his/her own folders, and upload and download documents to them. They may also contribute or download documents to shared folders if they are authorized to do so by the administrator. They can delete documents as well.

The administrator is responsible for re-keying users that have lost their USB keys. He/she also locks out users who have been terminated by the organization, and keeps track of the organization through the contacts list.

The data storage area is a generous 100 GB per user. Not only is the tunnel encrypted, but the data is as well, as it is stored in a database. As a result, it is not readable to hackers, or to anyone else for that matter.

The last feature of the "My Privacy Tool" tool is the hot backup function. A user can list up to 50 documents, and the system automatically checks to see if they have been modified on the host computer. If so, they are automatically backed up without user intervention.

Benefit 1
"My Privacy Tool" is the most secure way to transfer a document electronically over the internet.

Benefit 2
"My Privacy Tool" is the most secure way to communicate electronically either with email or instant messaging.

Benefit 3
"My Privacy Tool" is a powerful enterprise tool, yet can be used by an individual as well, for privacy.

Benefit 4
"My Privacy Tool" permits travel with an empty laptop. When a document is required, it is downloaded from the Nassau bunker, edited, printed, and uploaded back to the server.

Benefit 5
Because there is no SMTP stack, multiple copies of emails or communications are not kept all over the system. There is no central place that keeps email and thus when an email is deleted, it is gone. An added feature is that "My Privacy Tool" is not susceptible to email and chat viruses, because it does not use the vulnerable Microsoft paradigm that viruses and Trojans exploit.

Benefit 6
"My Privacy Tool" can be used from anywhere in the world where there is an internet connection.

Benefit 7
"My Privacy Tool" can be used to deliver ultra-private monthly statements or other documents that require care, trust and privacy.

Benefit 8
"My Privacy Tool" can save hundreds of dollars in courier fees for the transmission of private documents.

Benefit 9
"My Privacy Tool" provides your clients with the knowledge that you are vigilant of their privacy needs, and have taken steps to insure their privacy.

Benefit 10
"My Privacy Tool" is a revenue center for your business. It can be marked up, or included with premium services which will generate an additional revenue stream.

Summary
"My Privacy Tool" is not meant to replace your regular document repository and communications systems. It is intended for private, sensitive documents. It enables travel with an empty laptop and protects against email & chat viruses, theft, loss of computer, or unwarranted seizure of your computer. "My Privacy Tool" is the first integrated tool to do this. It is a necessary tool for complaint privacy users.

This concept is an incarnation of the non-cloud cloud storage concept.

Note: This tool is supplied to bona fide entities and corporations after KYC is established, and is not open to individuals or the general public.


For further information, please send an email from a non-free corporate account to DataPrivacy-at-mail.com. (Replace "-at-" with "@")
Read More
Posted in data privacy, data storage, non-cloud cloud, total privacy, Ultra data privacy | No comments

Friday, 24 June 2011

Google Image Search With Image Test

Posted on 05:58 by Unknown
This article deals with testing Google new image search using an image.


Google has a new feature in their image search where you can drag and drop an image and it will find like images. I decided to test it with an "average" image of an underwater shot of a brightly colored little fish as pictured above.

I dropped the image onto the search bar and waited a few seconds for it to upload. Then I got the following result.

Google thinks that the images are similar. Obviously it didn't recognize the fish or the coral reef or the fact that it was an underwater picture. Some of the results returned were of a flower, art, desserts and multi-colored mosaic things.

Obviously it picked up yellow as the primary search term and hoped that what it produced was also yellow. This somehow reminds me of a dumb blonde on a multiple choice test.

I decided to try it with something else. I downloaded a picture of Albert Einstein.

I then renamed it to something silly so that the name of the pic wouldn't give any clues. Google knew that it was Albert Einstein right away. They probably developed the algorithm using famous people and Einstein is one of them.

Then I change the image by altering the horizontal to vertical ratio, and used the eraser tool to erase the background. I used a Gimp filter to render lava designs.


In the web portion,it said best guess was Albert Einstein, so it was pretty good. Here is the visual results.



Winston Churchill is numbered among the results as well as Superman and George Bush. George Bush ain't no Einstein. However, Einstein does show up in the results.

The tool is getting there, but not quite there yet.

I was thinking of uploading my own pic to see what the results would be, but I am afraid that Google would keep it forever and use it as a test case. Even though there motto is "Do no evil", I still don't trust them with all of my information.
Read More
Posted in drop Image, Google Image Search, how google image search works | No comments

RugbyMetrics Queries

Posted on 05:46 by Unknown
I have been getting some queries via comment postings about RugbyMetrics. Some people have even been trying to find a trial download. I will be posting some sample results and white papers here shortly. In the meantime, if you have any queries, please drop me a line at:

rugbymetrics-at-gmx.com (substitute "@" for "-at-").
Read More
Posted in performance analysis rugby, rugby, rugby analysis, rugby performance, RugbyMetrics | No comments

Tuesday, 21 June 2011

Who Was At The Computer -- Solving a Whodunnit

Posted on 05:22 by Unknown
I was idly watching some of the Casey Anthony murder trial being streamed on the Internet. She is charged with brutally disposing of her bothersome two-year-old child who was impinging on her party life.

One of the expert witnesses was an ex-police officer turned geek who wrote the program called "Cache Back". What the program does, is recover the browser cache of the web history after it has been deleted. He discovered that the browsing history contained terms like "chloroform" and how to kill people.

The defense lawyer stands up and tells the computer expert that there is no way that he could tell who was at the keyboard when the queries were made. The computer expert had to agree. Well, if they had geekazoids like me, there is away to state the probability of who was sitting at the computer.

Consider the following equation:



This equation is the basis of Bayesian inference. It is one of the keystones of data analysis and artificial intelligence. A quick explanation of the terms is as follows:

  • H represents a specific hypothesis, which may or may not be some null hypothesis.
  • E represents the evidence that has been observed.
  • P(H) is called the prior probability of H that was inferred before new evidence became available.
  • P(E | H) is called the conditional probability of seeing the evidence E if the hypothesis H happens to be true. It is also called a likelihood function when it is considered as a function of H for fixed E.
  • P(E) is called the marginal probability of E: the a priori probability of witnessing the new evidence E under all possible hypotheses.
The theory behind this concept is the idea of querencia. When people log onto a computer, they usually follow a core of usual, habitual persistent URLs. They check their email, Twitter and Facebook page, and then perhaps check the weather or news or such.

So in this methodology to determine who was sitting behind the computer for a particular history, one examines the whole history. One finds the sequences where there is no doubt of the supposed user in question. This could be determined by the URL of a Facebook page or email.

Then one assembles a statistical model of the URL web pages visited, and calculate the variance from the Venn set of URLs as well as the deviation from the usual pattern.

By calculating probabilities from the browsing model, one can then take an unidentified set and using Bayesian inference, determine whether that user had the probability of being the unidentified user.

This is by no means a smoking gun of proof, but it can add one more piece to a circumstantial change of evidence. It can answer the question of "Who was using the computer" with a degree of probability.

This would also be a useful system in a corporate environment to determine what users had breached company policy in visiting banned websites.
Read More
Posted in Bayesian inference, determining user behind browser history, who was at the computer | No comments

Sunday, 19 June 2011

A Standard For Twitter Hashtags

Posted on 05:32 by Unknown
I follow Bath Rugby players on Twitter, among other things. I notice that some of the team are avid users of Twitter. They are also quite inventive with hashtags. Hashtags are much more than search tools. They can be cleverly used to create innuendo, a wry comment, a joke, or a commentary all under the guise of just being a hashtag.

However, I do propose a standard for hashtags. It is quite simple, and one that we use in computer programming for variable names. The standard is this: Every time that you come to a new world, use a capital letter. It vastly enhanced the readability. It could also change the meaning:

#psychotherapist

or

#PsychoTheRapist

So if everyone would adopt this readability standard for Twitter hashtags, the world would become a slightly less confusing place, and we would be doing our part to fight chaos and entropy.
Read More
Posted in hashtag, readability, standard, Twitter | No comments

Friday, 17 June 2011

Lately Skype is a piece of Crap -- Skype virus???

Posted on 05:59 by Unknown
I am having serious issues with Skype. I travel back and forth between the tropics, and I have an XP desktop in the tropics. Until a day before yesterday (June 14, 2011), the platform was quite stable. I was using Skype with a cheap webcam with no issues.

Then all of a sudden, the machine would crash. It would start to reboot in black DOS mode, and sometimes just hang until I had to remove the power cord. After repeated tries, I got it to boot in Safe Mode with networking. It still crashed at startup. I once got a blue screen.

I let the computer sit for a few hours and it started. I downloaded xrepairpro.exe and regressed the machine to a stable version of two weeks ago. Everything worked fine. The machine was stable.

Then overnight, an automatic updater must have fired. Skype crashed the machine again after it working perfectly the day before. When the machine rebooted xrepairpro was gone from the machine. Mind you it was a trial version but the weirdness persists.

I am wondering if there is such a thing as a Skype virus. I will download an earlier version of Skype, turn off automatic updater and report back. Please leave a comment if you know what is going on.
Read More
Posted in blue screen, crash, skype, skype crashes xp, skype is crap, skype virus | No comments

Monday, 13 June 2011

Want a Software Job? Finish This Test .... Part 3

Posted on 04:19 by Unknown

For the last two entries, I detailed how a candidate for a software job was sent a coding test before he was personally contacted.

Coding tests are quite common, and can be quite onerous. A web design company sends this one out. This is quite a test, requiring a database, OAUTH to Twitter, and creates a marketable app. Here are the instructions to this test:






This test was created in an effort to gauge a candidate’s capability as an ASP.NET developer. The primary skills we are reviewing are: knowledge of C#/ASP.NET, MVC, knowledge of database design and implementation, usability, attention to detail and ability to interface with public APIs.

As with all code, there is no single correct way to build this web application. We will be looking at your submission to better understand your thought process when writing an application. Although this test must be written without any other person’s help, any standard reference material that is used during a normal programming cycle may be used (such as online help or books). No third party class libraries or code snippets may be used.

Overview

The purpose of the application is to allow end-users to search Twitter for topics of interest and
determine which users they might want to follow based upon the number of times tweets by that user appear in search results.

The Task

Create an MVC ASP.NET web application written in C#.

Required Features

1. Connection to Twitter (uses OAUTH)
2. Perform search against keywords supplied by end-user
a. Display tweets matching results, with profile photos
3. Collect profile data on everyone sending those tweets
a. Store in database, relate to tweets by that profile
4. Rank users whose tweets appear in search results most often – sort by # of matching tweets

descending
a. Tweet counts persist across multiple searches
b. If the same tweet appears in two separate searches, it is count as a single hit against its
author, not as two
c. Every time a tweet is recorded, the search terms should also be recorded
5. Click on the list of twitter users to display all tweets that have appeared in search; for each tweet, indicate which search terms caused it to appear

General Information

Make any modifications/additions you feel are necessary to enhance the usability of this application. Keep the code clean, well organized and well commented. The quality of the application should be at the same level that you would create for a paying client/employer. If you have any questions about the description of the application please feel free to ask.

Submission

Your submission must be in the form of a zip file containing a fully working solution that can be compiled and run without any further external requirements aside from those listed below:

External Requirements

Include a script file that can be run to generate the required SQL data store.


Now, isn't that quite the task to get a job.

In the previous example where the applicant complained about the impersonal test, he received the following reply:

I'm a member of development team. I was forwarded me your comments about our hiring process. I want to thank you for your feedback, because I've been thinking something along those lines myself and have been pushing for some change here recently. Your response is the first concrete evidence I have that our process is flawed. I'm not officially in any kind of HR position, I just stepped in very recently due to my own personal concerns about how it is being done.

We do get a lot of coding exercise responses doing it this way, including from each of us when we were hired, so I guess that makes us think it is an appropriate process. My primary concern was that the best people are probably a) already employed, so don't have a ton of free time to put into the exercise, and b) likely have numerous offers on the table, and so putting the time into the exercise just to possibly get another interview is just not worth it to them. But beyond that, you're right, it's not a very person-oriented approach.

What I have just recently started doing (unfortunately a few days after we asked Tara to send you the coding exercise), is reach out via email to candidates and offer to answer any questions they might have about the company.

If you are still interested, please fire questions my way. Either way, please accept my apology for the way we have approached you. I will be sharing your comments with the team and will hopefully affect change as a result.

So, there you have it. I think that coding exercises are here to stay for developers, but the way that they are administered has to change.
Read More
Posted in exam for software developer, job test, software job, technical test | No comments
Newer Posts Older Posts Home
View mobile version
Subscribe to: Posts (Atom)

Popular Posts

  • C# .NET Textbox GotFocus Event
    When one Googles to find out sample code for a C# .Net textbox gotFocus() event, the first few search results are not that explicit.  So wit...
  • Mechanized Attack Detection Algorithms
    I was on a CNN sub site and they were talking about security and threat of attack. One of the types of attacks that they were profiling, wa...
  • More Reasons Why To Quit Facebook and LinkedIn
    Man, I am looking smarter and smarter every day for quitting Facebook and LinkedIn. Can you imagine that your credit rating will suffer for...
  • Exception in thread "Thread-0" org.eclipse.swt.SWTException: Invalid thread access
    So you are getting your feet wet with Java SWT and you are having trouble updating your UI while you are doing some heavy processing.  Perha...
  • Is Android Safer Than iOS for Mobile Banking?
    First of all, total disclosure:  I am a registered Apple, Android and Nokia developer.  I have no real preferences.  There are good and bad ...
  • Java Networking
    I have this issue where I need to know the IP address or some identifying part of a computer.  Using Java, I came across the class of java.n...
  • It's Time -- A New Plug-in Filter for Browsers Needed
    I am starting to get a little ticked off at how much data is being collected on me when I surf the internet. Websites often ask for authent...
  • Classmates.com -- Another MySpace in the Making?
    A few years ago, I signed up on Classmates.com. I did it out of pure curiosity to find out where my peers in high school ended up. I enrol...
  • IE Users are Stupid, and Microsoft Knows it.
    (Click on the pic to make it larger) I have several email accounts. One of them is Hotmail. When I sign out of Hotmail, I usually land in ...
  • Facebook -- Dead Man Walking
    A couple of years ago, it would have been heresy to say that MySpace was irrelevant. It is now a ghost of what it was, and it IS irrelevant....

Categories

  • .avi
  • .Net
  • .wmv
  • [ERROR] /usr/share/mysqld: Out of memory (Needed xxx bytes)
  • activity with webview
  • ad
  • ads
  • adsense
  • Advanced UX
  • advertising how-to
  • algorithms
  • amazon
  • amenities
  • analysis
  • analyzing emotions in speech
  • android simulator
  • Anonymous email
  • anti-terrorist in cyberspace
  • apache
  • app
  • Apple
  • Apple Developer Site Down
  • apps
  • apps listing
  • arraylist
  • arraylist of arraylists
  • Artificial Intelligence
  • Arvind Bhatia
  • assholes
  • Avira
  • Aviva Premiership
  • background color
  • Bahamas
  • baidu
  • bait and switch
  • bash
  • basics
  • Bayesian inference
  • best blogging software
  • best free mobile web template
  • best iso image burner
  • Best Practices
  • best remailer service
  • big brother
  • big data
  • binaries
  • black hole net
  • blackhat SEO
  • block ip addresses
  • blog comments
  • blog design
  • Blogger
  • blue screen
  • bogus
  • Bombing
  • book covers
  • bookmark
  • Boston Bombing
  • Boston Marathon
  • browser
  • browser plugins
  • browser wars
  • browsing history
  • buddhist of the binaries
  • bug
  • Build 7600
  • Business Intelligence Cubes
  • C Sharp
  • c#
  • C# .NET Textbox GotFocus Event
  • cable
  • call center software
  • Camden Hughes
  • Can not issue data manipulation statements with executeQuery()
  • can't see Android Device
  • cannot upload image
  • Carl Jung
  • Casey Anthony
  • Caylee Anthony
  • censorship
  • changing revenue paradigms
  • charging
  • check LinkedIn Password
  • China
  • chinese investments
  • Chinese Search Engine
  • Chrome
  • chrome extensions
  • classes folder empty
  • classmates.com
  • clear on focus
  • clearmeter.com
  • click and clear input
  • closure
  • CNN
  • combating terrorism
  • comm.jar
  • comm3.0_u1_linux
  • command line
  • compiled
  • computer trading algorithm
  • computer virus
  • conciousness
  • connection pool
  • connection pooling
  • conspiracy theories
  • consulting
  • content analysis
  • content management systems
  • convert avi to dvd
  • convert dvd to avi
  • convert Gregorian Calendar to DateTime using Timestamp
  • converting Twitter followers to web hits
  • cookie monster
  • coolutils.com
  • copyright dispute
  • corrupt data
  • crap software
  • crash
  • create iphone app
  • css
  • current datetime
  • cyberspace counter terrorism
  • dark knight
  • dark web
  • Data Cleansing
  • data mining
  • data privacy
  • Data Refinery
  • data storage
  • datamining
  • date
  • date time manipulation
  • day trader
  • day trading
  • daytrader
  • daytrading
  • dead batman
  • dead man walking
  • decline of desktop
  • declining membership
  • delete database duplicates
  • delete duplicate rows
  • derek medina wife photo
  • determining user behind browser history
  • develop iPhone apps
  • developer
  • Developer website
  • development
  • dialog
  • dialog won't open
  • dictionary of apps
  • difference
  • digital buddha
  • disconnect.me
  • discountApp browser hijack
  • divx codec
  • Divx codec pack
  • DNA and information storage
  • DNSChanger Malware
  • do not track plus
  • domain name
  • domain name works
  • double quote
  • Download jfaces jar
  • drop Image
  • dumb ass
  • Dummies Guide to UIX
  • dvd
  • Eclipse
  • eCommerce
  • editor
  • Effective ways of fighting SPAM
  • Elliott Wave
  • end application
  • ePublishing
  • ereader
  • error
  • escape ampersand
  • Escape Key
  • exam for software developer
  • example
  • excel
  • Excellent
  • Exception in thread "main" java.lang.NoClassDefFoundError:
  • EXP/CVE-2012-0507
  • exploit
  • extreme software techniques
  • extreme UX
  • Facebook
  • facebook fair valuation
  • Facebook fatigue
  • facebook ipo
  • Facebook stock
  • facebook true share price
  • facebook true stock price
  • fail
  • failing
  • failure
  • fake traffic hits
  • faking domains
  • fast forward button for browser
  • fault tolerance
  • file splitter
  • file too big for email
  • find apps
  • Firewall Rules
  • firmware embedded in DNA
  • fly-half
  • Form not visible in task bar
  • format telephone number
  • formula doesn't work
  • forums
  • free
  • free email
  • free file splitter
  • free iso burner
  • free template
  • freedom of speech
  • frozen
  • funny
  • fuzzy class
  • fuzzy logic
  • Galaxy
  • geek gossip
  • gerard depardieu
  • get date from timestamp
  • get minutes
  • get remaining minutes between two dates
  • get rid of characters in a number
  • get rid of unwanted characters
  • ghostery
  • gmail
  • good stuff
  • google
  • google ads
  • Google Chrome
  • Google Chrome Browser Blocker
  • Google Circles
  • Google Image Search
  • Google+
  • gramlets
  • great stuff
  • GSM modem
  • hacked
  • hacked LinkedIn Password
  • hackers
  • Handling large amounts of data
  • Hard disk corruption
  • hardware
  • hashtag
  • hot trends
  • how computer games will evolve in the future
  • how do copy a form
  • how google image search works
  • how to build an iphone app
  • how to deal with spammers
  • how to develop iphone app
  • how to duplicate a form
  • how to get a company website quickly
  • how to get rich by writing apps
  • how to get venture capital
  • how to give users an anonymous number
  • how to make an effective online ad
  • how to redirect
  • how to see directory
  • how to send mail with linux
  • how to validate
  • html
  • html input
  • html input tag
  • html tag
  • html tags
  • human garbage
  • hunting terrorists through technology
  • I/Choreographer (xxxxx): Skipped 60 frames! The application may be doing too much work on its main thread.
  • icefaces
  • IDE
  • IE users stupid
  • IE9
  • if browsers were guns
  • imperfect clues
  • In order to select an image from your online storage
  • increase maximum number of open files
  • increase mysql memory size
  • inexact computing
  • innovative uses
  • intelligence test
  • interest engine
  • interesting problem to solve
  • Internet
  • Internet explorer
  • Internet Explorer 10
  • Internet Explorer 8
  • Internet Privacy
  • invalid server's version String Tamirsharpssh
  • investing
  • Invoke or BeginInvoke cannot be called on a control until the window handle has been created
  • iOS
  • iOS 7.1 beta
  • iOX
  • IP addresses for Iran
  • iPad
  • iPhone
  • iphone app
  • iphone apps development
  • ipo
  • is facebook dying
  • is the google search engine concious
  • IT
  • it consulting
  • it jobs
  • java
  • java 8
  • java.lang.ClassNotFoundException:
  • java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0
  • java.sql.SQLException: After end of result set
  • java.util.date
  • javascript
  • javax.servlet.ServletException: java.lang.UnsupportedClassVersionError Unsupported major.minor version 51.0
  • JdbcOdbcDriver.finalize() line: not available
  • JNDI
  • job test
  • join three tables
  • JSF
  • jsp
  • Julianne McCrery
  • Jungian view of the computer
  • keylistener
  • kill application
  • killer robot
  • kindle
  • Kyron Horman
  • lamda
  • laptop
  • launchrock.com
  • learn to program
  • Leicester Tigers
  • libmysqlclient.a
  • Linkedin
  • linking interests to content
  • linux
  • list directories
  • localhost
  • login
  • login before proceeding to page
  • looking for work
  • Mac
  • macbook Pro
  • mail
  • mailer
  • make iphone app
  • making money with photoshop
  • malware
  • malware protection
  • man on roof
  • Mandelbroatian math
  • mango
  • Mark Zuckerberg
  • massively parallel systems
  • Mathematical Modeling Regression
  • mechanized attack detection
  • Merry Christmas
  • meta tag
  • micro programs
  • microsoft
  • microsoft codec
  • microsoft codec doesn't work
  • microsoft is crap
  • microsoft spam tabloid national enquirer
  • Microsoft sucks
  • Minimum Viable Product
  • missing data
  • missing information
  • mistakes
  • mobifreaks.com
  • mobile
  • mobile web tags
  • moderator
  • monetization
  • monetize social media
  • monetizing social media
  • most popular Browser
  • most popular Operating System
  • mothers who kill
  • mouse
  • mouse is dead
  • movie files
  • Multi-Layer-Perceptrons
  • mute button for browser
  • myevent.com
  • myspace
  • mysql
  • mysql client
  • mysql error
  • navigate
  • needed. Structure Query Language
  • network interface
  • Neural Nets
  • new paradigm
  • new SQL functions
  • New Version of Xcode available
  • Nigerian Scam
  • no black screens
  • nokia
  • nokia developer
  • nokia website hacked
  • non-cloud cloud
  • non-compatible
  • nook
  • numbers game
  • OCR
  • offshore software development
  • old technology
  • online
  • open source
  • org.apache.catalina.loader.DevLoader
  • org.eclipse.swt
  • out of memory
  • pages unresponsive
  • parallel computing
  • parallel executables
  • parameter
  • partnership
  • pattern recognition
  • PDF to Word
  • pee on a plane
  • Perfect Web Page
  • performance analysis rugby
  • Perils of Python
  • phone
  • PhotoResize400.exe
  • photos
  • photoshop
  • PHP
  • picture
  • please sign in
  • plugin
  • predictions
  • predictive analysis
  • preventing hack attacks from the Middle East
  • privacy
  • privacy concerns
  • privacy policy
  • problems
  • problems with Microsoft
  • product review
  • programlets
  • programmers in paradise
  • protect yourself
  • punch clock
  • python programming language
  • quant
  • quit facebook
  • quit linkedin
  • Randi Zuckerberg
  • RapidShare
  • RapidShare.com
  • readability
  • real life
  • real UIX
  • reddit
  • redirect
  • refresh
  • remailer
  • rename
  • resize
  • rest in pieces
  • revenge
  • review
  • rise of mobile
  • risks
  • rocketmail
  • roller
  • rough order of magnitude
  • round number to nearest 100
  • row_count()
  • rugby
  • rugby analysis
  • rugby performance
  • RugbyMetrics
  • rules engine
  • running PHP on Tomcat
  • sabermetrics
  • sabremetrics
  • sample
  • Samsung
  • samsung galaxy usb device not recognized
  • satellite
  • scam
  • scan
  • schedule
  • scouting
  • scouting tools
  • script
  • scum of the earth
  • scumbag
  • Search Engine
  • security
  • Seed
  • select results into a file
  • select tag
  • semantic web
  • send email anonymously
  • send sms
  • sendmail
  • SEO
  • serial port
  • server hangup
  • set select
  • set the select of a combo box
  • sharp
  • sharpssh
  • shell
  • shift in consulting
  • show line numbers
  • silicon
  • SIM car
  • single quote
  • skype
  • skype crashes xp
  • skype is crap
  • skype virus
  • sms
  • sms spam
  • social media
  • soft censorship
  • software
  • software algorithm required
  • software bug
  • software emotionally aware
  • software in bugs
  • software job
  • software to capture emotion
  • Solve a tricky problem
  • sony
  • source code
  • spam
  • spammers
  • split a .war file
  • split war file
  • spreadsheet
  • spying on the internet
  • spywal
  • SQL
  • sql tip
  • ssh
  • SSL connection error
  • standard
  • start process at specific time
  • start-up web presence
  • startup
  • startups
  • statistic problem
  • statistics
  • stock manipulation
  • stock price
  • story
  • string
  • string error
  • strip out characters from a number
  • subtract dates
  • sucks
  • sunset
  • Surface
  • SWT
  • Tablet
  • tech support
  • technical test
  • technical trading
  • technology
  • template
  • ten things to get venture capital
  • Terri Horman
  • text spam
  • The best anti-virus
  • The Fastest And Slowest Emails among the big free providers
  • The feature you requested is currently unavailable. Please try again later.
  • the first noble truth
  • The Future of Online Games
  • the ish function
  • the menu supervisor
  • The most effective way to generate hits
  • the next big thing
  • the next big thing in computing
  • The Real Social Network
  • the zen of software development
  • thin slicing
  • This Copy of Windows is not genuine
  • thread
  • Thread: java.net.SocketException: Too many open files
  • thumb-driven menus
  • time comparison
  • Timestamp
  • tip
  • to front
  • toby flood
  • today comparison
  • today() function
  • tomcat
  • tomcat won't start
  • too old for IT job
  • top secrets of the admasters
  • toshiba
  • Toshiba Laptop Mouse Won't Work
  • total privacy
  • totally distributed software
  • tracking cookies
  • traffic faker
  • trends
  • true stock price
  • true value of facebook stock
  • Turing Test
  • twitpic
  • Twitter
  • twitter follow back
  • ubuntu
  • UIThread
  • UIX
  • UIX for Dummies
  • ulimit Hn Sn
  • Ultimate Web Page Design
  • Ultra data privacy
  • unavailable
  • Uncaught ReferenceError: $ is not defined?
  • Uncaught SyntaxError: Unexpected token ILLEGAL
  • unemployed
  • unmoderated
  • update
  • update UI
  • Upgrading SQL
  • url
  • usability
  • usb
  • usb modem
  • User Experience
  • User Interface Experience
  • validating data
  • valuation
  • variable
  • vi
  • video
  • viewing
  • vim
  • vimeo
  • virus
  • Virus domain
  • visual comparison
  • Visual studio
  • vpn connection
  • Walmart
  • war file
  • warning
  • Warren Buffett
  • web page development tip
  • web-based email
  • website doesn't work
  • website errors
  • website traffic
  • Webview
  • Western Digital SmartWare Review
  • what the chinese are searching for
  • where facebook stock will end up
  • who was at the computer
  • Windows 7
  • Windows 8
  • Windows Tablet
  • won't build
  • won't turn off
  • won't turn on
  • word filtering
  • www doesn't work
  • xcode tutorials
  • xhtml
  • Yahoo
  • yahoo copies gmail
  • yahoo mail
  • You have logged out from another location. Do you want to log in again
  • youtube
  • амперсанд

Blog Archive

  • ►  2013 (82)
    • ►  November (8)
    • ►  October (18)
    • ►  September (10)
    • ►  August (10)
    • ►  July (11)
    • ►  June (9)
    • ►  May (2)
    • ►  April (6)
    • ►  March (6)
    • ►  January (2)
  • ►  2012 (115)
    • ►  December (9)
    • ►  November (4)
    • ►  October (15)
    • ►  September (8)
    • ►  August (14)
    • ►  July (12)
    • ►  June (14)
    • ►  May (19)
    • ►  April (12)
    • ►  March (4)
    • ►  February (2)
    • ►  January (2)
  • ▼  2011 (59)
    • ▼  December (2)
      • Javascript: Uncaught SyntaxError: Unexpected token...
      • The Meta Refresh Tag with JSF, JSP, XHTML and Icef...
    • ►  October (1)
      • Microsoft Mango Desperate For Developers
    • ►  September (8)
      • UIX and UX Tip -- A Note To CNN as Well
      • Java - Convert Gregorian Calender to DateTime
      • The Future of Computer Gaming
      • Escape The Ampersand
      • This Caught My Eye -- Investigating Jurors Over th...
      • Yahoo Mail is Down?
      • Java Server Faces Redirect
      • Website Traffic Faking
    • ►  August (6)
      • Nokia Site Hacked
      • Classmates.com -- Another MySpace in the Making?
      • How A Geek Would Write A Gossip Column
      • The End of the Line for the Business Intelligence ...
      • What the Chinese Are Looking To Invest In
      • It's Time -- A New Plug-in Filter for Browsers Needed
    • ►  July (8)
      • Cosmological Cabbage: What the Chinese are searchi...
      • IE Users are Stupid, and Microsoft Knows it.
      • The Semantic Web and a Possible Rules Engine that ...
      • I'll Bite -- The Google Search Engine May Be Consc...
      • Big Brother Google Keeps Reading My Browsing Histo...
      • See if you can see the difference between .AVI and...
      • Facebook vs Google+ or Google Circles --Creating t...
      • Facebook -- Dead Man Walking
    • ►  June (10)
      • Ultra secure, Data Privacy and Secure Storage
      • Google Image Search With Image Test
      • RugbyMetrics Queries
      • Who Was At The Computer -- Solving a Whodunnit
      • A Standard For Twitter Hashtags
      • Lately Skype is a piece of Crap -- Skype virus???
      • Want a Software Job? Finish This Test .... Part 3
    • ►  May (13)
    • ►  April (11)
Powered by Blogger.

About Me

Unknown
View my complete profile