ysflight.com - From Author

Old Articles =>[2009] [2008] [2007] [2006] [2005] [2004]

[Link to 2011 posts]


Photos from Wings Over Pittsburgh 2010

I finally organized photos from this years Wings Over Pittsburgh air show, which was held September 11 and 12.  I didn't forget about uploading pictures, but I was too busy to do that.


Minimalist's OpenGL programming framework for Windows, Mac OSX, and Linux

I have promoted (sort of) "Mac OSX C++ programming template for minimalists" to directly under my Programming section.  I have been using this framework for verifying algorithms for my research, used in my C++ programming course, and it is based on the code I wrote for YSFLIGHT, so it is well tested.  And, it is small.  You don't have to be worried about framework-generated files filling up your hard drive.

So, if you are planning to teach C++ and OpenGL soon, or if you are looking for a small and simple framework for your research programming, it could be useful.  I also wrote function reference.

By the way, it has nothing to do with C++, OpenGL, or YSFLIGHT, but I'll bowl for the final play-off tournament in the bowling league.  My individual average of this regular season was 191, and kept the top position.  But, let's see if our team can get to the first place in the final tournament.

Update at 23:08  Result of the bowling play-off games.

Our team lost the first game of the tournament.  Everyone in my team, including myself, bowled below average, and I bowled my season low of 129 in the second game.  Our team moved to the consolation final for the third place.  Our team won the first game, and lost the second of the consolation final, and in the third game, I bowled 10 strikes in a row.  In fact, everyone was watching my shots rather than the final game, according to one of my friends.  It was such a nice feeling :-)  The 11th shot hit the pocket square, I thought, but 7 pin didn't give way.  I missed my first perfect game, but I renewed my personal high by more than 20 pins.

Score of the last game.  Click to enlarge.


YSFLIGHT for Mac Reset Tool Test Version

I had uploaded YSFLIGHT Reset Tool for Mac.  In Windows, it could be done by selecting "YSFLIGHT -  Reset Setting" from the start menu.  But, I couldn't figure out the way to do the same in Mac OS X.  So, I made a separate program for resetting the configuration options of YSFLIGHT.  (Test version of YSFLIGHT for Mac Reset Tool is available from here.)

Fail!  Dell Latitude XT Modernization Project

As you know, I put Amazon Affiliate Banner on this web site.  It works like this.  When I buy something interesting, and I write an article about it, you may also think it is an interesting item.  If you click on the banner and buy the item from Amazon.com, I receive some percentage of incentive.  So, whenever I buy something, (not necessarily from Amazon, but anyway) and if I find it useful or interesting, I try to post an article about it.  But, the reality doesn't work that way.  This time, I purchased an SSD to extend the life of my Latitude XT, but I ended up with wasting $500 of my research fund.  (Read more....)


YSFLIGHT Test Version Out for Download

I ended up spending half a day to compile and prepare test version for Windows, Mac OSX, and Linux, but it is out.

If you are willing to help me testing this untested version, you can download it from here.  Thank you for your help!


Taking one day off

I've been having fun but super busy this semester.  It's going to be over in two weeks.  I should be able to take a good rest in the Thanksgiving holidays next week, but I also took one day off today and determined not to work.  That's why I'm updating YSFLIGHT.COM.  I need to come up with take-home exam questions by Monday, but I'll do it in the weekend.

Toward the end of the year, I have a few things I'm planning to do aside from my work.  First thing is, of course, to roll out the new version of YSFLIGHT.  There would be a lot of improvements in the user interface.  I really wanted to add virtual air traffic controller, but I don't seem to have time for it.  In fact, I also wanted to add Western Pennsylvania map so that I can use it for my IFR practice.  It would be postponed to the future versions.  Nonetheless, I believe the new version includes good enough improvements.  Hopefully, I push the test version out during the Thanksgiving.  (Is it next week?  Really?  I cannot believe it!  Everything comes so fast on me!)

Another thing is to document my YS-Class library.  I'm learning Doxygen for that purpose.  In the next version of YSFLIGHT, sound-effect module will be a DLL, and I'll open the source code so that an ambitious user can write an add-on sound module.  In a long run, I'm thinking to allow more plug-ins to enhance YSFLIGHT functionalities.  Since YSFLIGHT is based on my YS-Class library, I want to better document it before opening up plug-in interfaces.  I have been trying to add plug-in interface in YSFLIGHT for long time, and I'm making a very slow progress.  It'll eventually come.  Sound DLL is the first step.

I also purchased the following two books.  "Learning iPhone programming" and "Cocoa and Objective-C: Up and Running." both from O'Reilly.  I have iPod Touch now and am interested in writing programs for it.  I loved Palm.  But, only one complaint was I was not able to write my own programs.  I could have, but the programming resource for PalmOS was limited.  Now I have my Macbook Pro, and the latest XCode comes with iPhone SDK + iPhone Simulator.  I can postpone signing up the iPhone developer program ($99/year) until I am sure my program works at least on the simulator.  I need to visit Japan for my cousin's wedding late December, so I am planning to read through the books during the trip.

I also try to get better understanding of Objective-C.  When I ported YSFLIGHT to Mac OSX, I had only vague understanding of Objective-C.  This time I try to understand details that I didn't clearly understand.  I still say the biggest weakness of Mac OSX and iOS is dependency on Objective-C.  Objective-C is inferior to C++.  I was able to port YSFLIGHT to Mac OSX only because I figured a way to minimize Objective-C code and write the rest in C++.  My hope is, by studying Objective-C, I can figure out the way to further reduce transaction between my Objective-C code and C++ code.

I also thought about buying iPad and getting these books as e-books so that I don't have to carry two books physically.  I have been skeptical about an e-book.  I don't have too much free time to read many books.  The latest book I was reading was "Apache: Inside the Cockpit of the World's Most Deadly Fighting Machine ".  The book is good.  I like to read further, but I was stopping simply because I couldn't afford time.  (I'll read some bit tonight maybe.)  So, I was not thinking e-book was for me.  But, I realized that if I put "C Programming Language (2nd Edition) ", "The C++ Programming Language: Special Edition ", "OpenGL Programming Guide: The Official Guide to Learning OpenGL, Versions 3.0 and 3.1 (7th Edition) ", and all those programming textbooks and references, it would be great.  I can pull out those books any time anywhere.  I don't need to send a reminder to my own E-Mail address so that I don't forget to look up what I was looking for when I am home.  The problem of finding things on the Internet is there is no way I can confirm if it is the right way to do.  For that point, textbooks and reference books are more reliable.

However, I stopped short of actually buying e-books it because I noticed all those e-books are DRM contaminated.  DRM is such a horrible idea as everyone knows it.  You pay for something but you will not own it.  It sounds ridiculous enough to me.  Let's say I buy 100 e-Books.  What's going to happen if someone by mistake wiped out my account information?  I lose all 100 books.  If I lost my books because I didn't take backup copies, that's my fault.  I would be responsible for it.  But, the idea that someone else controls my property is unacceptable.

Or, what will happen if I become permanently unconscious due to an accident or disease or for whatever reason?  Nobody will be able to access my e-books.  So, the value of my e-books will be jeopardized.  Is it ok from the economics point of view?  Is it ok to let the property value vaporize into thin air?  I think this can be a potential threat to our economic system.  The current economic disaster started when the real estate suddenly lost its value.  Similarly, sudden disappearance of information property could be the trigger of the next depression.  I don't want to lose my property because of someone else's fault.  Unless I can buy a DRM-free copy, I don't go for e-books.

One solution could be put heavy-enough responsibility on the company who manages those access rights.  In this world, the value of information is as heavy as the value of money.  Banks are held responsible for the money trusted on them and are FDIC insured.  Same level of responsibility should be put on those companies who sells music, movie, and books if they want us to trust those information-access rights on them, and someone should insure the access rights.

And, always irony comes in the end.  Later I figured O'Reilly sells DRM-free PDFs of the above books, when it was too late.  I will carry heavy paper copies for this trip :-P  But, I praise O'Reilly for the right decision!


Uploaded photos from Cleveland Air Show 2010

The air show was already a month ago.  But, I couldn't take time to put photos together.  I finally did it and uploaded.

By the way, I forgot mention one more excitement from the last week.  I was in an accident while I was riding a bus.  It was not a serious accident at all.  Rather it was a stupid accident.  The bus was hit by a truck from the behind when it was stopping to load some passengers.  Nobody was injured.  But, it was during the rush hour.  Everyone had to get off, and take the next bus.  The next bus was totally packed due to this accident.  I didn't understand why the truck driver was able to crash into the bus that was not moving.

After I was trained for my instrument rating, I believe that in both driving a car and flying an airplane, I need to be able to appropriately distribute the attention.  Focusing on one thing is bad.  For example, talking on a cell phone while driving is dangerous if the driver concentrates on the phone conversation.  If the driver is able to control how much attention goes to the phone and how much goes to the outside, there is nothing dangerous.  Hitting a person while talking on the phone and hitting a person while you are driving in an unfamiliar place and looking at street signs are from the same reason.  If the drivers are trained to manage and distribute the attention, this type of accidents can substantially be reduced.

The following picture is a panel ripped by the collision.


YSFLIGHT for Windows now uses DirectSound API.  Ended up with having more doubt about the right stuff of a Microsft programmer

Last week was an eventful week for me.  First, I made a day trip to Norfolk VA for a business trip.  Norfolk is a military town.  There are navy, air force, army, and marines bases.  The 1st fighter squadron is based at Langley AFB nearby Norfolk.  I've been wanting to go to the Langley air show sometime.  But, it is 7 hours from Pittsburgh by car.  It's a bit far.  But, I realized it is 2.5 hour flight in Cessna from Pittsburgh.  If I knew about the business-trip schedule early enough, I would have reserved an airplane for one day to make this trip.  But, this time I flew as a airline passenger.

On Wednesday, I gave Quiz 2 to my class.  This year's students are doing very well, and they got 89 average last time.  I was aiming to make it 85 average.  This time I increased the level a little bit.  The result was 84.75 average.  I guess I made it right this time.  I was not too generous in grading, and they still got 85 average.  I was happy with the performance of my students.  It keeps me very busy, but it is so much a fun.

When I came home on Wednesday, I saw a piece of paper in my apartment saying the owner of the apartment building has changed, and they no longer collect garbage every floor and I need to walk three stories down to the dumpster, and they close down the apartment office so no one will receive my packages any more.  I knew about the rumor of the owner change.  But, I never knew the new management was going to close down the apartment office.  Previous property manager was very kind and maintaining the apartment very well.  She had been in charge for at least eight years since I moved in.  If I knew that they were going to close the apartment office, I wanted to say good bye and thank you to her.  But, I didn't have chance to do so.  The practical problem is I can no longer buy stuff with online shopping any more.  I don't mind buying not-so-expensive things, but I cannot order like a computer equipments or camera equipments.  For the meanwhile, I ship everything to CMU.  But, if the new management does a bad job, I may have to move next year.

On Sunday, I received an E-Mail from a YSFLIGHT user reporting a problem of sound effect.  Actually, I have been thinking to get rid of old Windows multi-media functions and replace them with DirectSound, but I have been postponing to do so.  I decided to finally do it.  And, I was able to do it.  But, it gave me additional doubt about the right stuff of a Microsoft programmer.  You can read more details here.


Foliage-watching flight & Hovering in Cessna

I have uploaded "Foliage-watching flight & Hovering in Cessna" in CaptainYS's Flight Logbook.

By the way, due to my work load in this semester, there is an record-long delay for replying E-Mail.  I apologize for delays, and I'll reply you as soon as I have time.  Thank you for your patience!


Roughly 1/3 of the fall semester is over.  I'm teaching a programming class this semester.  But, I have same level of research work to do.  In fact, I used to have one high-priority task that I needed to focus on, and I didn't have to spend too much time for other less priority tasks.  However, now I have two high-priority tasks in addition to teaching.  So, I've been quite busy.  There used to be super-busy time in the past, but such period didn't last more than two months.  The difference of the current busy-ness from the past super-busy time is that now I am heavily loaded but a little bit short of super-busy.  Instead, this elevated work-load is continuing longer.

Anyways, I am having so much a fun in teaching.  I'm really enjoying it.  In fact, I have been wanting to teach a programming course.  It's my another dreams-come-true!  So far, my students are very well keeping up with my pace.  I'm happy with that.  Some students are having tough time keeping up with the pace, which is understandable because many of the Mechanical Engineering students have absolutely zero experience in programming.  For those students, I am planning to have an optional boot-camp work-shop session this Friday.  In that session, I'll try to let them work as a "human debugger."  I'll let them follow some sample code line by line and write every change of the variables.  I'll start from a very short example and try some relatively longer code, too.

Another thing I do in my class is live programming demonstration.  Honestly, I cannot teach what I don't know.  All I can do is transfer my programming skill and experience to my students.  I want to tell them how I think through and how I write my program.  I can present them some typical patterns of doing that, but in a real programming, for my research and for my work, I have some exceptions almost all the time.  So, I thought it would be nice to show how I write a relatively long (compared to the assignment problems) program in front of them.  I did the same a few times when I was teaching as a co-instructor last year, and I believe it was a good presentation.  So, I am increasing this type of live programming this semester.

Through my learning of the computer programming, there were some moments that I understood something all of a sudden.  The pointer in the C language was one of them.  At one time, suddenly I was able to connect my knowledge of the assembly language and the pointer used in the C language.  Initially I didn't get the point of the C++ virtual function, but when I was reading an article in the Dr. Dobb's Journal, I saw two words "runtime binding" that was the moment I totally understood what the virtual function was.  At the same time I understood what "hidden-pointer problem" was.  That two words "runtime binding" was all I needed to understand the concept of the C++ virtual function.  It is just a function pointer to a member function, that's all!  That issue of Dr. Dobb's Journal was particularly useful for me.  I believe that issue taught me how to use C++ template as well.  I threw it away already and cannot remember what exactly that issue was.  In each of those experience, dots in my brain were suddenly connected like a lightning bolt.  I am hoping I can give such an "Aha!" moment to my students through my teaching.

And, thinking how I can explain concepts of programming so that I can give them an "Aha!" moment is really a fun.  I am really hoping the Mechanical Engineering department will let me teach this course for the next year and on.


Hummingbirds gone with the summer (again)

I was able to take some nice pictures of a Hummingbird.  I have uploaded them to the bird photo gallery.


PNG Encoder / Decoder for C++

I received a bug-report from a viewer, and I fixed it.  The problem was that my decoder was not processing single-color transparency in interlaced 16-bit true color PNGs.  I appreciate the report.  Good catch!

Bought iPod Touch.

I've been in a panic mode since the beginning of the fall semester.  Before that, my weekly schedule was simple, and I was able to remember most of my schedule.  But, I was not able to keep track after the semester started.  Occasionally, a student comes to my office, and I answer questions, and I lost track of time.  Once I noticed it was 3:18pm when I was supposed to be in a meeting from 3pm.  I determined that I needed a PDA.  On the same day, I went to nearby Apple store and purchased the 64GB model of iPod touch.  I wanted 32GB model, but it was out of stock.  The shop employee suggested he could place a back order, but I desperately needed one.  So, I took the 64GB model.  The first impression is good as advertised.  I installed free Solitaire.  I am able to waste time anytime anywhere.  And, I almost always have access to a wireless connection, I can now see weather radar while waiting for a bus.  (In fact, I really wanted to do it.)

Some of my friends suggested to get iPhone since my current carrier is AT&T, but I still don't like the idea to combine PDA and cell phone.  If iPhone is totally SIM free and can work as a stand-alone PDA when the SIM card is removed, I would take it.  But, I don't want to pay monthly phone bill to access my own information.  I don't like to rely too much on a cell phone carrier.  I want to be independent.

So, my choice had long been Palm.  But, since Palm discontinued the Palm OS PDA, I stopped using it about a year ago.  I was using a paper media for about a year.  But, apparently once my brain got used to PDA, I cannot live without one.

I have also been interested in writing iOS apps.  I would try on the XCode, and if it works, I would sign up for the iPhone Developer program.  (I want to port YSFLIGHT to iOS if possible.  But, currently I don't seem to have time.  Maybe I can try making a YSFLIGHT airplane viewer.)

Since I already have a cell-phone holster on my belt, I will carry my iPod touch in a pouch hanging on a neck-strap.  I don't need to use iPod Touch while it is in the pouch.  I am happy to take it out when I need it.  Rather, I wanted to have a better protection in the crowded bus.  So, I also purchased a digital camera pouch, Lowepro Sausalito 20, and attached it to a neck strap that I picked from the air-force booth in Dayton air show.  I also considered some silicon iPod cases with a neck strap, but I think such a case may be torn apart if it catches on something (like someone else's backpack).  I paid $400 for it.  I don't want it to be broken.  I want it to last for at least 5 years.  One concern would be battery life.  I charged on Tuesday and got 20% capacity in four days.  Which leads to 90 times charge in a year.  I will charge about 450 times in five years.  I hope the battery capacity will not shrink too much by that.

My ideal device would be something that can conform to a laptop PC and works as a secondary internal drive, or if I connect it to my office PC it can be accessed at the native speed, and it works as a stand-alone PDA when disconnected from the PC.  When iPod Touch supports native USB 3.0 connection, it would become close to my ideal device.  But, since the internal media is a Flash memory, it is subject to the writing-time limit.  I hope someone comes up with a new Flash memory that can tolerate as many writing as a hard drive.  In fact I expect someone will do soon.

Cloud computing could solve my problem.  But, with current network speed, I don't want to compile my C++ source code on the cloud.  I want to access some type of data at the native hard-disk speed.  And, I am curious who takes responsibility if my data on the cloud is leaked or lost.  Some files cannot be compensated by money, like if I lose my research code in the middle of developing a new idea.  Internet itself had spread over the world by postponing a lot of discussions on responsibility issues and potential risks.  Now cloud computing is spreading just like that.  Trusting your information to someone else is nowadays same as trusting your money to a bank.  Money in the bank is insured by FDIC.  Information in the cloud is insured by whom?  I guess cloud computing will spread anyway.  And, some of the users will experience disaster.  Then, someone will make better rules and mechanisms.  Then, I may start using cloud computing.

Before unboxing.

I installed a free Solitaire.  I like Baker's game included in Sol Free from Smallware (www.smallware.com)

Lowepro Sausalito 20.  It looks perfect for protecting iPod Touch.


Four new screenshots from the work-in-progress version of YSFLIGHT

Although I haven't received too many requests regarding GUI of YSFLIGHT, I am trying to improve the usage.  I am trying tabbed dialog in the work-in-progress version, and it seems to be working all right.  Since new weapon types are added in the next version, airplane-selection dialog was getting crowded.  I think this tab feature makes the dialog organized.


Photos from Dayton Air Show 2010

I have uploaded photos from this year's Dayton air show.


PNG Encoder / Decoder for C++

Added PNG Encoder for C++.  You can generate a PNG file programatically by adding two C++ files and two .h files to your project.  And, as long as you take responsible for the consequence of using my encoder and decoder, it is absolutely free.

Updated 21:58EDT
I realized that my PNG encoder didn't calculate CRC code if it was compiled with a 64-bit C++ compiler.  The problem has been fixed.


Drawing a String of Characters using OpenGL (Bitmap version)

Updated.  Improved the font.  It should be more readable (less ugly) than the previous version.  Also added 6x10 and 7x10 fonts.

Victory in Bowling Young Adult League!

It has nothing to do with YSFLIGHT, airplanes, programming, or bird watching, but our team has won in the play off of the bowling league organized by the nearby bowling alley.  It is my second time to win the play off, but in the last time, I was not able to bowl in the actual play-off games since I was out of town.  That time I pre-bowled and left my scores.  This was my first time that I bowled in the actual play-off games and won the trophy.

The rule of the play off was as follows.  We bowl up to three games each in semi-final and final.  The team which wins two games first moves up to the next level.

During the practice and warming up, I felt that the lanes were better oiled, or wet, than usual.  My ball was hitting the head pin a little thinner than I wanted.  I countered the oil by slowing my shots.  In such a wet condition, I can slow the initial speed of the ball, but still the ball doesn't slow down much while rolling on the lane due to less friction, so the ball can have as much kinetic energy as faster shots at the time of impact.  The first game was really a close game.  I was the last bowler, and I needed double strikes to win.  I don't get nervous usually.  Nonetheless, getting double strikes is not easy in any situation.  And, I ended up with getting "XX7" (double strikes and then 7 pins.)  Actually, I didn't check the score in detail before throwing these shots.  I knew I needed double strikes, but as soon as I had double, I thought we easily won the game.  But, it turned out we beat the opponent team just by one pin.  In the second game, I had 202, and my teammates bowled well, but the other team bowled better, and we lost.  If I missed the last double strikes in the first game, our team would have been out.  The third game was not so a close game.  I had 224, and other teammates also bowled well, and our team has won the game with good margin.

So our team moved up to the final.  We had to move from lanes 3-4 to lanes 5-6.  (To be fair, the opponent also moved from lanes 1-2.  So both teams didn't know about the lane condition.)  Our opponent was really a formidable team.  In fact, they won the first place in the regular season total.  We lost by about 70 pins in the first game.  The ace bowler of the opponent team made 248, and I made only 182.  With that big loss, we were almost losing hope.  But, the second game, we managed to win.  My score was 185 by the way.  The last game was another close game.  Our team had only 40-pin lead after the 9th frame.  The opponent team could have overturned the game if we made mistakes and they didn't make a mistake.  It turned out, our teammates (and myself) didn't miss the spare in the 10th frame, and we were able to keep our lead to win the trophy.

When I was younger, I was able to bowl 20 games in a row.  But, 6 games in a high-stress situation was very tiring.  I am spinning the ball a lot harder than I used to.  Maybe that's why my arm feels much more tired than before.  Below picture is the two trophies I have earned so far.


Four new screenshots from the work-in-progress version of YSFLIGHT

I have uploaded some new screenshots.  In the next version, you will be able to use High-drag bombs, External fuel tanks, and chaff/flare dispenser pods.

By the way, fall 2010 semester will begin in just about two weeks.  I'm going to teach a programming course, which I am looking forward to.  But, the student who was supposed to be a teaching assistant cancelled last minute.  The reason she wanted to cancel the TA duty is understandable; she needs to study for her Ph.D qualifying exam.  But I wish she had cancelled it earlier so that we could find someone else quickly.  Now the department is looking for a replacement TA.  But, at this time I cannot have a meeting with a TA for planning the course.  Honestly, it's impossible to teach a programming course effectively without a TA.  Without a TA, what I can do will be substantially limited.  Another thing is the Mechanical Engineering department outsourced computer cluster management to the Electrical and Computer Engineering department, and no one knows who to talk to if I want to have Visual C++ installed on each computer in the Mechanical Engineering cluster.  I'm expecting a rough start of the semester....


YSFLIGHT Scenery Editor work in progress

The next version will be available for Windows, Mac OSX, and Linux.  I have ported all the current functionalities to the YSFLIGHT GUI library and was able to compile the program on MacOSX and Linux today.  It still is iffy.  I will test and correct issues.


Flying in to Dayton Air Show!

I have visited Dayton air show by renting an airplane with my instructor and another pilot friend.  I have been wanting to fly in to an air show.  My dreams finally came true!


World's only airworthy B-29 "FiFi" will fly again!
Wow!  Cool!  I once saw it when I visited Allegheny County airport for static display, but I didn't see it flying.  I hope I can see it flying in an air show in the near future.  It would be spectacular if this B-29 flies a formation with a B-1, B-2, or B-52 as a heritage flight.


CaptainYS's Flight Logbook

Uploaded "Re-gaining Instrument Currency".  By the way, the picture below is B-17 Flying Fortress that came to Allegheny County airport for an event.



Uploaded some more screenshots from the next version.



The following link has been added.  The information may be useful if you have problem running YSFLIGHT for Linux.
Autoestopista Informatico - Installing and Running YSFLIGHT on Linux


YSFLIGHT Head Up Display and Instrument Panel Work In Progress

Head Up Display and Instrument Panel in the next version of YSFLIGHT will look like these. (Read details)


Tragic deaths of baby Blue Jays

Sad to say, all three baby Blue Jays died for unknown reason.  The parent birds apparently were thinking their babies were just sleeping and tapping their back to wake them up.  But, none of them opened eyes and answered to the parents.  It was such a sad ending of the Blue Jay family.  I never saw such a case that all of the baby birds died after surviving first several days.  Of course they are wild birds.  Unless they survive harsh environment, they just die.  Nonetheless, the nest was in CMU campus.  Since people walk around, not much predators attack the nest, and in my impression, almost all baby birds grow up to take off the nest.  I never thought I was going to witness such a tragedy through my tele-photo lens.  (Read details)


Three Baby Blue Jays growing in front of Mechanical Engineering building

Three baby Blue Jays are growing in front of Scaife Hall (Mechanical Engineering building) of CMU.  Hopefully, the baby birds will leave the nest in 10 days or two weeks.  I'm keeping eye on it.

Ups and downs of Bowling

I've been bowling in a local bowling league for a while.  I will not be able to bowl in the game day this week, and the league allows me to pre-bowl before the game day.  Today I pre-bowled, and renewed my best score.  My high was 252, and now is 267.  I had eight strikes in a row in the second game.  I had no doubt I was going to get 600 series (600+ three-game total score), but I ended up with getting 5 splits in the third game, and missed it....


YSFLIGHT Scenery Editor Test Version
I have uploaded a test version of YSFLIGHT Scenery Editor.  This executable should work on Windows 7.


Three waves of thunderstorm

Pittsburgh was struck by three waves of thunderstorm late afternoon to evening hours.  The first storm was the strongest, and in fact we were under tornado warning.  We didn't see an actual tornado though.  The first wave was too early and too bright.  I saw spectacular lightning but was not able to take any good picture of it.  The second and the third waves came later, and the environment was dark enough to take pictures of lightning.

Below pictures are from the storms today.

The bar cloud in front of the lightning was slowly spinning and passed above us.  I suppose this cloud failed to become a tornado.  It could have become a tornado if the wind shear was stronger and if it reached the ground.
I wish the cloud hiding the lightning hadn't been there.  It could have been really a nice picture.  The lightning struck a pole nearby my apartment.
This is from the second wave at around 8pm.
This was from the third wave at around 11:45pm.


Airplane Photo Gallery
Uploaded photos from Seattle Trip.  Only two days after returning from Chino, we visited Seattle.  I was originally planning to visit Japan especially because it is 50th anniversary of Japanese Air Force's Aerobatic Team, Blue Impulse.  I really wanted to go to one of air shows in Japan.  However, Japanese yen is now too expensive, and I had to give up Japan trip.  Instead, I invited my parents to the U.S.  We met them in Seattle and then traveled to Pittsburgh together.  (Read more.)


Airplane Photo Gallery
Uploaded photos from Chino Air Show.  I visited Chino air show and uploaded photos from there.  The air show was hosted by the Planes of Fame Air Museum, which has variety of restored historic airplanes including a Japanese A6M5 Zero fighter.  Zero fighters dominated the sky over the Pacific in the early stage of World War II and no doubt had significant impact on aviation history.  I long wanted to see it flying.  (Click the pictures below to read more!)

(By the way, during the trip, I was for the first time in my life, I was carried to an ER in an ambulance.)

(13:54EDT Added Two Pictures)


Captain YS's Flight Logbook
I'm a Commercial Pilot!  Honestly, I was almost losing hope to get it done this month since I was going to be very busy for numerous events and trips in the last half of this month.  It was my very last chance in this month to go for a check ride, and I made it!  The weather finally gave a break just in time.  Finally, I am a Commercial Pilot!


Captain YS's Flight Logbook

Alert Stand-by for Commercial Check Ride:  So, I had to cancel my check ride yesterday.  The examiner will call me whenever he finds some time, and I will scramble to the airport and go for a check ride.  (Isn't it called an alert stand-by?)


Captain YS's Flight Logbook

Commercial Check Ride Pre-poned (and most likely postponed again).  Curse Pittsburgh's weather.  Turned out, the examiner needs to visit his family for mother's day, and he cannot give me a check ride tomorrow.  So, the schedule is moved ahead by one day (,which is today).  I am supposed to take off as soon as the weather recovers.  Right now, the sky is not too bad, but the wind is blowing like a hurricane.  The forecast is not expecting any better condition through the day.  I don't think I can take off in this condition.

Birds around Carnegie Mellon
Uploaded some recent photos.  I'm keeping track of multiple nests of Blue Jays, Robins, and Mourning Doves now.


Captain YS's Flight Logbook
I'm back on track.  I flew 3.1 hours of night solo yesterday.  I am now absolutely certain that I satisfy all the flight-experience requirement to become a commercial pilot.  (Read more)


Captain YS's Flight Logbook
Commercial check ride postponed.  As I was double-checking my logbook, it turned out I am 3 hours short of night solo flying time to be eligible to go for a commercial-pilot certificate.  I'll fly on Tuesday and Wednesday to fulfill the requirement and will go for the test again, hopefully in a week.


Captain YS's Flight Logbook
My commercial check ride is set for May 1st.  The forecast is predicting poor weather, but if I cannot fly on that day, I will have oral exam only and will fly on a different day.


YSFLIGHT 20100331 Ready for Download!

Thank you for your patience.  YSFLIGHT 20100331 Official Version is ready for download.  I have receive many bug reports from users during the testing period.  I appreciate your help on debugging the program from my heart.  You can download the latest version from here.


Captain YS's Flight Logbook
Uploaded "Barely passed the Commercial Stage Check".  It was an exhausting flight....


Captain YS's Flight Logbook
Uploaded "A fox on the runway."  (This fox violated the Federal Aviation Regulation!)


Captain YS's Flight Logbook
Uploaded "Gearing up for the Commercial-Pilot Stage Check."


Birds around Carnegie Mellon
Uploaded "Birds are coming back!"

Vector Award Result
YSFLIGHT was at the 50th place among 100 software nominated for the final-round voting.  Considering the number of flight-simulator players among all PC game users, I think getting 50th place among all software programs (not limited to game programs) was a very good result.  Thank you very much for your vote!


Vector Award Final-Round Voting

A few months ago, Vector Inc. started a popularity contest called "Vector Award" competition, which decides the most popular software among the ones hosted by its software library.  Vector is the biggest software-download site of Japan, and I have been using its hosting service to distribute YSFLIGHT.  And, YSFLIGHT is nominated for the final-round voting.  It means that YSFLIGHT is within top 100th of all the software programs hosted by Vector.  Considering that the percentage of population of flight-simulator users among all PC-game users, I think YSFLIGHT is doing very well in the competition.

The final-round voting is open through March 15.  Vector is a Japanese company, and the voting site is written in Japanese.  Unfortunately there is no English version of the voting page.  But, if you can read Japanese, please vote for YSFLIGHT from the following link.  (In fact, it's just one button click though)



I have received numerous E-Mails saying GepolyX stopped functioning.

I wrote this program before coming to CMU.  If I hadn't come to CMU, I would have continued the development (but in that case, YSFLIGHT would have never born).  But, since my research topic here became very different from what I was doing back in Japan, I discontinued the development of this program.  So, I cannot spend time to add functionalities of improve the usability of this program at this time.  Nonetheless, I appreciate that some users still use a program that I wrote long time ago.  I don't know why this program stopped functioning now, but it would work again if I compile the code with the latest version of Visual C++.  I compiled the program with Visual C++ 2008 Express Edition.  You can download the executable from here.


Uploaded "YSFLIGHT Status Update".  I also decided to upgrade YSFLIGHT for Linux and Windows with new release of YSFLIGHT for Mac OS X.  They are now in test phase and available from YSFLIGHT Test Version.


Are we still in State of Emergency?

I haven't heard that the local government canceled the state of emergency.  But, finally I was able to drive my car.  The road condition was gradually getting better, but to be safe, I didn't drive for two weeks.  I still see snows on the road shoulder and in some places I feel dangerous to drive.  But, finally the temperature came above freezing since yesterday, and the snow started melting by itself.

Following photos are from several days ago.

Captain YS's Flight Logbook
Uploaded "Landing Practice at Beaver"


Pittsburgh under State of Emergency

We had record-breaking snow fall from last night to this morning.  According to the local TV news, it was fourth largest snow in history.  Snow started falling in the afternoon yesterday, and by 9pm, the road was covered by snow.

At around 9pm.

Plow trucks apparently were too busy dealing with free ways, and didn't come to in front of my apartment.  Some trucks passed, but they were either out of salt or was not plowing and just drove by.

Around 12:30am.  Plow trucks were not able to keep up with the snow fall.

In the morning.  Still even I-376 was snow covered.
Morrowfield Ave.  It is hard to see from the photos, but Morrowfield is a steep slope, and in this condition, there was no way to drive through.  If I go up, I will stop in the middle.  If I go down, I cannot stop until I hit the bottom.

Since I need to drive down Morrowfield ave. to go anywhere, I couldn't move my car.  In fact, the road in front of the garage was also covered by roughly 2ft of snow, and I was not able to even reach Morrowfield ave.

Top-center area of this picture is I-376 near Squirrel Hill Eastbound entrance.

Early afternoon, finally they were able to remove snow from I-376.  Below are the photos I took when I walked from my apartment to Forbes + Murray intersection.

Actually, the sky cleared very quickly as soon as the snow stopped.

Morrowfield still covered by snow.

As of tonight, the road in front of the garage is still covered by 2ft of snow.  I cannot get my car out, and even if I could, I don't want ski down Morrowfield ave. in my car.  So, still I cannot use my car.  The bus is not moving, either.  Pittsburgh is totally paralyzed, and the city is under state of emergency.  I hope things gets normal soon.

I was supposed to bowl in a league tonight. I called the bowling alley to ask if the league is on or cancelled, but no one answered.  The bowling alley is just 5 minutes walk from my apartment.  So, I just walked there anyway, and figured that the road behind the place was still totally covered by snow, and I couldn't even reach the door.  I presumed the league game was cancelled and came back.

Below photo has nothing to do with this snow storm, but it looked beautiful.  I tried to look up the cloud in my aviation-weather textbook, but I was not able to identify it.  I think this type of wave-like cloud has something to do with turbulence.  In fact AIRMET-T (turbulence) was in effect when I took this photo.  I flew on this day though.  I didn't go up as high as this cloud anyway.  I went up to 6000ft, but the air at 6000ft was stable.  Apparently, the air was turbulent at high altitude and low altitude.


Joystick-reading function and Joystick calibrator
Updated so that it works on Mac OS 10.6.


I believe now it can read joystick in Mac OS 10.6.  Also, I have added some visual effects.


Captain YS's Flight Logbook
Uploaded "First flight of the year (Finally!)"


Now the program can detect control-key stroke.  You can use in-flight configuration change with the default key binding.

Close Encounter of the Mac Programming
How to detect Alt-, Command-, Shift-, and Control-key strokes.  Those keys are called modifier keys.  Also, Mac OS X Programming Framework for Minimalists has been updated so that FsInkey and FsGetKeyState functions can detect modifier keys.


Happy New Year!

I was able to relax during the new year's day weekend.  I will resume normal schedule tomorrow.  I suppose no students will be coming yet though.

I went to an event called Hartwood Celebration of Light last night.  It is an annual event in which we can drive through enormous light illuminations that are set up throughout a park called Hartwood Acres.  It takes about 40 minutes to drive through.  I used my suction mount and took a video of the illuminations.  Following pictures are the snap shots from the video.

In fact, I thought it would be nice to see it from the air, and I tried to fly over Hartwood Acres once.  But, I suppose this event is set up so that it appears the best from the car.  It was even difficult just to find the location from the air.  This time I noticed that many light bulbs are tied to the tree branches to make a visual effect of driving through a light tunnel.  Such illuminations will not be visible from the air because high branches will block the light.  This time we were able to enjoy impressive light illuminations from our vehicle.

Links to the last articles of 2009

Old Articles => [2009] [2008] [2007] [2006] [2005] [2004]

Comments are welcome.  Send E-Mail to: 


This page is link free, but please link to http://www.ysflight.com.  Please use one of following banners.