gps

The Global Positioning System (GPS) is a space-based satellite navigation system that provides location and time information in all weather conditions, anywhere on or near the Earth where there is an unobstructed line of sight to four or more GPS satellites. [read more at http://en.wikipedia.org/wiki/Global_Positioning_System]

  • panasonic_PT-AE3000

    it look like that I have found my next projector...except if Sanyo come with a better offering for less than 2000 CHF of course :-) or www.projectorecentral.com do not give a positive review (that I doubt)

    PT-AE900 720p projector is now 3 years old and has more than 1980 hours lamp usage (on a max 3000 hours)...

    PANASONIC LAUNCHES NEW 1080p FULL HIGH-DEFINITION LCD HOME THEATER PROJECTOR


    New PT-AE3000 Provides A Bright and Dynamic Wide screen Home Viewing Experience with Crisp Motion Images Via Frame Creation Technology
    DENVER – CEDIA Expo – Sept. 3, 2008 – Panasonic Projector Systems Company, Unit of Panasonic Corporation of North America, announced today the debut of its newest LCD home theater projector, the PT-AE3000. With full high-definition 1080p (1,920 x 1,080 pixel) native resolution, the PT-AE3000 gives home theater enthusiasts a higher level of picture quality entertainment, producing crisp and clear images through new state-of-the-art projection technology.
    As an evolution of its award winning predecessor, the PT-AE2000, the PT-AE3000 delivers a captivating 1,600 lumen brightness and powerful 60,000:1 contrast ratio. To achieve sharp and detailed reproduction of fast moving motion images, Panasonic has developed and equipped the PT-AE3000 with new Frame Creation Technology optimized for large screen viewing. And for easy adjustment to different widescreen movie formats like 21:9 or 16:9, the projector is also upgraded with a Lens Memory Load feature which is capable of memorizing and restoring zoom/focus positions for multiple aspect ratio flexibility.
    Higher Picture Quality with Brightness Upgrade
    The dramatic increase in the contrast-ratio and dynamic range was made possible by the newly engineered Pure Contrast Plate technology that effectively blocks unwanted light from the path of projection. In addition, the polarization filter system surrounding the Pure Contrast Plates has been redesigned to achieve the PT-AE3000's higher level of brightness.
    Together with a host of carefully engineered Panasonic technologies including the high precision optical lens unit, Dynamic Iris and Smooth Screen technology, the PT-AE3000 truly distinguishes itself against its competition and as a projector solution that home theater enthusiasts will thoroughly enjoy.
    Crisp and Clear Details for In-Motion Images
    The PT-AE3000 now incorporates a Frame Creation technology that interpolates an additional frame by analyzing the characteristics of two adjacent frames, creating sharp and clear images of fast moving scenes in sports and action movies, especially for large screen viewing. For crisp motion images with high resolution, users may set their frame count preference to 120 frames/1 sec from 60 frames/1 sec for 60Hz video signal input, while 24frames/sec (24p) signals are quadrupled to 96frames/1sec by interpolating three additional frames to allow natural frame-to-frame transitions.
    The new and advanced Detail Clarity Processor V2.0 allows the projectors' digital processing engine to extract information of the low, mid, high, and even the super-high frequency components. The ability to apply these different degrees of sharpness permits the PT-AE3000 to reproduce natural, lifelike images with exceptional clarity and three-dimensionality to the smallest details.
    The PT-AE3000 comes equipped with professional-level features that let users personalize the images they see on the screen. First, the projector's Split Adjust mode allows users to split the screen into two halves; one to make picture adjustments and one to see those adjustments as a baseline reference. Second, the PT-AE3000's waveform monitor-seen mostly on professional video and film equipment-measures the level of brightness output from a given video signal source. This feature also automatically verifies that the source device is outputting at full dynamic range, and quickly makes adjustments to optimize it for the home theater setting. Users can easily see a graphical representation of any changes made to the unit's color settings.
    Ease of Set-up and Use
    Many movies come in aspects that are even wider than the projector's 16:9 aspect ratio to match the image size 21:9 seen at movie theaters. More and more projector customers are using the 21:9 wide screens to mirror the movie theater experience. The PT-AE3000 enables users to pre-set three different zoom/focus positions and enables easy recall of those positions with the Lens Memory Load function.
    Initial set-up and installation are quick and simple, as the 2.0x zoom can cast a 120-inch diagonal image from as short as 3.6 meters (about 11 feet) to 7 meters (24 feet) from the screen. The projector's lens shift capability enables 100 percent vertical adjustment and 40 percent horizontal adjustment so that viewers can suspend the projector either close to the ceiling or on wall mounts. The lens-centered design and maintenance features such as the replaceable side filter and top lamp, make the projector easy to install and maintain.
    The projector is also equipped with an abundant selection of connections; including three HDMI 1.3 inputs and two component input terminals. The three HDMI 1.3 inputs are all Deep Color and x.v.Color compliant. The Deep Color supports 10 bit (over 1.07 billion) and 12 bit (over 68.7 billion) color depths for smooth tonal transitions and subtle gradations between colors, while the x.v.Color compliance realizes accurate reproduction of actual, true-to-life images.
    Eco-Friendly Intelligence
    In addition to its outstanding features, the new PT-AE3000 is also an ecologically conscious product. The intelligent power management system within the projector reduces the lamp power to the exact required level of brightness depending on what content is displayed. Other than in scenes where full brightness is required, the lamp intelligently determines the necessary power output by analyzing more than 3 billion different image patterns. This advanced analysis process reduces the main power consumption by as much as 10 percent when the dynamic iris function is in operation, thus saving energy.
    Other ecological considerations include an off-timer that reduces wasteful power consumption, as well as an extremely low standby power consumption of 0.08 W[1], which is the lowest in its class.[2]
    The Panasonic PT-AE3000 LCD home theater projector will be made in Japan, available starting in October 2008 to authorized presentation systems dealers with an MSRP of $3,499.
    To learn more about this projector, please visit
    http://www.panasonic.com/projectors  orhttp://panasonic.net/pavc/projector/

  • 20130219_211947

    Some notes about my experience using the Raspberry Pi model B…and you get it running Linux Debian on it!

    The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video. We want to see it being used by kids all over the world to learn programming.

    […]

    We don’t think that the Raspberry Pi is a fix to all of the world’s computing issues; we do believe that we can be a catalyst. We want to see cheap, accessible, programmable computers everywhere; we actively encourage other companies to clone what we’re doing. We want to break the paradigm where without spending hundreds of pounds on a PC, families can’t use the internet. We want owning a truly personal computer to be normal for children. We think that 2012 is going to be a very exciting year. [About Raspberry PI]

  • Some time ago I was asked if I would like to write a review about one of the new video courses from Packt Publishing. It was "Getting Started with Apache Maven" http://bit.ly/1fycmpP by Russell Gold and since I have been using Maven for some years now (since 2007) and did publish some articles myself, I thought it would be nice to help them promote Apache Maven.

    The course is organized in eight chapters, forty videos with a length between two and five minutes, for a total length of two hours. The aim of the course is to provide the shortest path to use effectively Maven

    You can download the course as a single zip file. After unpacking the file to a local hard disk you find a user guide, support information, a reference to the code examples and the video files. As you may notice I said "reference to the code examples". Even if the name of the file "Code Bundle.zip" it contains only a file with the link to the source code on github.

  • apache_maven

    Acunetix Web Vulnerability Scanner (WVS) is an automated web application security testing tool that audits your web applications by checking for exploitable hacking vulnerabilities. Automated scans may be supplemented and cross-checked with the variety of manual tools to allow for comprehensive web site and web application penetration testing.

    Acunetix  can detect some security vulnerabilities among others, click here for a list

    Until now, Acunetix WVS does not support automated scanning via API's.  However, Acunetix WVS supports command line, which can provide similar functionality and is an easy way to integrate Acunetix WVS with other third party applications.

    The example I am providing is using Maven, and start in phase “integration-test” Acunetix against your web application. Note that running Acunetix is a costly operation, it cost CPU, take a lot of time, stress your network, so I recommend you to run it at night (3 or 4AM) so developer can a receive a feedback the day after. I have also define a Maven profile “WebappSecurityTesting” so I can trigger the check in a new Build in Jetbrains TeamCity/Atlassian Bamboo/Java Hudson with -PWebappSecurityTesting in Maven goals list.

    Trivial but worth mentioning:

    • You need in Maven phase “pre-integration-test” to deploy your web application to a running container: tomcat, jboss, weblogic, iis.. before running acunetix against it
    • You need to adapt values in red below to your runtime environment
    • the Ant task is run only if your OS match the string “Windows XP” so remove this or use the right OS's name  determined by the Java Virtual machine and set in the "os.name" system property.
    <profiles>
        <profile>
            <id>WebappSecurityTesting</id>
            <activation>
                <activeByDefault>false</activeByDefault>
                <!-- automatic activation
                    <file>
                    <exists>C:\acunetix\wvs_console.exe</exists>
                    </file>
                -->
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <executions>
                            <execution>
                                <phase>integration-test</phase>
                                <configuration>
                                    <tasks name="Run acunetix webscanner">
                                        <exec dir="C:\acunetix" executable="wvs_console.exe"
                                            os="Windows XP"
                                            output="${basedir}/target/acunetix/result.txt">
                                            <arg value="/Scan"/>
                                            <arg value="http://testphp.acunetix.com"/>
                                            <arg value="/Profile"/>
                                            <arg value="default"/>
                                            <arg value="/SaveToDatabase"/>
                                            <arg value="/GenerateReport"/>
                                            <arg value="${basedir}/target/acunetix"/>
                                            <arg value="/ReportFormat"/>
                                            <arg value="PDF"/>
                                            <arg value="/ReportExtraParams"/>
                                            <arg value="/r WVSComplianceReport.rep /k PCI12.xml"/>
                                            <arg value="--ScanningMode=Heuristic"/>
                                            <arg value="--UseAcuSensor=TRUE"/>
                                            <arg value="--EnablePortScanning=TRUE"/>
                                        </exec>
                                    </tasks>
                                </configuration>
                                <goals>
                                    <goal>run</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    Explanation

    Acunetix WVS console application can be run by running 'wvs_console.exe' from the Acunetix WVS installation directory.  An example of a typical Acunetix WVS scan command including explanation, can be found below:

    /Scan http://testphp.acunetix.com: Instruct the scanner to launch a single site scan against http://testphp.acunetix.com.

    /Profile default: Use default profile for scanning.

    /SaveToDatabase: This parameter instructs the scanner to save scan results to reporting database.  If this parameter is not enabled, reports cannot be generated.

    /GenerateReport "c:\reports\": Generate scan report in the path 'c:\reports'.

    /ReportFormat PDF: Generate the report in PDF format.

    /ReportExtraParams "/r WVSComplianceReport.rep /k PCI12.xml": Generate a PCI version1.2 compliance report (PCI12.xml) using the Compliance reporting template (WVSComplianceReport.rep).

    --ScanningMode=Heuristic: This option is to instruct the scanner to use heuristic scanning mode against specified target.

    --UseAcuSensor=TRUE: Use AcuSensor Technology during scan. The AcuSensor client files must be installed and configured on the target for AcuSensor Technology to function.

    --EnablePortScanning=TRUE: Instruct the scanner to port scan the target as well, and run network security tests (Network Alerts) against the target.

    References

  • Art of Fighting 2

    Extra power for the second game: To do this trick, you must own Art of Fighting 1 & 2 for memory-compatible systems. First, win all 3 bonus games on Art of Fighting 1 and then save your game. Then go to Art of Fighting 2 and choose load. Then choose the Art of Fighting 1 option you will be given. You will begin the game with all of the characteristics of the AOF1 bonus stages completed in Art of Fighting 2!!!

    Double Dragon

    Play as Duku or Shorko: At the character select, put the cursor on Billy, then Marian, then Chung Fu, then Jimmy for 3 seconds each time. If you do this code correctly you will hear "Bingo!". Now you can choose Duku or Shorko.

    Fatal Fury Special

    Sound Test: Pause the game, then press A, B, C, D, A.

    Fatal Fury 3

    Small characters: This works in the versus mode only. Once you select the two fighters, hold B and C on both controllers all the way through the loading screen until the match starts. You must do it again for each fight you want the code to take affect.

    Hidden Characters (CD version only): When you defeat Zin Chonrei and finish the game, save it. Now load the game and choose "NEW GAME"At the character select screen, move the cursor: to Terry, Hon Fu, Mai, Geese, Bob, Sokaku, Andy, Bash, Joe, then Mary; each time you move to a fighter, press B. You will here a voice say "Here comes new fighters!"

    Kabuki Klash

    Boss Code: Go to the battle mode, then push B 12 times, then right 8 times on controller one. The screen will flash and you will have control of Manto Ape and Karakuri. It will work on controller 2 as well.

    Change Color: After entering the code above, do the following: Select Yagumo: press A, A, forward+A, C. Her clothes will change to white if you did it correctly. Select Kinu: press down, down-back, back, down-back, forward, BC. Her clothes will change to purple.

    The King of Fighters '94

    Say Good bye to Censorship: On the high scores screen press A and D on controller 1 while you press B and C on controller 2.

    The King of Fighters '95

    Play as the Bosses: Pick "Team Edit". At the character select press up+B, right+C, left+A, down+D. Saishu Kusanagi and Omega Rugal will appear.

    Uncensor: On the high scores screen press A and D on controller 1 while you press B and C on controller 2. (same as KOF '94)

    The King of Fighters '96

    Boss (CD only): Press and hold the start button, then press up+B, right+C, left+A, down+D.

    The King of Fighters '97

    Play as Orochi Iori: At the character select, put the cursor on Iori, then hold start and press left, right, left, right, left, right, A+C.

    Play as Orochi Leona: At the character select, put the cursor on Leona, then hold start and press up, down, up, down, up, down, B+D.

    Classic Kyo: Highlight Kyo Kusanagi, hold start and then press A or D.

    Play as the Orochi Team: At the character select, hold start and then press up, left, down, right, up, down, B+C.

    See your team mate's attitude: While choosing a character at the order selection screen, hold C. A face will appear that represents the character's attitude. A smiling face means "always aid" and will add 1 bar to the second character in advanced mode. A neutral face means "random aid". A frowning face means "never aid" and will remove all bars.

    Choose a winning pose: Hold A, B, or C to select your pose.

    The King of Fighters '98

    Evil Rugal: Complete the game 1 time. Then at the character select, press and hold start when choosing Rugal.

    Alternate Characters: Some of the characters in this game have alternate versions. To activate, hold start and press the A button over one of the following characters to activate their alter ego: Kyo (KOF 94); Terry, Andy, Joe, Mai, or Billy (Real Bout 2); Ryo, Robert, or Yuri (AOF 2); Yashiro, Shermie, or Chris (Orochi '97 versions)

    The King of Fighters '99

    Play as real Kyo: Highlight the random character box (question mark) at the character select. While holding Start, press left, up, right, down, left.

    Play as Iori Yagami: Highlight the random character box (question mark) at the character select. While holding Start, press right, left, up, right, down, left.

    Kizuna Encounter Super Tag Battle

    Boss Code: Using them will put you under the following conditions: 1.No memory card saves. 2.No name sign in (high scores.) 3.No ending (story). 4.No tag partner (fight alone). At the team select screen, set the cursor on Mezu. Move left, up, right, you'll be on Gozu. Circle the screen once counterclockwise, returning to Gozu. Press D, you'll hear Jyazu's laugh. Jyazu is above Gozu's panel, tap up to access him. (up again to return to Gozu) It's the same for Shin Shishioh, who is above Kage Shishioh's panel.

    The Last Blade

    Boss code: At the character select, press C 6 times, B 3 times, and then C 4 times on controller 1. Then you will be able to play as Musashi, Kagami N, and Kagami H.

    The Last Blade 2

    Play as Unawakened Kaede: This code works in arcade, versus, or training mode. To activate, put the cursor on Kaede and press C nine times, B one time, and C four times. He will say something to let you know the code worked. Now press A to select him.

    Play as Kouryu: This code works in arcade, versus, or training mode. To activate, put the cursor on Kaede and press C ten times, B five times, and C four times. He will say something to let you know it worked. Now press A to select him.

    Play as Hagure: This code works in arcade, versus, or training mode. To activate, put the cursor on Akari and press C eight times, B nine times, wait one second, and C one time. Akari will say something to let you know it worked. Now press A to select him or her.

    Special Intro with Kotetsu: This code works in arcade, versus, or training mode. To activate, put the cursor on Kotetsu and press C five times, B ten times, then C two times. Kotetsu will say something to let you know the code worked. Now press A to select her. You can't play as her but you get an intro featuring her being thrown out of the stage by Shigen.

    EX Mode: When choosing between Speed or Power mode, highlight Speed and press C 6 times, highlight Power and press B 3 times, highlight Speed again and press C 4 times. The whole code must be done in under three seconds, so be quick!

    Magical Drop 2

    Hidden Characters: At the character select, highlight the following characters and press down (in order): The Fool, Magician, High Priestess, Chariot, Justice, Sorceress, and World. Devil. You may now select Strength or Empress.

    Neo-Geo Cup '98

    View the Name List: On the title screen, hold A+B+C and press the start button.

    Ninja Master's

    Play as Ranaru and Nobunga: Begin a one-player game. On the first player's side, set the cursor on Kamui and press left, down, left, up, left, down-left, up, right, down, right, up, C and D. The bosses will appear.

    Time Attack: This is for a one-player game only. At the character select, the cursor will start on Kamui. Once there, press down, left, up, left, down, left, up, left, down, right, right, right, right, up. Your cursor will be back on Kamui again. Press C and D together, now you can pick your character. The time attack will be canceled if player 2 decides to join the game.

    Pulstar

    Full Power: This code will let you restore your power whenever you are blinking (when the game starts or you've detonated your probe). To do it, press up, up, down, down, left, right, A, B.

    Stage Select: On the "Stage Start" screen, select the stage with all four buttons (A, B, C, D) at once. This will give you access to stages 5-8. For example, highlight stage 1, then push all 4 buttons to select stage 5. Stage 2=6, 3=7, 4=8.

    Demos: At the title screen hit left 7 times then right once. Now pressing A-D on either controller will show the corresponding cinema. Pad 1=demos 1-4, Pad 2=demos 5-8.

    Ragnagard

    Play as Behemoth: Highlight Syuten-Dozi at the character select, then press B, C, B, C, B, B, C, A.

    Play as Eelis: Highlight Benten at the character select, then press C, C, B, B, C, B, C, A.

    Play as Lucifer: Highlight Susano at the character select, then press B, C, C, C, B, B, B, C, A.

    Real Bout Fatal Fury Special

    Play Geese Howard (CD System): By finishing the game without losing a round you will obtain the status of "Ace", then at the Ranking screen press: right, up-right, up, up-left, left, down-left, down, down-right, right, down-right+ABC. If done correctly, you will hear Geese say: "Come on."

    Shadow Versions of Characters: At the character select, move to the character you choose to play as, then do the following: Hold the start button (don't let go of it!) Tap buttons in sequence: B, B, C, C. Now hold down the B button for about a second. While still holding B (and Start), press and hold the C button. While holding these three buttons, press A or D to select your character in Shadow form. You may now let go of all the buttons. (A or D is used to select the color of your character's clothes)

    Hidden Character: At the character select, highlight Andy, Billy, Tung, or Mary, then press and hold the start button. While holding start, press B, B, C, C then press and hold B. Wait for 1 second, press and hold C, then wait 1 more second. If you've done it correctly, Ex should appear.

    Samurai Showdown

    Play as Kuroko: At the character select screen in a versus game press up, down, left, up, down, right+A. The player who wants to play as Kuroko should press these buttons. After the match the game will reset.

    Play as Amakusa: Select any character and enter versus mode. Lose and then save the game. Load the game and then select Charlotte with controller 2 and continue the game. Press start on controller 1 in the bonus phase. Player 2 will change to Amakusa.

    Samurai Showdown II

    Blood: Go into the options. Highlight "EXIT" and press A+B+C+D simultaneously. THERE IS ANOTHER WAY TO DO IT: Go into the options, change the language to Japanese, then exit. Go back into the options again and change the language back to whatever language you prefer (if not Japanese), then exit. Start the game and it will be bloody.

    Play as Kuroko: Start a two-player game. On the character select screen, press up, down, left, up, down, right+A. You may now select Kuroko.

    Unlimited POW (Home Systems only): Press start on controller 1, and move to the option mode. Press start on controller 2, then in the options menu, you can now change the POW setting from "NORMAL" to "MAX".

    Samurai Showdown III

    Zankuro: Join in a 1-player game on controller 2. At the character select, move the joystick from Shizumaru...left, left, down, right, right, up, right, down, right, right, up, left, left. You will be back at Shizumaru. Once there, wait about 3 seconds, then press A,B, and Start simultaneously. Zankuro will appear.

    Blood: Go into the options. Highlight "EXIT" and press A+B+C+D simultaneously.

    Samurai Showdown IV

    Suicide: While playing, press left, right, down+start

    Blood Code: Here's a way for you to get rid of the censorship that was done for the U.S. systems. You will get blood and the ability to perform "No Contest" moves. On the option screen go to "EXIT" and press ABCD all at the exact same time. Now when you start any kind of game you will get the uncensored version.

    Zankuro (CD system only): In the versus mode, hold the D button and press "A". Both players may play as Zankuro, but in the versus mode only.

    Twinkle Star Sprites

    Play the bosses: On the character select screen hilight Load-Ran, press up 4 times and press a button to select Sprites, or press down 4 times and press a button to select Memory. Also instead, you may hilight Griffon (the group with 3 people) and follow the same procedure to select Mevious (up) or Dark-Ran (down).

    World Heroes Perfect

    Play as Neo Dio: At the character select, hold B and press up, up, down, down, left, left, right, right, BC.

    Play as Son Guko: At the character select, hold C and press up, up, down, down, left, left, right, right, BC.

  • If you're shopping for a new CamCorder with HD (720p, 1080i) support, you should take a look at what Sony offer:

    "The HDR-SR1 is one of the best examples of why this is an exciting time for camcorders. Within this single model, we see the major advance of an emerging media – hard disk drive – and the birth of a new video standard – AVCHD."Camcorderinfo.com has already 2 reviews: review1 and review2

    and JVC with their new HD Everio GZ-HD7 (but not before april 2007).
    All in all, the market is now offering more than 5 Camcorder: Panasonic NV-GS500, Sony (4 models) and JVC (2 Everio)



  • I've just ordered my first home cinema projector: The Sony Hs50 (or Hs51 in USA because it has an ethernet connector more)


    Brightness (Lumens) : 1200 ANSI
    Contrast: ANSI:
         **
    Full On/Off: 6000:1
    Weight: 5.7 kg
    Size (cm) (HxWxD) : 13.6 x 34.9 x 35.9
    Throw Dist (m) : 1.8 - 5.8
    Image Size (cm) : 101.6 - 508.0
    Lens: Focus:
    Manual
    Zoom: Manual, 1.55:1
    Optional Lenses: No
    Digital Zoom:      **
    Keystone Correction: Fixed
    Lens Shift: H+V
    Compatibility: HDTV:
    1080p, 1080i, 720p
    575i
    EDTV/480p: Yes
    SDTV/480i: Yes
    Component Video: Yes
    Video: Yes
    Digital Input: HDMI (HDCP)
    Personal Computers: Yes
    Networking: Wired:
    Yes


    Warranty: 2 Years
    Lamp: Type:
    135W UHP
    Life: 2000 hours
    Eco-Mode Life: 3000 hours
    Quantity: 1
    Display: Type:
    0.7" PolySi LCD (3)
    Native: 1280x720 Pixels
    Maximum: 1280x768 Pixels
    Aspect Ratio: 16:9 (WXGA)
    Performance:  
    H-Sync Range: 19.0 - 72.0kHz
    V-Sync Range: 48 - 92Hz
    Pixel Clock:      **
    Speakers:      **
    Max Power: 195W
    Voltage: 100V - 240V
    FCC Class: B
    Audible Noise: 24.0 dB


  • apache_maven

    The obvious things to do first in no particular order

    • Use a better build server, CPU power is cheap today,
    • Throw more memory, as Maven run in a JVM the more you have the better it may behave, you may want also to increased the perm gen space,
    • Use the latest  version of JVM!
    • Switch as many plugins as possible as long as there are not needed in the main build loop: Use profile to modularize your build and trigger some additional build/reporting plugins when needed. You want your build to be fast to provide fast feedback to your developers.
    • Optimize your test cases, some may take longer than other, use @BeforeClass or Lazy initialization to cache some heavy to create objects,
    • Tune the garbage collector according to your build behavior, number of CPU core:  use parallel garbage collector for example,
    • Carefully review your dependencies as the less Apache Maven has to load while building the faster it will get.
      • Are they all needed?
      • No duplicates dependencies?
      • Do you miss some <exclusions>? are all these transitive dependencies to your 3rd party needed?
      • No dependencies cycles? check the order in reactor. A developer should understand, and not be surprised by  the order of the modules calculated by Maven (as long as you have layers in your software, you expect some modules to be build before some others) .
    • Review ALL logs files
      • The one created by Maven to avoid any warnings and
      • All your application logs (do you log too much data during the build?)
  • apache_maven

    Maven 2 builds can be quite slow, especially if you are not following the best practices of using Maven in Eclipse. For example if you are not removing all /target directories from version control!

    If you let /target directories going into version control, the following happen:

    • Each full build of the workspace,
    • Each partial build of modules,

    Will clean /target directories, and thus force the SVN daemon to mark files as changed… thus consuming an enormous amount of time and resources (disk IO). You may also have obstructed files, because some developer may have committed some of these target files, but the build may wipe the /target/.svn metadata

    Obstructed files
    In a status operation denotes that the item in the Working Copy being currently processed has a non-expected kind. For example, a file is considered to be obstructed if it was deleted (with an SVN client non-compatible delete operation) and a directory with the same name as the file had had was added (but again with an SVN client non-compatible operation). Typically what Maven is doing in goals clean and compile

    The solution

    Typically it is recommended to hide Eclipse project artifacts and Maven build targets from Subversion/CVS. M2Eclipse like to change the .classpath file (sometimes some entries are 3 times available in this file BUG?), this is one more reason not to commit these files.

    If you use CVS

    First Check in your project using the Eclipse team support (select from the context menu Team > Share Project), but only check what is needed. You should have a .cvsignorefile, prior to commit, with the following entries for each module:

      .project
      .classpath
      .settings
      .wtpmodules
      target

    If you use SVN, you can set the svn:ignore property on all shared module and project by

    • First Check in your project using the Eclipse team support (select from the context menu Team > Share Project), but only check what is needed.
    • Then select all Maven projects and Maven modules,
    • Right clicking on them while selected,
    • Select TeamSet Property
      maven.svn-ignore
    • Enter at least the following entries
        .project
        .classpath
        .settings
        .wtpmodules
        target

    You will see that the specified files and directories are now being ignored by Subversion.

    Note

    1. Eclipse will automatically generate a new simple .project-file/ .classpath-file  when you check out the project from the repository.
    2. I would like to see M2Eclipse being able to automatically remove the target directory from SVN/CVS while sharing…
  • apache_maven

    How to remote debug test cases

    Change the Team city project configuration by adding a -Dmaven.surefire.debug to Maven runner in Additional "Maven command line parameters"

    maven.remote.debug.testcases

    Now when test cases will be executed by maven surefire plugin, the build will wait for a remote debugging application to pick it up on port 5005 and this for EVERY MODULES
    meaning:  If you have 5 Maven modules (= java projects) with test cases maven surefire will request 5 times you to connect with remote debugging to your build server.

    Create a Remote Java Application launcher you'll also share in one eclipse project:

    maven.remote.debug.launcher

     

    Don't forget to remove the -D variable or your daily build may wait for a remote debug connection! or create a special build configuration of your project targeted for debugging purpose.

    Remote debugging Maven plugin

    put into "JVM command line parameters:" these settings:

    -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5006

    debug.maven.in.teamcity

    Create a Remote Java Application launcher you'll also share in one eclipse project that will connect to the port 5006.

  • I forgot to blog about this presentation at JAZOON 2008, but I did never forget the added value of this plugin. It is not currently in Apache Maven  core but will for sure find its way as an official plugin one day, since it solve elegantly a common problem: technology management

    Maven does not know the concept of an artifact life cycle. Such life cycle status information would allow to extend the dependency management in a new dimension. One could declare whether certain dependencies are actually allowed/forbidden/restricted to be used in a project, enabling effective technology management.

    Currently a plugin is available to achieve this goal:The AssertDepend plugin. It work by adding metadata, additional xml files in artifact group directory.

    The AssertDepend plugin is a Maven extension to perform effective technology management. The plugin checks at build time against lifecycle states defined in metadata on remote repositories in order to inform the developer about inappropriate technology usage (dependency enforcement). Based on a flag the build would either fail or print a warning.


    Technology management benefits and means

    The capability to manage dependencies and technologies on a mature level is essential for software organizations of a certain size. Technology management becomes a key discipline and must be introduced in a careful way to allow for mutual benefits among its stakeholder including developer, management, and customers.

    Artifact lifecycle management

    To perform effective technology management, you should keep the number of approved artifacts as small as possible. You cannot remove artifacts from the repository if you want to sustain reproducible builds. Therefore, each artifact in the repository should be marked with a corresponding lifecycle state.

    The proposed main states are (but the plugin is not limited, you can create your own)

    • approved
    • prohibited
    • investigating

    With these states, it solve elegantly the following use cases.

    Scenario 1: Flawed versions
    It turns out that my-app-1.4.2.jar contains a serious security issue and is therefore flawed. Clients of this JAR should actually switch to a newer version my-app-1.4.3.jar which fixes the bug and which is safe to use.

    Scenario 2: Decommissioning
    Let's assume that my-app-1.4.2.jar is not supported anymore and projects should actually switch to a new release stream
    (my-app-2.x.y.jar).

    Scenario 3: Restricted usage
    Consider a library which has a restricted set of client projects, e.g. only certain projects are allowed to depend on a specific artifact.

    Usage

    Artifact lifecycle metadata must be placed in a file named maven-artifact-lifecycle.xml in the corresponding group directory. For instance, if you want to define lifecycle information for struts, the corresponding metadata file is located here: struts/struts/maven-artifact-lifecycle.xml

    This plugin can be downloaded at http://madp.sourceforge.net/index.html

  • apache_maven

    The last year, I was at Jazoon 08, and I forget to tell you how good some of their presentation about Maven were

     

     

    Technology management with Maven

    The list of dependencies in a project of a certain size can be very long. New frameworks and libraries emerge at a fast pace, and they often affect that list. Developers and managers have to keep track of dependencies by maintaining dependency repositories, and they have to ensure that the accumulated knowledge is always available in an easily accessible and distributable form.Maven provides effective mechanisms to cope with the breadth of such dependencies. Also, there are tools that help manage artifact repositories in dealing with the information overload often associated with repositories. However, Maven does not support the concept of technology lifecycle (not to be confused with the Maven build lifecycle), which implies that it does not support technology lifecycle handling and storing of knowledge about the quality of a dependency. Read More Here

  •  

    I will list below the Best review of  projector screens I've found, beside this it is really depressive to see Google only being able to return all these online shops with nothing interesting instead of good reviews articles like these:
    1. White, Grey, or Silver - A Review Welcome to my third screen review. This review will demonstrate three professionally manufactured materials that are White, Grey, and Silver. I hope to demonstrate the differences of what these different screen colorations can offer and how you may benefit.
    2. A Screen Showcase & DIY Review Welcome to my second screen review. This review will include lower gain screen materials, what they do, and what they are made of. I see this as a benefit to people because screen surfaces and materials remain a mystery to most. It will include some DIY materials but must be somewhat limited as there are literally thousands of materials to bounce light off of. So, of course, they cannot all be covered here. Finally, at the end, there will be a fun little shootout between some DIY materials and the infamous Stewart Firehawk. 
    3. The High-Gain/Exotic Screen Review  After critically looking at these screens for over 5 days and taking over 200 pictures I must say this was one hard review. There are so many variables, they cannot all be covered here. In the end, it is important to try to achieve the greatest benefit for the environment or viewing you want to achieve. This review will focus on 5 high power screens surfaces and will include 3 lower power for reference only.
    4. to be continued...
  • apache_maven

    build.tools

     

     

     

     

     

    Even if the sample is quite small (600 responses), it still interesting going through these compiled data

    Some time ago we ran a survey asking a few questions about the build process, specifically the tools that are used to do incremental builds and how much time those builds take. We had over 600 responses, so now it’s time to count the results.

    This is the first time that we’ve published results on the incremental build process, so the information is more likely to serve as a guide than an authoritative information source.

    Read More here

  • Tom Tom homepage  has change today, at least in USA, UK, the french page has not been updated.
    You can see a falsh  demo of possibilities offer by this GPS designed specifically for 2 wheels. I will acquire one as soon as it hit the shelves in switzerland.

  • Here is 3 different way to control the lifetime a local Tomcat 7 container using Apache Maven. A typical scenario would be to start a servlet container prior to running integration tests (Selenium, SAHI or using any other framework you can think of )

    With the following examples, you will be able to start an instance of Tomcat 7 running your web application in the pre-integration-test phase and stop the instance in the post-integration-test phase. You can also decide to use an embedded container like Jetty instead.