tech support15

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg
Showing posts with label gramlets. Show all posts
Showing posts with label gramlets. Show all posts

Friday, 29 April 2011

Making Your Computer Into a Parallel You

Posted on 07:25 by Unknown
I have previously introduced my concept of gramlets which is a whole bunch of single function programs that do one thing only. They are standalone programs of a tiny size, and can be invoked to operate on anything and do what they do. One example is the Addition Gramlet For Integers that will add any integers given to it as parameters and return the sum. This is but a trivial example.

Where gramlets will come to shine, is in the evolution of the personal computer. Personal computers have come a long way, and soon your phone will be your personal computer. Or it might be in the fabric of your jacket, or stuck in your ear -- it doesn't matter. The personal computer will continue to evolve.

It will become smaller and smaller, and can even off-load large processing tasks to the cloud. Douglas Adams may not have been far off the mark, when he said in the Hitchhiker's Guide to the Galaxy that the Earth was one huge computer.

The operating system for the personal computer must evolve as well. Gone will be the days of the dumb desktop. Your personal computer will be a learning machine that will learn all about you, anticipate your needs and handle most of the digital aspects of your life autonomously.

To become a parallel you, the operating system of the personal computer will have to ditch the ancient Microsoft paradigm and turn into a massively parallel system, just like the human brain.

Input will be fed into your personal computer via any means (web, data entry by scanner, camera etc) and the computer will take care of it. The input will be fed into all of the gramlets. They will fire if they recognize that the data is meant for them and process it.

For example, an image is fed in. The word processor and speech processor gramlet ignore it. The Filing Gramlet puts it away with the rest of the pictures, but first it passes it to the ident unit which analyses the picture to see if it is a picture of you, friends, family or whatever. Then the image is passed to the ImageQualityGramlet which adjusts the white balance, removes the red eye and passes it back for filing in the appropriate place. In the process, every Gramlet saw this input, and if the threshold was met, the gramlet recognized the data and did its job on it.

A parallel system of gramlets that learn by watching you will be the hallmark of the new personal computer operating system.

Anyone dealing with you will not be able to tell if it is really you, or the parallel you embedded in your personal computer. This will be like the graphic at the top of this post. Are the lines parallel or not? The answer will surprise you.


Read More
Posted in extreme software techniques, gramlets, massively parallel systems, micro programs, parallel computing, parallel executables, programlets | No comments

Sunday, 24 April 2011

Morning Gramlets

Posted on 08:12 by Unknown
Gramlets are programlets. Take a software program and bust it into pieces making each method a standalone program. Can you imagine how memory efficient and fast a program like that would be? It is a programming methodology whose time has come. Read the blog entry immediately below this one for my introduction to gramlets.

To make gramlets work, you would need a persistent supervisor of menus (or gramlet supermen) program that was the menu director. It would discover all of the gramlets that you have loaded or available online and give you menu choices to call them.

Incorporated into the gramlet supermen would be the ability to create macros that strings gramlets together to form functions.

The neat thing is that there could be a gramlet exchange much like a stock exchange where one could buy individual gramlets or gramlets strung together by macros or a connector gramlet.
Read More
Posted in gramlets, micro programs, programlets, the menu supervisor | No comments

Friday, 22 April 2011

Half-Baked Gramlets

Posted on 20:18 by Unknown
Warning: This idea is just half-baked, but I wanted to capture the meme before I lost it.

I was shocked with nostalgia to see a sample of BASIC programming lately. It was a very simple example and looked something like this:

10 REM BASIC Program
20 REM
30 PRINT
40 FOR I=1 TO 10
50 PRINT I
60 NEXT I
70 PRINT
80 END

This was way before Object Oriented Programming. It is a trivial example of the language. In BASIC programs that actually did real work there were sub-routines, goto statements and various loops and such all in one monolithic program.

These sorts of programs were the original layer of abstraction from programming a computer with wires. The programming of computers with a language sort of led us down the alternate path of programming in the same way that Alexander Graham Bell diverted us from our digital future with an analog telephone for all those years. I am not saying that programming with a language instead of wires was a mistake, just saying that with my newly-hatched idea, monolithic programs like BASIC heavily influences us today, and in perhaps the wrong way.

The huge monolithic programs like BASIC, COBOL and even AS400 were bulky and unwieldy. Subroutines provided the first reusable code, and perhaps are the beginnings of object oriented programming. Just maybe though, object oriented programming is not enough.

The legacy of the original monolithic programs still haunts us. For example, have you opened Microsoft Word lately. It is, I am sure, an object oriented program, and yet it is a huge accretion of objects that make it indistinguishable from the old huge BASIC programs of long ago. There are functions to spell-check. There are functions for mail-merge. There are functions to generate table of contents. When the change came from Word2003 to Word2007, I had to re-learn how to find the things that I wanted. It is so bulky, that if I want to capture some text, I just use Notepad, whereas before I used to use Word.

Then I started developing with Windows Mobile. Of course, you can't use the same memory-hogging techniques that go into programs like Word. With devices getting smaller and smaller, even with Moores Law still having room to expand, having processing power in all places is the goal. To do that, you have to have programs that are super memory efficient. Just like cars running on less gas, you have to have programs running on less memory.

That is where I was struck with the idea of Programlets, or Gramlets. (Like I say, this idea is half-baked, and I haven't yet Googled to see if anyone is doing it). Gramlets are mini-programs broken down into the smallest logical components. And each Gramlet has a method to invoke a Runner which invokes another Gramlet.

Just like Neural Nets, instead of firing up a large monolithic program like Word just to do one function, you fire up a program that does just one function. The stack and heap footprints would be very small, and the program would exit once you have finished the function. Here is an example in kiddie-scripting C# for the runner program:

class Runner
{
static void Main(string[] args)
{
System.Diagnostics.Process.Start(args[0]);
}
}

These are very trivial examples, but if you had to do mathematical addition, you would call the runner to call the adder and feed it two numbers:


class AdderInt
{
static int Main(int[] args)
{
return args[0] + args[1];
}
}

A more useful example, is lets say you have a gramlet to catch byte stream to create a document. The byte stream capture calls the runner to open a Notepad gramlet. Once the byte stream is captured, it exits. If you wanted to do a spellcheck, you would call a spellcheck gramlet. The spellcheck gramlet could be used anywhere -- in a browser, in a spreadsheet -- where ever it was needed.

Each gramlet is a standalone executable. This way, one could program by linking gramlets. This would be the ultimate manifestation Agile Developments.

This half-baked idea is going back into the oven for some more baking.




Read More
Posted in gramlets, micro programs, programlets, totally distributed software | No comments
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)
      • Blogger -- Image Upload Headaches with Google Chrome
      • Nigerian Spammers Now Using RapidShare
      • Tech Support Story
      • Are You Too Old For IT? Repost From Information Week
      • For all of you Apple Developers out there
      • Using the Android Simulator Webview, with Localhos...
      • New XCode Seed Available for Apple Developers
      • Another Google Software Bug on Blogger
    • ►  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)
    • ►  October (1)
    • ►  September (8)
    • ►  August (6)
    • ►  July (8)
    • ►  June (10)
    • ►  May (13)
    • ►  April (11)
Powered by Blogger.

About Me

Unknown
View my complete profile