tools

A tool is any physical item that can be used to achieve a goal, especially if the item is not consumed in the process. read more at WikiPedia

  • PDFCreator

    PDFCreator easily creates PDFs from any Windows program. Use it like a printer in Word, StarCalc or any other Windows application. In fact all you have to do is to print to a special device: a sort of printer which create file (PDF) on your disk
    • Development Status: 5 - Production/Stable
    • Intended Audience: End Users/Desktop
    • License: GNU General Public License (GPL)
    • Operating System: 32-bit MS Windows (95/98), All 32-bit MS Windows (95/98/NT/2000/XP)
    • Programming Language: Visual Basic
    • Topic: Office Suites, Printing
    • Translations: English, German
    • User Interface: Win32 (MS Windows)
  • A good worker. a good tool!

    • Use only Eclipse and try to buy codepro or found a free plugin that create java pattern templates and has refactoring capabilities..
    • Use only Borland if you need to do a RAD (Rapid applications development) applications
    • And for the text editor or xml or xsl or whatever, use only JEDIT, it is free and for sure the best editor, many of my colleagues are still fighting, convince that ultraedit or notepad or mpad are a lot better. You are clever only if you accept sometimes you are not right....
    • TCPviewer and Process viewer, free tools that can be download at www.winternals.com
  • Acunetix free edition now available

    logo_acunetix

    I will use it on my host very soon, if you have your own root server, this tool must be part of your administrator toolbox. Joomla! team use it to test the core framework, so we should be on the safe side, unfortunately we are are all using too many plug-ins that may be unsecure.. Here is how a report generated using Acunetix WVS look like (PDF - 1.5MB).

    Acunetix Web Vulnerability Scanner automatically scans your web applications / website (shopping carts, forms, dynamic content, etc.) and web services for vulnerabilities such as SQL injection, Blind SQL Injection, Cross site scripting, Google hacking, CRLF Injection & other web attacks. Acunetix crawls and analyzes websites including flash content, AJAX / Web 2.0. Also includes reporting for PCI Compliance, OWASP & more

    Out of the 100,000 websites scanned by Acunetix WVS, 42% were found to be vulnerable to Cross Site Scripting. XSS is extremely dangerous and the number of the attacks is on the rise. Hackers are manipulating these vulnerabilities to steal organizations’ sensitive data. Can you afford to be next?

    Cross Site Scripting allows an attacker to embed malicious JavaScript, VBScript, ActiveX, HTML, or Flash into a vulnerable dynamic page to fool the user, executing the script on his machine in order to gather data. Exploited Cross Site Scripting is commonly used to achieve the following malicious results:

    • Identity theft
    • Accessing sensitive or restricted information
    • Gaining free access to otherwise paid for content
    • Spying on user’s web browsing habits
    • Altering browser functionality
    • Public defamation of an individual or corporation
    • Web application defacement
    • Denial of Service attacks

    Scan your website for Cross Site Scripting Vulnerabilities at no cost NOW

    Get an insight into Acunetix Manual

  • All Eclipse Ganymede Shortcuts

    ganymede

    Here is the list of all 380 default shortcuts keys for eclipse Ganymede in an easy to print layout (4 pages A4). I recommend you to print a booklet out of it.

    Nobody on Internet is currently providing such a list, except a sourceforge project but their keys binding is for eclipse 2.1,Others keys binding for eclipse will follows soon.

    3rd party plugin shortcuts:

    Download as PDF now eclipse.ganymede.shortcuts.keys.binding.pdf

  • Are Anti virus and Windows not flawed???

    It can't be that my anti virus want to scan my disk every  day (default settings) and take 23 hours to do so.

    • Either windows stop and sandbox all applications using an hypervisor...and KNOW what
      applications are doing or what is written down to disk so the anti virus scan can be optimized
    • Or disks must be a lot faster! my 3 eclipse version and 10 workspaces (1'500'000 java files) are clearly
      showing the limit of actual hard disks. Defrag is done on a weekly basis...

    At the end, these anti virus are just sucking my CPU brute power (peak 20%) and worst of all a good part of IO
    power, and trust me windows IO are just hilarious compared to Linux, try eclipse under Linux it just fly!

    AntiVirusFlawed

    Pictured is AVG but this post is not targeted against it. They are ALL ridiculously slow.

    Windows just can't protect itself from Internet and mitigate attacks that it need a range of 3rd
    party software...sucking power and my time. We are far away from the Internet OS

  • Boost Eclipse speed performances part 2

    eclipse_home_header  After the huge success and feedback of my first tips on how to speed eclipse, here are more performances tips, some are obvious some not:

    Disabled/Exclude the virus scanner for the eclipse directory: while obvious It will or may be difficult to achieve if you're not administrator on your machine (while not impossible) and that may not make some people happy especially security officers ;-) It is obvious that scanning on the fly every resources in a workspace, is detrimental for speed. You'll get at least 15 to 20% more raw input output speed and gain 5 to 15% CPU cycles.

    Defragment often: NTFS fragment, File get changed, added or remove, so NTFS will fragment very fast, it is time to defragment  your disks. And since there is a lot of free program floating around, why not trying to get the last 20% loses in access time and transfer rate? Defragment at least one time a week your Eclipse workspace.

    Get more memory! Windows Server 64bits or Linux 64bits allow you to start with 3GB contiguous memory without complaining, the more memory the better!

    Get a faster disk for your notebook (western Digital black edition / Seagate momentus 1.3 are cheap), or better build yourself a RAID0 array made of 3 disks as you'll get the IO output of 3 disks. Since we do usually more READ access  (searching code, browsing hierarchy of objects) than write (writing code, let the compiler run)

    RAID 0 (striped disks) distributes data across several disks in a way that gives improved speed and full capacity, but all data on all disks will be lost if any one disk fails.

    Stop as many thread as possible that are not needed, in this category go all 3rd party nice to have software you may have authorized or not on your notebook: Google desktop search , Windows desktop search, widgets, Rss feeds... the less threads running in the background the better...

    Change for another operating system :-) Linux file systems are blazing fast compare to the venerable NTFS, and threading seems to be a lot better on any 2.6 Linux Kernel.

  • Browsershots to check browser compatibility hell

    browsershots.org.logo

    Browsershots makes screenshots of your Web design in different browsers. It is a free open-source online service created by Johann C. Rocholl. When you submit your Web address, it will added to a job queue. A number of distributed computers will open your Web site in their browser. Then they will make screenshots and upload them to the central server!

    waltercedric.com.browsershots

    Useful if you wan to check your website compatibility (first try to validate CSS and XHTML)

    They support a huge number of internet browser:

    Linux Windows MacOS FreeBSD

    Dillo 0.8
    Dillo 2.0
    Epiphany 2.22
    Firefox 1.0
    Firefox 1.5
    Firefox 2.0
    Firefox 3.0
    Firefox 3.1
    Flock 1.1
    Flock 1.2
    Flock 2.0
    Galeon 2.0
    Iceape 1.0
    Iceape 1.1
    Iceweasel 2.0
    Iceweasel 3.0
    Kazehakase 0.5
    Konqueror 3.5
    Konqueror 4.2
    Minefield 3.2
    Minefield 3.6
    Navigator 9.0
    Opera 10.0
    Opera 9.50
    Opera 9.63
    Opera 9.64
    SeaMonkey 1.1
    SeaMonkey 2.0
    Shiretoko 3.1
    Shiretoko 3.5

    Avant 11.7
    Chrome 0.2
    Chrome 0.3
    Chrome 0.4
    Chrome 1.0
    Chrome 2.0
    Firefox 0.8
    Firefox 0.9
    Firefox 1.0
    Firefox 1.5
    Firefox 2.0
    Firefox 3.0
    Firefox 3.1
    Flock 1.2
    Flock 2.0
    K-Meleon 1.1
    K-Meleon 1.5
    Minefield 3.2
    Minefield 3.6
    MSIE 4.0
    MSIE 5.0
    MSIE 5.5
    MSIE 6.0
    MSIE 7.0
    MSIE 8.0
    Navigator 8.1
    Navigator 9.0
    Opera 0.27
    Opera 10.0
    Opera 7.0
    Opera 7.11
    Opera 7.54
    Opera 8.0
    Opera 8.53
    Opera 8.54
    Opera 9.25
    Opera 9.26
    Opera 9.27
    Opera 9.50
    Opera 9.51
    Opera 9.52
    Opera 9.60
    Opera 9.61
    Opera 9.62
    Opera 9.63
    Opera 9.64
    Safari 3.0
    Safari 3.2
    Safari 4.0
    SeaMonkey 1.1
    SeaMonkey 2.0
    Shiretoko 3.1
    Shiretoko 3.5

    Firefox 3.0
    Safari 3.1
    Safari 3.2

    Dillo 2.0
    Firefox 2.0
    Galeon 2.0
    Kazehakase 0.5
    SeaMonkey 1.1

    Visit http://browsershots.org/

  • Eclipse 3.1 M3 - New and Noteworthy

    While the Brits are lighting up for Bonfire Night and burning effigies of Guy Fawkes, the Eclipse development team has delivered their 3rd Eclipse 3.1 milestone build. Here are some of the more noteworthy things available in milestone build M3 (November 5, 2004) which is now available for download. See the M3 build notes for details about bugs fixed and other changes.
  • Eclipse 3.5 news and noteworthy

    eclipse

    It is always difficult to discover what’s new in every Eclipse release, as the number of features is just growing over the years. More difficult is even to locate the new and noteworthy page, that’s why I list them all below for eclipse 3.5

    News and noteworthy pages contains interesting or significant changes made to the Eclipse Platform for the 3.5 release of Eclipse.

     

     

    I have personally saved them all (since eclipse 3.3) in a directory for further references. I wish eclipse would list them all in their wiki

    You’ll find a “What’s new page” also in your local help at http://127.0.0.1:1829/help/topic/org.eclipse.platform.doc.user/whatsNew/platform_whatsnew.html but it look smaller in size than the html counterpart.

  • Eclipse 5th birthday


    Community Bulletin

    Eclipse is turning 5! It was November 7, 2001 when IBM first released Eclipse as an open source project. To celebrate, a number of activities are being organized for the Eclipse community.

    Birthday Card

    An electronic birthday card has been setup to allow individuals in the the Eclipse community to show their support for Eclipse. Everyone in the Eclipse community is encouraged to sign the Eclipse birthday card.

    Individuals signing the card before December 1, 2006 will qualify for a random draw to win one of 20 Eclipse sweaters.

    Product Hall of Fame

    Over the last five years, the Eclipse community has built hundreds, if not thousands, of Eclipse based products. Therefore, an Eclipse Product Wall of Fame has been setup to showcase these products. Organizations and individuals that have created Eclipse based products and plug-ins are invited to add their solution to the Product Wall of Fame.

    Eclipse Birthday Parties

    There are over 25 local Eclipse birthday parties organized in cities around the world to celebrate this event. Locations, dates, and RSVP links can be found here.


    And here is my submission

     
  • Eclipse bundle: welcome Calisto

    The goal of the Callisto Simultaneous Release is to release ten major Eclipse projects at the same time. We are doing this simultaneous release to support the needs of the ecosystem members who integrate Eclipse frameworks into their own software and products. While those product producers naturally accept the ultimate responsibility for their customers' experiences, Callisto's goal is to eliminate uncertainity about project version numbers, and thus to allow ecosystem members to start their own integration, cross-project, and cross-product testing efforts earlier. Callisto is about improving the productivity of the developers working on top of Eclipse frameworks by providing a more transparent and predictable development cycle; Callisto is about developers helping developers serve the whole Eclipse community.

    from Eclipse.org Calisto

    I am using Calisto now and YOU?

  • Eclipse Foundation, Zend Technologies, and IBM Announce the Approval of the PHP IDE Project

    The major news I was waiting for:


    Eclipse Foundation, Zend Technologies, and IBM Announce the Approval of the PHP IDE Project
    The Eclipse Foundation, an open source community committed to the implementation of a universal software development platform, Zend Technologies and IBM, today announced that the Eclipse PHP IDE project has been approved by the Eclipse Foundation. The technology project was proposed by Zend and IBM on October 21, 2005. It will deliver a PHP Integrated Development Environment framework for the Eclipse Platform and will encompass the development components necessary to develop PHP-based web applications and will leverage the existing Eclipse Web Tools Project.

    Read the proposal here, If youre are in the area of Santa Clara, Zend is showing  demo at EclipseCon. Do someone know what wwill happen wwith PHPeclipse.de ???

  • Eclipse Galileo aka eclipse 3.5 is here

    eclipse.galileo

    For the sixth year in a row, the Eclipse community has delivered its annual release train on its scheduled date. Galileo, the 2009 release train, is the largest ever release from the Eclipse community, comprising 33 projects and over 24 million lines of code. Over 380 committers from 44 different organizations participated to make this release possible.

     

     

    Download it now

    Note: Subversive is part of Galileo, but the first time you sync your code, you may get in SVN console a red error message:

    Selected SVN connector library is not available or cannot be loaded.
    If you selected native JavaHL connector, please check if binaries are available or install and select pure Java Subversion connector from the plug-in connectors update site.
    If connectors already installed then you can change the selected one at: Window->Preferences->Team->SVN->SVN Client.

    That’s because SVN connectors are not part of Galileo…

    The site where you’ll be able to download subversive connectors is HERE

  • Eclipse IDE shortcuts

    I found today the mother of all shortcuts in eclipse, by accident....

    Type CTRL-3 in eclipse and a pop windows will appear where you can type any part of
    a keyword

    eclipse.best.shortcut.ctrl-3

    The windows will propose you anything related to your search (here I am searching
    the rename refactoring, for the example)

    shortcut

    This is the most easiest way to learn new tricks (news and noteworthy release note being the second).

    If you prefer the old way, that is by printing a huge list of shortcut list, here is what
    I found to be the most up to date:
    http://eclipse-tools.sourceforge.net/shortcuts.html

  • Eclipse Indigo/New and Noteworthy

    eclipse_indigo_aka_3_7

    Eclipse Indigo is the annual release of Eclipse projects on June 22 2011; this year 62 project teams are part of the release.

    New and Noteworthy

    JBossTools

     
  • Eclipse Plugins

    My platform of development is Suse 9.0 and Eclipse 3.0M4

    eclipse launcher (link)

    The best eclipse launcher available as today, written in smalltalk by my friends of www.xdreamteam.ch

    xdt Eclipse Launcher V1.0 RC2(761 KB) ist ein Tool für Java-Entwickler die mit Eclipse arbeiten.Mit dem xdt Eclipse Launcher verwalten Sie ihre Workspaces und können diese von einem Ort aus starten. Der xdt Eclipse Launcher startet als System-Tray Program, von wo Sie die Möglichkeit haben neue Definitionen einzutragen, oder die bestehenden Definitionen einfach und schnell zu starten.

    HP Nimius/E3 launcher

    Plugin for starting a HP Nimius application, Hewlett Packard Nimius informations can be found at www.hpnimius.com This plugin was originally developped at work, and has been totally rewritten to avoid any copyright infrigment.
    Why is the difference with a Eclipse Launcher? you have 3 icons...

    Installation:

    Prerequisite:
    This plugin assume that you are using a project for E3 which have the following structure (but you can change the default location of components):

         
    Project XXX/etc contains xml files, properties  
    Project XXX/log    
    Project XXX/lib contains applications E3 services and java code  

    Greetings:
    This plugin is based on Tomcat sysdeo plugin and was simply extended. Since the original code is based on the MIT licence, I am also giving you this code under the same conditions.

    The MIT Licence:
    Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following
    conditions:
    The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

     

     

    Tutorials:

    http://www.awprofessional.com/articles/article.asp?p=31789&seqNum=1

    FAQ:

     

    Starting Tomcat in eclipse

    i get the following exceptions:

    2004-07-14 14:40:55,540 0 [main] ERROR org.apache.commons.digester.Digester - Digester.getParser:
    javax.xml.parsers.ParserConfigurationException: AElfred parser is namespace-aware
    at com.icl.saxon.aelfred.SAXParserFactoryImpl.newSAXParser(SAXParserFactoryImpl.java:37)
    at org.apache.commons.digester.Digester.getParser(Digester.java:686)
    at org.apache.commons.digester.Digester.getXMLReader(Digester.java:902)
    at org.apache.commons.digester.Digester.parse(Digester.java:1548)
    at org.apache.catalina.startup.Catalina.start(Catalina.java:449)
    at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
    at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:324)
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203

     

    "With tomcat 4.x, things become simpler, but this version of tomcat uses the jaxp sax parser factory. Moreover, this version of tomcat requires a validating parser, and it doesn"t check whether the parser actually is validating. If the AElfred parser is supplied in the system properties, an exception will be thrown when tomcat attempts to set validating on. I"d recommend using the (validating) xerces 1.4.4 sax parser rather than AElfred parser. It"s not safe to rely on the default parser, by not setting system properties, because it"s very likely there are several versions of the JAXP classes in the classpath, and who knows when you might get another one. The practice by the distributors of XML tools to include implementations of the JAXP classes in their own jar files is, of course, rather insane, but that"s the way it is.

    Do this,
    System.setProperty("javax.xml.parsers.SAXParserFactory",
    "org.apache.xerces.jaxp.SAXParserFactoryImpl");=20
    but also do this
    System.setProperty("org.xml.parsers.sax.parser",
    "org.apache.xerces.parsers.SAXParser");=20
    since many third party tools base the parser choice on =
    "org.xml.parsers.sax.parser" rather than use the SAXParserFactory.

    Regards,
    Daniel Parker
    http://presentingxml.sourceforge.net/"

    in eclipse add the following key to the launcher in VM arguments

    -Djavax.xml.transform.TransformerFactory=com.icl.saxon.TransformerFactoryImpl -Djavax.xml.parsers.DocumentBuilderFactory=org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
    -Djavax.xml.parsers.SAXParserFactory=org.apache.xerces.jaxp.SAXParserFactoryImpl
    -Dorg.xml.parsers.sax.parser=org.apache.xerces.parsers.SAXParser

     

     

     

  • Eclipse shared install on a Windows Server 2003/2008

    maven-logo-2 eclipse

    I did develop this solution at work for our internal purpose at www.innoveo.com. Going away from the paradigm “As a developer I run everything locally” isn’t easy to accept but in some rare cases, it make sense. Below I list what I consider to be the main advantages and drawbacks.

    Stability

    • Not everybody is changing the developer environment as you need admin right to be able to do changes, more stability.
    • The developer environment is standardized: convention over configuration always pays like in Apache Maven.

    Sharing

    • you can work from anywhere as long as you have an internet/VPN connection
    • You can move your working place around, show your workspace to a colleague, reduce your coupling to Windows, use Linux, use a Mac!

    Security

    • The source code stay on the server, if someone steal notebooks you don’t loose your software assets.

    Efficiency

    • Somebody maintains the developer environment and settings for you, some developers can still beta test a new eclipse version before till it is considered stable.
    • Rollout is limited to a minimum loss of time, as you will see below 
    • Setting up a new developer account is basically settings up a new account on the shared server, running 3 lines of shell.
    • The server  is not full of unwanted applications running in background, only java.exe. eclipse.exe, databases can still run on another server (MYSQL, Oracle), runtime environment (Tomcat).

    Speed, speed and speed

    • A server is cheap compare to one big notebook for every developer.
    • Server is most of the time fully 64bits, may have up to 8 cores, RAID 5 typically  output 350Mb/s read (a good notebook: 32 bits, 2 cores and 80Mb/s without SSD)

    Drawbacks

    • A shared developer environment is a Single point of failure –> you need a very good backup, and eventually hardware fallback machine in hot standby!
    • You can not work if developer have no or limited internet access, in train for example.
    • It required a bit of initial engineering, hence this article.

    Access

    Windows

    Use Windows Remote desktop connection, define a DNS entry to access the server.

    remote.desktop

    Linux

    Linux has a free remote desktop implementation of Microsoft protocol, if it not installed, run either on Debian

    # apt-get install rdesktop

    or in OpenSuSE

    # zypper install rdesktop

    or in RED HAT

    # yum install rdesktop

    Create a script .sh file to save the connection parameters:

    rdesktop -A -C -k de-ch -r PRIMARYCLIPBOARD -u username -p password -xl  ipadress

     

    Eclipse

    One install for all users

    1. Unpack the latest eclipse in any location, I recommend on c:\eclipse-3.5, but any location where you have some space will work.
    2. Start eclipse as administrator and install all required 3r party plugin: we use M2Eclipse, Subversive for example.
    3. Stop Eclipse,
    4. Remove ALL write rights to ALL users including admin if needed.
    5. When Eclipse will start under a developer account, it will copy its configuration files into C:\Users\%USERNAME%\.eclipse
    6. Every users will be able to adjust the eclipse.ini but these settings are a good start (adapt memory to your requirements)
    7. Create a shortcut for every developer on their desktop pointing to c:\eclipse\eclipse.exe

    C:\Users\cedric.walter\.eclipse\org.eclipse.platform_3.5.0_1770938306\configuration\eclipse.ini

    -startup
    plugins/org.eclipse.equinox.launcher_1.0.201.R35x_v20090715.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.0.200.v20090519
    -showsplash
    org.eclipse.platform
    --launcher.XXMaxPermSize
    256m
    -configuration
    ../Users/cedric.walter/.eclipse/org.eclipse.platform_3.5.0/configuration
    -Dfile.encoding="UTF-8"
    -vmargs
    -Xms2048m
    -Xmx2048m
    -XX:PermSize=256m
    -XX:MaxPermSize=256m
    -XX:+UseParallelGC

    Updating Eclipse

    A rollout of new Eclipse version is easy thanks to symbolic link. Download junction.exe, a small tool to create symbolic links

    Windows 2000 and higher supports directory symbolic links, where a directory serves as a symbolic link to another directory on the computer.

    and run as admin

    junction.exe c:\eclipse c:\eclipse-3.5

    Now thanks to symbolic links any update to a major new version of eclipse will be plain easy: just delete the symbolic link c:\eclipse and create a new one to the new version!

    Users with Multiple Eclipse workspaces

    1. Create an empty directory for hosting your new workspace, for example at
          e:\%USERNAME%\workspace\maven
    2. Create a new shortcut with this content
      C:\eclipse\eclipse.exe --launcher.ini
      "C:\Users\\%USERNAME%\.eclipse\org.eclipse.platform_3.5.0_1770938306\configuration\eclipse.ini"
      -data e:\\%USERNAME%\workspace\maven

    Apache Maven

    Maven Local repository, every user has it’s own

    It is not recommend to share the local Maven repository cache among users as Maven has no locking concept in place. The local maven repository is expected to be located at

    c:\users\%USERNAME%\.m2\repository

    If you have enough space there for all your users, you can skip that chapter, Otherwise I will show you how to locate it anywhere on the file system.

    Let’s store it at e:\%USERNAME%\repository, here I have choose another drive with more space as Maven local repository can be quite big (700Mb per user today)

    The design chosen impose me to one more time play with symbolic links, using junction.exe in c:\users\%USERNAME%\.m2\repository pointing to e:%USERNAME%\repository

    When you are logged in as a normal developer account, in a dos windows, run the following

    junction.exe c:\users\%USERNAME%\.m2\repository e:\%USERNAME%\repository

    Maven settings.xml, one for all users

    I like the idea to maintain only one settings.xml. Apache Maven recommend to have one settings.xml per user (located in c:\users\%USERNAME%\.m2\settings.xml). This is true if you have different responsibilities among all your developers. For example some may not be able to deploy in Artifactory/Nexus while other can. Luckily, this is not the case as for today in our company. That is why I will only have one Settings.xml on server, located at c:\server.xml

    I will use a hard link to c:\settings.xml. When you are logged in as a normal developer account, in a dos windows, run the following

    fsutil hardlink create c:\users\%USERNAME%\.m2\settings.xml c:\settings.xml

    This make Apache Maven think that the settings.xml is in the default location c:\users\%USERNAME%\.m2\

    Updating Maven

    I do use the same trick for having a unique version of maven binary on the server while keeping some flexibility thanks to symbolic links.

    1. Unpack Apache Maven anywhere
    2. As an admin, in a dos windows, run the following:
      junction.exe c:\maven-3.0-beta1 c:\maven

    Now you can let all your developer reference in M2Eclipse this virtual directory c:\maven. Switching all developers to a new version is done by deleting and pointing to an older/newer version of Maven.

    It is not finished

    Our shared developer environment setup also virtualizes MYSQL (multiple schema per developer ) and Tomcat (per developer port range) using –D system variables in eclipse.ini

    References

    Scenario #2 - shared install

    In this scenario, a single install area is shared by many users. The "configuration" directory under the install area is home only to the config.ini as shipped with the product (it is not initialized). Every user has their own local standalone configuration location.

    The set up for this scenario requires making the install area read-only for regular users. When users start Eclipse, this causes the configuration area to automatically default to a directory under the user home dir. If this measure is not taken, all users will end up using the same location for their configuration area, which is not supported.

  • Eclipse version 3.1 is AVAILABLE

    Eclipse version 3.1 is AVAILABLE. New features added in this release: full support for Java 5.0 and improved support for developing rich client applications. Performance has been also significantly enhanced across the board since the 3.0 release. (what a blast with Jrockit 1.4.2!!!) . SWT can make a lot more graphical tricks, and has more widgets
    Do not forget to read what is maybe the best documentation online: 
    New and Noteworthy, (because You can get the substance of the new features in very few pages)
  • Eclipse? not only for java developer

    I came across this article at IBM developerworks, which explain how to use the RDT: Ruby IDE for the Eclipse platform. I decide also to give You here an overview of all languages supported by eclipse:

    • JDT: The JDT project provides the tool plug-ins that implement a Java IDE supporting the development of any Java application, including Eclipse plug-ins. It adds a Java project nature and Java perspective to the Eclipse Workbench as well as a number of views, editors, wizards, builders, and code merging and refactoring tools. The JDT project allows Eclipse to be a development environment for itself.

    • RDT is an open source Ruby IDE for the Eclipse platform.
      Features supported are syntax highlighting, on the fly syntax check, graphical outline, Test::Unit view/runner, Ruby application launching, content assist, source formatter, and a Ruby debugger.

    • CDT (C/C++ Development Tools) Project is working towards providing a fully functionalC and C++ Integrated Development Environment(IDE) for the Eclipse platform. 

    • Cobol: Eclipse fundation is hosting one COBOL CDT project but there is also a commercial plugin: theACUCOBOL-GT Eclipse Plug-in,

    • PHP:   PHPeclipse (open source CPL) PHP parser, debugger, code formatter, outline view, templates. Note also that ZEND has joined the eclipse board, so their flagship product ZEND Studio Pro may have a future as an eclipse plugin.

    • PERL: EPIC is an opensource Perl IDE for the Eclipse platform. Features supported are syntax highlighting, on the fly syntax check, content assist, perldoc support, source formatter, templating support and a Perl debugger. A regular expression plugin and support for the eSpell spellchecker are also available.

    • Python: PyDev is a plugin that enables users to use Eclipse for Python and Jython development. It comes with many goodies such as code completion, syntax highlighting, syntax analysis, refactor, debug and many others.
    • Eiffel: The Eclipe Eiffel Development Tools (EDT) are a set of plugins which eventually implement a full-fledged, highly integrated Eiffel development environment based on the Eclipse Platform
    • Groovy: The plugin provides a Groovy editor for editing scripts or classes in Groovy (Groovy is an object-oriented programming language designed for the Java platform as an alternative to Java with features from Python, Ruby and Smalltalk. see WikiPedia) language. Groovy makes writing scripts and applications for the Java Virtual Machine fast and easy.
    • Microsoft C#: Improve C# code editing with: Creation of new C# files (with a basic structure) - Syntax highlighting - Content assistant for C# keywords - Auto-indentation - C# code compilation etc  Unfortunately no more active development since June 2004

    And the list goes on......beside this nearly all minor scripting languages are supported (jsp, javascript... for ex.) and minor markup language (XML, HTML, JSF...) with the tremendous list of plugins:

    • www.eclipseplugincentral.com Eclipse Plugin Central (EPIC) offers the Eclipse community and users of IBM WebSphere Studio application development environments (WSAD, WSSD, WSED, etc.) a convenient, information-rich portal that helps software developers find open source and commercial Eclipse plug-ins, tools, and products that enhance the entire Java software development life-cycle.
    • eclipse-plugins.2y.net
  • Enjoy Fighting regressions with git bisect

    As Git Bisect is not clear a lot of people, here is a nice PDF to look at Enjoy Fighting regressions with git bisect, LinuxCon EU 2013.pdf

    it is about "Linux" combinational explosion... Bug software have the following properties (not desired):

    • has many different "configurations"
    • may fail under one configuration but not another

    N configurations, T tests and C new commits means that a release needs:

    C * N * T tests performed

    where N and T, at least, are growing with the size of the software.

    Git Bisect help find a first bad commit and use a binary search algorithm for efficiency if possible.

  • Firefox 2 RC2


    Firefox 2 Release Candidate 2 (RC 2) is a preview release of our next generation Firefox browser and is being made available for download to Web application developers, our testing community and users who want to get a sneak peek at the next version of Firefox. Please note that at this time, users should not expect all of their extensions, plugins and themes from previous versions of Firefox to work properly.

  • Firefox 2.0 alpha 1 available

    Available only for people who want to try unstable software.
    Bon Echo Alpha 1 is a developer preview releaseof our next generation Firefox browser and it is being made available fortesting purposes only. Bon Echo Alpha 1 is intended for web application developers and our testing community. Current users of Mozilla Firefox 1.x should not use Bon Echo Alpha 1.

    Happy testing :-)
  • Firefox 2.0 AVAILABLE

    The award-winning Web browser is now faster, more secure, and fully customizable to your online life. With Firefox 2, we’ve added powerful new features that make your online experience even better.



  • Firefox 3.0 Beta4 is amazing

    ff-beta3-robo-welcome

    I am running with Firefox 3.0 beta 4 since it is available (so since 2 weeks) and the progress made concerning memory management are so huge that you cannot start using it NOW, especially if you are always keeping Firefox open for hours or days. I am now able to say that Firefox is on par with my other favorite browser Opera 9.5, speed and rendering time are very close. I still prefer Opera through as I always keep 25 tabs open.

    It is time now for me to test the Beta 5!

    Firefox 3 Beta 5 is available in 45 languages as a public preview release intended for developer testing and community feedback. It includes new features as well as dramatic improvements to performance, memory usage and speed. You can download it HERE

    Why You should not use Firefox 3.0 Beta?

    • If you can not live without your favorite extension, note that Google toolbar is not compatible, but web developer is.
    • You can not start the old Firefox 2.x.x and the new Firefox 3.x at the same time, bookmark is shared

    For all developer out there reading my blog, I recommend You to read what the Firefox team has done to track down all memory leaks and reduce memory usage, this article is worth reading!

    Download Firefox Beta5 NOW:

  • Firefox 3.5 available for general consumption

    firefox.3.5

    see the what's new page here and Mike Beltzner giving a video tour of all the newest awesomeness.

    All my plug-ins are still working after the update to the latest version, my homepage is loading faster (as fast as in Google chrome)

    After the update you’ll be redirected to this page http://en-us.www.mozilla.com/en-US/firefox/3.5/whatsnew/ where you’ll be able to test a video embedded in HTML 5.