Sunday, December 1, 2013

Difference between compile and build process


For any Eclipse based IDE's one might be aware of terms like Build and Compile and they do resembles almost similar functionality. However, there are are some differences among both of them.

"Compile" units of code, but you "build" solutions -- which might involve compiling code, assembling resources, packaging deployment scripts
The "compile" command checks to see which files have been modified by looking at the create dates for the unit files, and then updates those. "Build" just goes ahead and re-compiles the whole thing without checking.

There is also the Incremental Build, which do not perform complete build instead will look for the earlier generated rcode (resultant file after compiling an ABL file) and generates rcode basing on this incremental to that. i.e, unlike a full build process it will just compile the delta files and generate rcode for the same.

Get the current directory of the file that is being executed


DEFINE VARIABLE process-id AS CHARACTER FORMAT "x(60)".
DEFINE VARIABLE dir-path   AS CHARACTER NO-UNDO VIEW-AS EDITOR SIZE 60 BY 10.
INPUT THROUGH echo %cd% NO-undo.
SET process-id dir-path WITH FRAME indata NO-BOX NO-LABELS.
/*DISPLAY process-id dir-path FORMAT "x(800)".*/
INPUT CLOSE.

MESSAGE dir-path VIEW-AS ALERT-BOX.

Define ABL Property in an ABL Class file


As of normal programming languages Progress 4 GL or ABL language supports multiple constructs for the development of ABL applications. It supports former model Procedural and the latest OO (Object Oriented) .



USING Progress.Lang.*.

CLASS HelloClass:

    DEFINE PUBLIC PROPERTY Prop1_Char AS CHARACTER NO-UNDO
        GET():
            IF Prop1_Char = "Hello" THEN
                RETURN "Hello Given".
            RETURN "No Hellos".
        END GET.
        SET.

    DEFINE PUBLIC PROPERTY Prop2_Int AS INTEGER EXTENT 41 NO-UNDO
        GET.
        SET.

      
    CONSTRUCTOR PUBLIC HelloClass (  ):
        SUPER ().
        MESSAGE "From Default Constructor"
            VIEW-AS ALERT-BOX.
        MESSAGE Prop1_Char VIEW-AS ALERT-BOX.
       
    END CONSTRUCTOR.

END CLASS.

Advanced Business Language (ABL)

ABL is one of the prominent Programming Languages which was introduced in early 1980's and is known as 4GL (4th Generation Language) is maintained by Progress Software Corporation. This language is easy to learn and more comfortable in the development. Wikipedia link on ABL.

I will be adding some of the language tips in this section which will benefit beginners.

Tuesday, February 19, 2013

Generic Windows Tricks

This article is about generic Windows tricks... Will be updating incrementally....

  • Block start-up programs in the system
                        Goto msconfig -> Startup (Enable or disable startup programs from here)
  •  Remove share folders
                                  Computer -> Manage -> Share Folders
  •  Shut Down your system from command line
                           C:\>shutdown -r -t 5    (restarts within 5 sec)
                           C:\> shutdown -t 5     (shutdown within 5 sec)
  • Chat with Friends through ms dos Command Prompt  (http://www.insecure.in/cmd_chat_trick.asp)
  • Know 32 or 64bit processor in your system (Shortcut    -    msinfo32.exe)
  1. Open the System Information:
      Open the Start menu, and click on Programs -> Accessories -> System Tools -> System  Information

     2.   Look in the System Summary:

        The System Information tool will display detailed information about your Windows operating system.  Once opened it will show the "System     Summary" – it’s an overview of your computer and operating system.
   3.    Look for the System Type Item:

      On the right hand side of the window you will see a list of items. Look for the item called "System Type".

      The value of this item will tell you whether your computer is 32-bit or 64-bit:

          * x86-based PC: It’s a 32-bit computer.
          * x64-based PC: It’s a 64-bit computer.

Utile Commands in Windows


Here is the list of commands that you can run off from the 'Run' Command Prompt for easy access of ample utilities provided by Windows.

Program Run Command:
  1. Accessibility Controls = access.cpl
  2. Accessibility Wizard = accwiz
  3. Add Hardware Wizard = hdwwiz.cpl
  4. Add/Remove Programs = appwiz.cpl
  5. Administrative Tools = control admintools
  6. Adobe Acrobat ( if installed ) = acrobat
  7. Adobe Distiller ( if installed ) = acrodist
  8. Adobe ImageReady ( if installed )     = imageready
  9. Adobe Photoshop ( if installed ) = photoshop
  10. Automatic Updates = wuaucpl.cpl

  1. Basic Media Player = mplay32
  2. Bluetooth Transfer Wizard = fsquirt

  1. Calculator = calc
  2. Ccleaner ( if installed ) = ccleaner
  3. C: Drive = c:
  4. Certificate Manager = cdrtmgr.msc
  5. Character Map = charmap
  6. Check Disk Utility = chkdsk
  7. Clipboard Viewer = clipbrd
  8. Command Prompt = cmd
  9. Command Prompt = command
  10. Component Services = dcomcnfg
  11. Computer Management = compmgmt.msc
  12. Compare Files = comp
  13. Control Panel = control
  14. Create a shared folder Wizard = shrpubw

  1. Date and Time Properties = timedate.cpl
  2. DDE Shares = ddeshare
  3. Device Manager = devmgmt.msc
  4. Direct X Control Panel ( if installed ) = directx.cpl
  5. Direct X Troubleshooter = dxdiag
  6. Disk Cleanup Utility = cleanmgr
  7. Disk Defragment     = dfrg.msc
  8. Disk Partition Manager = diskmgmt.msc
  9. Display Properties = control desktop
  10. Display Properties = desk.cpl
  11. Display Properties (w/Appearance Tab Preselected ) = control color
  12. Dr. Watson System Troubleshooting Utility = drwtsn32
  13. Driver Verifier Utility = verifier

  1. Ethereal ( if installed ) = ethereal
  2. Event Viewer = eventvwr.msc   

  1. Files and Settings Transfer Tool = migwiz
  2. File Signature Verification Tool = sigverif
  3. Findfast = findfast.cpl
  4. Firefox = firefox
  5. Folders Properties = control folders
  6. Fonts     = fonts
  7. Fonts Folder = fonts
  8. Free Cell Card Game = freecell

  1. Game Controllers = joy.cpl
  2. Group Policy Editor ( xp pro ) = gpedit.msc    

  1. Hearts Card Game = mshearts
  2. Help and Support = helpctr
  3. Hyperterminal = hypertrm
  4. Hotline Client = hotlineclient

  1. Iexpress Wizard = iexpress
  2. Indexing Service = ciadv.msc
  3. Internet Connection Wizard = icwonn1
  4. Internet Properties = inetcpl.cpl
  5. Internet Setup Wizard = inetwiz
  6. IP Configuration (Display Connection Configuration) = ipconfig /all
  7. IP Configuration (Display DNS Cache Contents) = ipconfig /displaydns
  8. IP Configuration (Delete DNS Cache Contents) = ipconfig /flushdns
  9. IP Configuration (Release All Connections) = ipconfig /release
  10. IP Configuration (Renew All Connections) = ipconfig /renew
  11. IP Configuration (Refreshes DHCP & Re-Registers DNS) = ipconfig /registerdns
  12. IP Configuration (Display DHCP Class ID) = ipconfig /showclassid
  13. IP Configuration (Modifies DHCP Class ID) = ipconfig /setclassid

  1. Java Control Panel ( if installed ) = jpicpl32.cpl
  2. Java Control Panel ( if installed ) = javaws    

  1. Keyboard Properties = control keyboard
  2. Local Security Settings = secpol.msc
  3. Local Users and Groups = lusrmgr.msc
  4. Logs You Out of Windows = logoff

  1. Malicious Software Removal Tool = mrt
  2. Microsoft Access ( if installed ) = access.cpl
  3. Microsoft Chat = winchat
  4. Microsoft Excel ( if installed ) = excel
  5. Microsoft Diskpart = diskpart
  6. Microsoft Frontpage ( if installed ) = frontpg
  7. Microsoft Movie Maker = moviemk
  8. Microsoft Management Console = mmc
  9. Microsoft Narrator = narrator
  10. Microsoft Paint = mspaint
  11. Microsoft Powerpoint = powerpnt
  12. Microsoft Word ( if installed ) = winword
  13. Microsoft Syncronization Tool = mobsync
  14. Minesweeper Game = winmine
  15. Mouse Properties = control mouse
  16. Mouse Properties = main.cpl
  17. MS-Dos Editor = edit
  18. MS-Dos FTP = ftp

  1. Nero ( if installed ) = nero
  2. Netmeeting = conf
  3. Network Connections = control netconnections
  4. Network Connections = ncpa.cpl
  5. Network Setup Wizard = netsetup.cpl
  6. Notepad = notepad
  7. Nview Desktop Manager ( if installed ) = nvtuicpl.cpl

  1. Object Packager = packager
  2. ODBC Data Source Administrator = odbccp32
  3. ODBC Data Source Administrator = odbccp32.cpl
  4. On Screen Keyboard = osk
  5. Opens AC3 Filter ( if installed ) = ac3filter.cpl
  6. Outlook Express = msimn

  1. Paint = pbrush, mspaint
  2. Password Properties = password.cpl
  3. Performance Monitor = perfmon.msc
  4. Performance Monitor = perfmon
  5. Phone and Modem Options = telephon.cpl
  6. Phone Dialer = dialer
  7. Pinball Game = pinball
  8. Power Configuration = powercfg.cpl
  9. Printers and Faxes = control printers
  10. Printers Folder = printers
  11. Private Characters Editor = eudcedit

  1. Quicktime ( if installed ) = quicktime.cpl
  2. Quicktime Player ( if installed ) = quicktimeplayer

  1. Real Player ( if installed ) = realplay
  2. Regional Settings = intl.cpl
  3. Registry Editor = regedit
  4. Registry Editor = regedit32
  5. Remote Access Phonebook = rasphone
  6. Remote Desktop = mstsc
  7. Removable Storage = ntmsmgr.msc
  8. Removable Storage Operator Requests     = ntmsoprq.msc
  9. Resultant Set of Policy ( xp pro ) = rsop.msc

  1. Scanners and Cameras = sticpl.cpl
  2. Scheduled Tasks = control schedtasks
  3. Security Center = wscui.cpl
  4. Services = services.msc
  5. Shared Folders = fsmgmt.msc
  6. Sharing Session = rtcshare
  7. Shuts Down Windows = shutdown
  8. Sounds Recorder = sndrec32
  9. Sounds and Audio = mmsys.cpl
  10. Spider Solitare Card Game = spider
  11. SQL Client Configuration = clicongf
  12. System Configuration Editor     = sysedit
  13. System Configuration Utility = msconfig
  14. System File Checker Utility ( Scan Immediately ) = sfc /scannow
  15. System File Checker Utility ( Scan Once At Next Boot ) = sfc /scanonce
  16. System File Checker Utility ( Scan On Every Boot ) = sfc /scanboot
  17. System File Checker Utility ( Return to Default Settings) = sfc /revert
  18. System File Checker Utility ( Purge File Cache ) = sfc /purgecache
  19. System File Checker Utility ( Set Cache Size to Size x ) = sfc /cachesize=x
  20. System Information = msinfo32
  21. System Properties = sysdm.cpl

  1. Task Manager = taskmgr
  2. TCP Tester = tcptest
  3. Telnet Client = telnet
  4. Tweak UI ( if installed ) = tweakui    

  1. User Account Management = nusrmgr.cpl
  2. Utility Manager = utilman
  3. Volume Serial Number for C: = label
  4. Volume Control = sndvol32    

  1. Windows Address Book = wab
  2. Windows Address Book Import Utility = wabmig
  3. Windows Backup Utility ( if installed ) = ntbackup
  4. Windows Explorer = explorer
  5. Windows Firewall = firewall.cpl
  6. Windows Installer Details = msiexec
  7. Windows Magnifier = magnify
  8. Windows Management Infrastructure = wmimgmt.msc
  9. Windows Media Player = wmplayer
  10. Windows Messenger = msnsgs
  11. Windows Picture Import Wizard (Need camera connected) = wiaacmgr
  12. Windows System Security Tool = syskey
  13. Windows Script host settings = wscript
  14. Widnows Update Launches = wupdmgr
  15. Windows Version ( shows your windows version ) = winver
  16. Windows XP Tour Wizard = tourstart
  17. Wordpad = write    

  1. Zoom Utility = igfxzoom

Eclipse Tricks



As many of you know that eclipse is an open source Java workbench (IDE) for the development of any kind of applications irrespective of language boundaries (thanks to its plug-in extensibility mechanism and easy way of hooking up any plug-in to the workbench). Many of the IDE's built on top of eclipse.

This article speaks about some of the tricks and tactics of eclipse workbench which might be useful for your development or debugging.... I will be adding some of the things incrementally to this post...

  • Show memory heap status in the eclipse.   
                      Window -> Preferences -> General -> Show Heap Status 
  • Show location of the workspace on top of the IDE (which is launched)
From Dev Environment:

Place '-showlocation' in the launch configuration

    Run/Debug Configuration -> Arguments ->

Example values:

    -os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog -showlocation

Also one can provide customized workspace for the IDE to get launched using the Main tab in the launch configurations.

    Launch Configuration -> Main -> click on Location link

From build:

If the workspace location should be shown for the IDE which is installed in your machine. Then provide same argument '-showlocation' in the shortcut from where it is being launched.

  • Boost Eclipse IDE Performance on Windows     (http://jroller.com/agileanswers/entry/boost_eclipse_ide_performance_on)
-vm
C:\cygwin\usr\java\jdk1.5.0_08\jre\bin\javaw.exe
-vmargs
-XX:+UseParallelGC

  • Open References in workspace :   Ctrl + Shift + G
  • Know all shortcuts    (Ctrl + Shift + L)

  • Explaining How Builds Work to Users        -    http://www.eclipse.org/eclipse/platform-core/documents/scoped_builds.html
You have two modes of working: auto-build mode and manual build mode. By default, you are in auto-build mode and Eclipse takes care of compiling source files automatically. Builds occur automatically in the background every time you change files in the workspace (for example saving an editor). Auto-build is convenient because it means problems view, binaries, etc. are are up-to-date at all times. The downside is that in large workspaces auto-builds can be time-consuming if you are changing files in projects with lots of downstream dependent projects.

If auto-build is taking too long and is interfering with ongoing development, it can be turned off. Once in manual build mode, the user is in complete control over when builds occur and what gets built. Project > Build All (Ctrl+B) can be invoked at any time to trigger what auto-build was doing automatically. This allows you to build up a larger set of changes before invoking a build (Eclipse remembers which files have changed so that it does not have to do more work than required when you do ask for a build.

In large workspaces, building the entire workspace can take a long time if you make changes with a significant impact on dependent projects. Often there are only a few projects that really matter to you a a given time. You can now simply select the project or projects that you want to bring up-to-date, and select Build Project from the context menu or Project menu. This will build only the selected projects, and any prerequisite projects that need to be built in order to correctly build the selected projects. Projects that depend on the projects you build will not be built. If you're familiar with the make tool, or Ant, they work the same way.

If you're interested in a set of projects, you may find it inconvenient to be repeatedly selecting several projects in the Navigator. In this case, you can choose Project > Build Working Set > Select Working Set... and choose a working set that contains the projects that you want to have built. This has the exact same effect as selecting that set of projects in the Navigator and selecting Build Project. Again, prerequisite projects will be built automatically if necessary. Recently built working sets appear on the Project > Build Working Set > submenu, making it fast to switch to any of these. You can allocate a key binding for the command Repeat Last Working Set Build in the Project category of the General > Keys preference page, if you want a convient way to invoke a working set build.

Under normal circumstances, you should have no reason to use the Clean command. Eclipse builders are generally incremental - they only build files that have changed since the last build, or files that are affected by changed files. This makes Eclipse builds very efficient even when there are large numbers of files. If something goes wrong and Eclipse loses track of where it was, this incremental process may fail to bring a project up to date. If this ever happens, the Clean command is there so the user can manually intervene and set Eclipse back on the tracks. This ensures that the next build will recompile all files over from scratch, as if the builder was running for the very first time. Naturally, this can be time consuming for large workspaces. You can selectively Clean one or more projects if you know which projects are having problems building.

Google Search Tricks

We are fond of asking Google for everything which we aren't aware of. There are couple of tricks that one can exploit Google effectively. Following listed are some of the tricks/hacks for efficacious use of the great Google.

  1. Search by file type: The file type modifier allows you to search for documents fitting a particular file type. Suppose you want to find files about baseball that are in PowerPoint. All you have to do is search: “baseball” filetype:ppt.
  2. Not: adding a minus (-) allows you to narrow your search, for example if you wanted to search for New York but not City you’d enter New York -City.
  3. Either/or: Google looks for the combination of terms you type in, but you can tell it to look for multiple words, for example Olympic or Gold. The short cut is | so Olympic | Gold works as well 
  4. Specific Document Types use the modifier “filetype:” if you’re looking for documents or pictures, for example blogging filetype:pdf delivers pdf documents that include the word blogging. 
  5. Quotation marks: I use this trick regularly. If you’re looking for the exact phrase, not the words entered, do your search like this “I did but see her passing by” 
  6. Wildcard: Former/Old DOS users will remember doing directory searches using an asterisk (*) as a wildcard, and Google supports wildcard entries as well. Example: blogging *.com.au 
  7. Definitions: stuck on a word you don’t understand? in Google, it’s as simple as define:word to deliver you a list of definitions  
  8. Similar terms: ~ in front of a word tells Google to look for similar terms to that word, for example ~blog web 2.0 
  9. Site Specific Search: another shortcut I use regularly. To search within a specific site, start the query with site:name.com term. Other rules can be used in the search. 
  10. Calculator : Who would have thought you could use Google as a calculator. Google supports /*-+ for a result. 
  11. Phone Listing: Want to know who your missed call was from? type phonebook:555-555-5555 for the answer. Works primarily in the United States. 
  12. Links: want to know who is linking to your blog, or even specific post? enter link:url.com into Google for the answer. 
  13. Format specific search: sometimes finding what you want in Google can be difficult, but Google offers a range of format specific search sites. Google News, Blog Search, even Video are a few Google sites you can use to find what you’re looking for. 
  14. Area Code Look-up: type in the US area code into Google to find out where the area code is. 
  15. Movies: Get the latest movie times at your local cinema by typing movie:movie name zip. 
  16. Stock Price: enter a valid stock symbol for the latest reported stock price, for example YHOO.
  17. Music: want the details of a song? use music:song name for Music specific search on Google 
  18. Metric conversion: convert imperial measurements to metric and back again quickly via the Google search box. For example: 100 lbs in kg 
  19. Term location: use inurl:, intitle:, intext:, or inanchor: to tell Google where it should look for the term your looking for. 
  20. Cache: Google keeps a comprehensive cache database of many websites, and you can search this database by starting your search with cached:

Increase Internet Speed

 How to increase Internet speed


Will tell you the hack/trick to increase Windows XP Pro Internet speed by around 20%. This 20% internet speed increment may seem to be a little, but if you read this article thoroughly, you can see that this 20% is a lot (especially if your modem is 100MBPS), because Windows only allows you to use 80% by default, and 80 divided by 20 is 4, which is the 4%.


However, you can see clearly up there this trick is for XP Pro only. Yes, I know some people might get the Home editions because they want the Media Center bonuses (or so I heard).

This hack/trick is quite simple. Go to Start>>Run and then type in “gpedit.msc” without the quotes (“).

After that, search around for “QoS Packet Scheduler” (Hey, I can’t provide accurate XP info since I forgot and I’m using Vista, which sucks badly) after that, you should see something like “Limit Reservable Bandwidth”. Modify that and set it to “Disabled”, or you can put it to “Enabled” and change the value to 0.

I highly recommend putting it at “disabled” because some computers (like mine) can’t differentiate the difference between “EnabledValue 0” and “EnabledValue 20”. NEVER put it at “Not Configured” because that will STILL take away 20% of your bandwidth.

After that, press F5 and reboot your computer. Enjoy 20% more Internet speed (Again, this is based on what I calculated!)
Q: How can I further increase my internet speed?
A: You can use TCPOptimizer 2 at www.speedguide.net .
Q: How can I EVEN FURTHER increase my internet speed?
A: For downloads, you can use DAP 9.0 at www.speedbit.com, note that it’s got bugs, and McAfee made it a yellow website because of the pathetic users saying it changed their browser homepage (actually because they wanted it to!) and a single registry cleaner that doesn’t exist, so it’s GREEN. For uploads, I have no idea…

Enjoy hackING....