Elevation Sickness
case of elevation (mountain, altitude) sickness.
I was skiing with Liliann which was very exhausting because she was
going straight down and my job was to slow her down with the long
harness, constant "resistance training" on my legs. After that Sławek
took me to do some "real skiing" and somehow I just could not keep up,
I was breathing very heavily, but feeling like chocking, I was
lightheaded, even after a long rest, on the way back I was on the
verge of passing out. At that time I just thought I was just
dehydrated and out of shape, which sadly I am. My friends mentioned
it is because of the elevation.
After coming back to the hotel room the whole evening I had attacks of
coughing even if I did NOT get cold at all. That is when I realized it
is definitely elevation sickness. I loaded up on NyQuill, drunk lots
of Gatorade (in case I was dehydrated), and passed out.
I woke up feeling good and ready to ski. Yesterday was a pure woo-doo,
I cannot explain it otherwise. Today, I have been skiing the whole day
both with Liliann and alone in the conditions and elevations as
difficult as yesterday. I did some crazy runs like "Psychopath" some
12,000+ feet up (the mountain sickness starts at 8,200 feet). Nothing
wrong with me, I felt good and had energy on the end of the day.
I remember from school that it takes for the body about 48 hours to
create red blood cells to carry decreased oxygen levels to the body
and brain. Since I have been in Rockies for over 2 days, I guess I am
slowly adjusting.
http://en.wikipedia.org/wiki/High_altitude_pulmonary_edema
Lost?
"psychopath" , "bone yard" and the "tunnel"
You will be just fine!
View from the bookstore
if I could handle this view! Boulder, Colorado.
Kenosha, WI
lakefront.
It has been a good year at work.
Management Style
"If employees just did what they were told to do, you would continually find defects at the end of the line. We want employees to go beyond what they are told and be creative, building quality into the process." - Mitsuo Kinoshita (Toyota)
I have learned about this for the first time in U.S. Marines c.1995 during Total Quality Management training based on Japanese Kaizen. The young Marine leaders were trained to make independend decisions in case of the interruption of the chain-of-command (death of the superiors) in order to be able to function in chaos of battle, conflicting reports and lack of communication with the outside world.
I modern company it means that the manager is serving as a mentor and instructor that constantly makes the employee responsible for planning, sharing knowledge and executing of the tasks. The manager should faciliate the communications, continous quality improvement, cut the bureaucratic "fat" and inefficiencies (BS). Manager should empower the employees to act and grow, not just do their jobs.
While "running a thight ship" the manager(captain) should strive to achieve a command where each member of the team comes forward with ideas, takes pride and responsibility in the work, grows and learns, transfers knowledge to others and is able to take charge when called upon.
Quality improvement (Toyota example)
"Something is wrong if we do not look around each day, find things that are wrong, unclear, tedious or repetitive, and then rewrite the procedures." - paraphresing Taiichi Ohno (Toyota)
One of the recent changes on our way of software development is to de-emphesize the rush for new features in order to ensure the quality of the delivered product.
When we propose a new product (QA build) we STOP new development until all problems are resolved and the application is trully polished, unit tested and documented. We involve our clients in QA process.
Only when problems are resolved we can provide product for UAT (user acceptance testing) and production deployment.
Only when everyone is absolutely happy with the features they delivered we start PLANNING the new development.
While in planning phase, we listen to the user feedback and fix any problems we missed, code at this point is still the same as UAT.
This is: fix problems first policy.
Once a stable product backed up by a suite of regression tests (Selenium) and delivered to the users, we go into a phase of intense development of new features.
The philosophy here is to continously deliver new, solid features that fully satisfy the client. Quality vs. poor quantity. Having less features hardly ever breaks the deal, having production problems always does.
Gilead: PersistentRemoteService
[WARN] StandardContext[]Exception while dispatching incoming RPC call
java.lang.NullPointerException: null
at net.sf.gilead.core.PersistentBeanManager.mergePojo(PersistentBeanManager.java:423)
at net.sf.gilead.core.PersistentBeanManager.merge(PersistentBeanManager.java:289)
at net.sf.gilead.gwt.GileadRPCHelper.parseInputParameters(GileadRPCHelper.java:89)
at net.sf.gilead.gwt.PersistentRemoteService.processCall(PersistentRemoteService.java:147)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost(RemoteServiceServlet.java:86)
So if you don't use spring to create your PersistentRemoteServices, then you have to include these 2 lines in the constructor of all your services.
XmlBeanFactory application = ApplicationContextFactory.getXmlBeanFactoryInstance();
setBeanManager((PersistentBeanManager) application.getBean("hibernateBeanManager"));
After skiing
Ok, so this picture is not so good, but it is the only one I have. My hair is wet (melted ice), we are tired and it is a late night outside. We are sitting in front of a big log fireplace in the ski lodge.
No fear! Exhibition, baby!
Liliann first time up with the lift today. Here coming down on black diamond run "Exhibition", fun and no fear.
Spring beans: ApplicationContextFactory
No one have promised life to be fair
Yet, I still wonder where I'd have err
And so much so -- it is so bleak
It 's surely not because I'm weak
I am a flower, beautiful, strong
I haven't done anything wrong
Born to a garden that they call "lost"
No one invited -- I am a ghost
Guarded by dogs that cannot see
color and beauty that is in me
But flower's bueaty is being lost
If no one smell it, no one's a host
No one to care, no one to cherish
I live alone and so I'll perish.
Mac: resetting system and user password
- Insert the MacOS CD that matches with your Mac OS version.
- Shut down your Mac
- press C key + power button.
- Click Continue for the welcome menu
- Select Utilities from the upper menu bar
- Select Reset Password from the Utilities menu.
- Select HD, which is your hard drive
- Enter your new password
- Click on Reset Defaults
- Click on save button
- Select Quit Installation CD from the MacOS Install CD
Java: file writer
public static void main(String[] args)
{
try
{
FileHelper.write(new File("csd_temp.txt"), "Hello World!");
} catch (FileNotFoundException e)
{
e.printStackTrace();
} catch (IOException e)
{
e.printStackTrace();
}
}
public static void write(File file, String text) throws FileNotFoundException, IOException
{
if (file == null)
throw new IllegalArgumentException("File should not be null.");
if (!file.exists())
file.createNewFile();
if (!file.exists())
throw new FileNotFoundException("File does not exist: " + file);
if (!file.isFile())
throw new IllegalArgumentException("Should not be a directory: " + file);
if (!file.canWrite())
throw new IllegalArgumentException("File cannot be written: " + file);
Writer output = new BufferedWriter(new FileWriter(file));
try
{
output.write(text);
} finally
{
output.close();
}
}
GILEAD replaces Hibernate4GWT
http://noon.gilead.free.fr/gilead/index.php?page=f-a-q
1) Download ZIP:
http://sourceforge.net/project/showfiles.php?group_id=239931&package_id=291834&release_id=639455
Import jar files into Maven2 repo:
mvn install:install-file -DgroupId=net.sf.gilead -DartifactId=adapter-core -Dversion=1.2.0.29 -Dpackaging=jar -Dfile=*download location*/gilead-1.2.0.29/dist/adapter-core-1.2.0.29.jar
mvn install:install-file -DgroupId=net.sf.gilead -DartifactId=adapter4gwt -Dversion=1.2.0.29 -Dpackaging=jar -Dfile=*download location*/gilead-1.2.0.29/dist/adapter4gwt-1.2.0.29.jar
mvn install:install-file -DgroupId=net.sf.gilead -DartifactId=hibernate-util -Dversion=1.2.0.29 -Dpackaging=jar -Dfile=*download location*/gilead-1.2.0.29/dist/hibernate-util-1.2.0.29.jar
mvn install:install-file -DgroupId=net.sf.beanlib -DartifactId=beanlib -Dversion=3.3.0beta21 -Dpackaging=jar -Dfile=*download location*/gilead-1.2.0.29/adapter-core/lib/beanlib-3.3.0beta21b.jar
mvn install:install-file -DgroupId=net.sf.beanlib -DartifactId=beanlib-hibernate -Dversion=3.3.0beta21 -Dpackaging=jar -Dfile=*download location*/gilead-1.2.0.29/adapter-core/lib/beanlib-hibernate-3.3.0beta21b.jar
2) replace in XYZ.gwt.xml
<inherits name="net.sf.hibernate4gwt.Hibernate4Gwt15" />
with
<inherits name="net.sf.gilead.Adapter4Gwt15" />
3) replace LazyPojo with LightEntity
import net.sf.hibernate4gwt.pojo.java5.LazyPojo;
public class BaseDTO extends LazyPojo
with
import net.sf.gilead.pojo.java5.LightEntity;
public class BaseDTO extends LightEntity
4) replace
import net.sf.hibernate4gwt.core.HibernateBeanManager;
import net.sf.hibernate4gwt.gwt.HibernateRemoteService;
public class SomeClassImpl extends HibernateRemoteService
with
import net.sf.gilead.core.PersistentBeanManager;
import net.sf.gilead.gwt.PersistentRemoteService;
public class SomeClassImpl extends PersistentRemoteService
5) change how you get the beans:
ApplicationContextFactory application = ApplicationContextFactory.getInstance();
setBeanManager((PersistentBeanManager) application.getBean("hibernateBeanManager"));
addressDao = (AddressDao) application.getBean("addressDao");
It also seems like there were some issues with merging arrays that was
fixed in the 1.1.1 version of hibernate4gwt http://hibernate4gwt.sourceforge.net/news.html
We have had some issues with merging objects that contain Lists or
Sets of other objects and getting classcastexception errors. hopefully
going to the new version will fix these issues.
Java compareTo method for TreeSet
- To use java comparable class, implement Comparable<> in your class
- Write a compareTo method as below:
public int compareTo(TeamDTO teamDTO)
{
TreeMap
map.put(getKey(teamDTO), teamDTO.getId());
map.put(getKey(this), this.getId());
if (map.firstKey().toString().equals(getKey(this)))
return -1;
return 1;
}
#0005 Gewurztraminer
- sanitize primary fermenter bucket
- add 4 L of warm water, mix in the Bentonite (30gr. / 35ml)
- add grape concentrate (9L / 2.37 US gallon)
- add warm water until 6 US gallons
- S.G. 1.080 (the reading should be within 1.074-1.090)
- sprincle 5 gr. "Lalvin EC-1118 Saccharomyces bayanus" yeast, do not mix
- leave for 14 day until S.G. is 0.998, or lower
- mix occasionally for first few days
- S.G. : 1.020
- fermentation continues well
- rack into 6 gallon carboy
#0001 Riesling Ice Wine
3 U.S. gallons
Saturday, December 13, 2008
- half way cleared
- racked clear top to about 4 bottles
- added glass marbles (bad idea)
- added clarifying agent to the rest and set to the cooler place
- only half way cleared
- leave until clear in the cool place
- clearing went well, but i would not use marbles again
- not as clear as original top batch
- bottled and put away
#0003 Pomegranate Cherry Apple
- in the middle of secondary fermentation
- check S.G. 1.078
- leave until fermentation ends (alcohol kills the yeast)
#0004 Pomegranate, Cherry, Apple, Honey wine
- 2 US gallons of Apple cider - Indian Summer
- 1.5 quarts of honey
- 10 cans of Pomegranate Cherry
- add water to 5.5 gallons
- S.G. 1.076 10% potential alcohol
- add 6 Campden tablets
- mix 1 cup of warm water and 1 Tbsp of Bentonite
- wait 24 hours
- add yeast nutrient
- add Pectic Enzyme
- PH 3.8
- add yeast starter
- mix
- racked from primary frementer to secondary carboy
- S.G. 1.000 (no sugar left)
- fermentation stopped
- added 10 lbs. of sugar until S.G. 1.074 (very sweet)
- added the orange juice yeast starter
- leave until fermentation stops (alcohol content kills the yeast)
Bamboo fishing rod
old fishing rod, what a beauty!
Batch #0002 Pomegranate Cherry
- S.G. 1.018
- added 6 crushed Campden tablets to stop the fermentation
- added 150 ml of sugar
- added Kieselsol clarifying agent
- added Chitosan clarifying agent
- wait at least 24 hours and rack the wine to clean carboy
- bottled 3 gallons
- clarity excellent
- color red (like Cherry juice)
- taste excellent, sweet but not too much
- left 3 gallons in the small carboy because I had no clean bottles and corks
- sweet,
- final S.G. 1.024
- very good wine
iPhone: Java blog
Mac OS X: Black border around active element
Quality Testing
This (jUnit) is the first step for creating a quality product. A simple fact of writing a test before code implementation, forces the developer to think about various "what if?" scenarios. Testing a given method, or module, for both positive and negative inputs is essential and it is also a good example of how to use that code. Running all the tests at regular intervals assures good integration and regressions testing.
Selenium UI testing
Selenium provide the ability to regression-test hundreds of features that would be tedious for the human to test and retest. It quickly identifies the points of failure.
Code freeze
Code freeze happens when the QA/UAT is built and following the build. No NEW development happens during the code freeze. ALL developers concentrate
on:
- fixing the issues that were identified in this build,
- documenting the items they just finished,
- updating the QA checklist with new features,
- creating Selenium tests for the items just finished,
- planning and documenting future development,
Aging
magazine and realized that:
- in 10 years I will look like Johnny Depp (45)
- in 12 years I will look like George Clooney (47)
I just cannot wait to grow up!
iPhone: Actions & Outlets
Action: a method that will be called once user does something to the widget
Outlet: a widget that will change as a result of some action
Connecting an Action:
iPhone: TextField to Label
Clearing half way
This wine has cleared only have way. You can see the line of sediment in the middle.
Saturday, December 13, 2008
- racked clear top to about 4 bottles
- added clarifying agent to the rest and set to the cooler place
final S.G. 1.046
My favorite quotations..
“A man should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects.” by Robert A. Heinlein
"We are but habits and memories we chose to carry along." ~ Uki D. Lucas
Recommended pages
Popular Recent Articles
-
O'REILLY 201 0011 031 10110100180 000110111 01100041 001100010010000 5011011001010 1101110011 000100000 00000 10 1000012 Escaping the Bu...
-
I have noticed a very unsettling statistic on my blog. This prompted a fascinating question about AI, blogs' future, and maybe even the...
-
Installation of Java on Pi is easy, you can ssh to your Pi remotely and just execute: pi@raspberrypi ~ $ sudo apt-get update && su...
-
Epiphany is one of these interesting words that can mean so much. For me it means the crossroad where I chose the road less travelled. The r...
-
I progressively cut my hair shorter and shorter. Now, I just came back from the swimming pool with Lili, so it is a mess.
-
Done working with your Beagle? You don't want to to just yank on the cord, you can shutdown your BBB in couple ways: 1) press "powe...
-
In this tutorial we will discuss upgrading Maven on Mac OS X. While trying building with Maven I was getting errors related to version numbe...
-
Unix time date format is used in many applications, including Yahoo finance. using Dates, Printf unix_date = @sprintf("%.0f", Date...
-
Creating HTML anchor tab for email with subject: <a href="mailto:YourName@me.com?subject=Hi" >email link </a>