MYTH: Pipes are for plumbers, FACT: Yahoo! disagrees ;)

General, Software Development 1 Comment »

If you have heard the term “Mashups” then you need to checkout Yahoo! Pipes do not worry about what programming language you do know or do not know, all you need is:

  • Know how to use a computer mouse
  • Have a free Yahoo! account
  • Some idea what Feed, RSS, CSV, String, URL, etc. mean

You actually use the most simplistic IDE that is out there and draw your “pipe” which is like the basic definition of a computer:

  1. Input
  2. Processing
  3. Output

The ouput is pre-defined by Yahoo! and can be an RSS Feed, an email, or a JSON (leave that to javascript or Ajax guys)

The input can be a URL which publishes a feed (auto-detection is available as well) or a CSV, although being an advanced developer I would have wanted to see more like what WebWag has to offer so a div or segment of a web page could be used as input.

The processing is what you have to define using the modules on the left and your imagination, you can combine search results of Yahoo! and Google in a unified web page with your user interface or multiple feeds or translate from a language to another and what not, give it a shot to see more. Every module has an example available which can get any body starting to create pipes :)

And that is not all, Yahoo! has taken care of us developers of the object oriented and software engineering era to give RE-USABILITY! your pipes become modules in other pipes, and you can publish your pipes to be used by others. Which means that soon various pipes are going to show up on the Internet which can make your task even easier of creating a pipe of your imagination!

One other thing could be improved by letting advanced developers write some kind of code themselves, this could open the door to mashups of mashups, e.g. the APIs mentioned on Programmable Web could be integrated in Y! Pipes.

The “GUTSY” Ubuntu feeling

General No Comments »

OK, Ubuntu 7.10 aka Gutsy Gibbon is out, so what are you waiting for?

I have never seen any operating system upgrade itself so smoothly, apart from the nVidia proprietary issue on which Ubuntu has no control everything was without human intervention.

The feel of the operating system is very solid, getting any kind of application I need, or would need is just a mouse click and a few mega-bytes away. Now why would I anybody want to use windows? Even if you are not sure that it is that good, just give the live CD a try and you would find yourself installing it soon after.

For those who are using other linux distros would also want to use Ubuntu to answer all the questions raised by Windows or Mac OS X users.

  • In fact Linux has come a long way since I first installed it in 1996, it had a total nightmare installation and configuration compared to Windows 3.1
  • Then the phase of KDE beta started when Linux was building a UI copying visually Windows but secretly creating a foundation which was to outclass the win kernel in the days to come
  • Finally now we see the tables have turned and Nautilus features have been copied by the guys in Seattle to integrate in Vista, but even then the same hardware running Ubuntu gives Vista a run for its money in performance and visual effects, not even mentioning the hundreds of applications you can install so much easier in Ubuntu which was the advantage windows had a decade ago!

UBUNTU! for humanity!

Project Introduction - Magix

Magix 3 Comments »

MAGIX: A GSM enabled security system driven by an 8051 microcontroller.

Being used to program in Java at work, I still long to work on some embedded systems and firmware development in good old C. Moreover, the openness of some of the GSM phones amaze and attract me to do something with them, this is specially true for Sony-Ericsson and Siemens.

Hence, I planned for a generic security system with GSM integration, this could also be used as an add-on / plugin for other stand alone security systems to make them GSM enabled.

Implemented Features:

  • Sending SMS messages to any cellphone
  • Decode incoming SMS messages to extract text

Planned Features:

  • Taking actions on the basis of incoming SMS
  • Hooking up sensors for intrusion detection
  • Controlling of devices via relays or optocoplers
  • Stand-alone circuit design and implementation
  • 220v AC power supply
  • Power saving mode with wake-up via interrupts for automobile applications

Here you can see a SE T68i phone connected to a PJRC 8051 development board running the under-development firmware, the other serial port connects the the PC for interactive development under the PJRC monitor software.

Magix on T68i and PJRC Board

Website Overhauled

General No Comments »

People who visited my old site would notice a big difference in every aspect of the site. The old one can still be found at http://tazzix.com/tazzix.php the new site is based on the famous blogging engine WordPress. I also deployed some plugins and slightly modified a theme that I liked

However, more importantly I have decided to add content and posts on a regular basis, well as I have got every way of mobile blogging working this was inevitable.

Apart from adding details of upcoming projects I also need to put online latest screen shots and source code / sample projects for existing APIs that I have mentioned here on this site.

So if you find here something interesting keep checking and you may find something soon.

Project Introduction - Mobile On Device Software Testing

Mobile On Device Software Testing No Comments »

Being a mobile developer I run into issues with testing of software applications on a regular basis. Hence, it was always a dream to have a perfect testing solution which does not render the cell phone / mobile device useless for other purposes. I spent some time with Mobile Complete and their solution covers the first part of the problem but you still can not do QoS testing from the perspective of an average consumer and the phones are modified big time.

I started exploring on this front as well and have come up with some features and ideas that should be present in such a system.

  • Easy to program scripts running on the device in a non-distructive manner
  • Functions executed in linear / iterative fashion, including:
    • KeyPress - keycode
    • KeyDown - keycode
    • Delay - milliseconds
    • KeyUp - keycode
    • AllKeysUp - void
    • PointerDown - x, y
    • PointerUp - x, y
    • NOOP - void (no-operation) to force a step in the report
    • Grouping of above commands to form functions
    • Extended library to directly perform tasks available from the underlying platform:
      • OpenURL - url
      • TakePicture - void
      • etc.
  • HTML based reports, viewable on the phone, via an embedded HTTP server, or sent to a computer:
    • Step function, parameters, screenshot before executing, and comments for documentation
    • Cell ID can be included for rough location estimates (once cell-id to GPS coordinates are established)
    • For phone with built-in GPS, show coordinates and link to Google Maps, or Yahoo! Maps, etc.
  • Applications:
    • Mobile Software testing
    • QoS testing of a service provider, mimicking an average consumer (the script runs through commute and all)
    • Mobile Web site testing, screen shots are enough to show what is going wrong
  • Platforms:
    • Python - to run on S60 v2, S60 v3
    • Symbian - to run on various versions of S60 and UIQ
    • .NET to run on PocketPC and Smarphone based devices

Project Introduction - RAD J2ME IDE

RAD J2ME IDE No Comments »

When I started exploring J2ME in 2004, I started by creating some APIs which made my life very easy, however, somebody new to J2ME will need a steep learning curve in the restricted environment and on top of that to learn to use third party APIs. Hence, I envisioned that there should be a RAD environment that would allow using built-in J2ME classes, JSRs conditionally, and my APIs without the person need to know anything about any of these things.

This project is precisely here to convert the vision into a practical software. And this post is to keep me working on it.

Planned features:

  • An abstract data type to encapsulate a “Screen”:
    • A wait (splash) screen shown while other objects are created including any data gathering from connectivity options
    • Connectivity provided for:
      • SOAP WebServices (via JSR, kSOAP, and wSOAP)
      • Servlet providing data separated rows by “|?” and columns by “||”
      • Bluetooth, IR, USB via JSRs
      • Custom class implementing connectivity interface
      • RMS via RMS to Object mapping, may also be used to cache data that is cacheable
    • UI provided by LCD UI, thinlet (XUL), charts, or table API.
    • Action handlers to perform UI tasks, navigation of screens (may use Hecl mobile scripting for advanced features)
  • Rules for screen navigation
  • Internationalization
WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS Login