PHP-GTK 2.0.0 Released (finally)

March 1st, 2008

For those of you who didn’t know - PHP-GTK 2 finally hit a final 2.0.0 release (on leapday of all things). PHP-GTK is a wrapper around GTK, a cross platform library for creating desktop applications. With it you can write desktop apps with PHP. That means no server, just a PHP CLI, the GTK libraries, and the PHP-GTK extension on the computer you want to run the application on. Remember, PHP-GTK doesn’t change the way PHP works underneath, it just means you write the frontend with gtk widgets instead of html.

So go download your copy and replace your old installations! The windows builds are now “unzip and run” - with support for the windows theme “out of the box”. It also includes GTK version 2.12.8 which means enhanced functionality and stability on windows (and a shiny new Tangoesque icon theme). Everything you need is in the download, you don’t have to change anything (except possibly the php-cli.ini included, or add additional non-thread safe PHP extensions from the PHP downloads page). The libglade and gtksourceview extensions are also included in the binary build, the other PHP-GTK extensions (libsexy, gtkspell, and others) don’t have current libraries at the moment, because the windows build is currently created with “stock” GTK libraries. If I have time (and get some projects finished) I’ll throw the libraries I have into MinGW and build the additional extensions - and the librsvg pixbuf loader (why isn’t that in stock builds?)

On the “todo” list is building the gtk dependency chain on MSVC (instead of using the MinGW built ones provided by GTK). The purpose of that is stability building against PHP, which is an MSVC build not a MinGW build. In addition PHP would like to move to newer MSVC compilers at some point, so the dependent libraries have to build differently as well.

There has been a lot of functionality added and support for newer GTK libs added, however the library is still not 100% feature complete. We need developers! If you have any experience with C and don’t mind getting walked through how to create overrides (most of the PHP-GTK2 code is generated…with PHP), we’d love to have you. Finally I leave you with a list of great resources on PHP-GTK.

#php-gtk channel on freenode
http://oops.opsat.net - Linux php-gtk installer, tutorials
http://php-gtk.eu - Community site, help
http://www.kksou.com/php-gtk2/ - Lots of tutorials and code
http://gnope.org - PLEASE DO NOT USE THE INSTALLER UNTIL IT IS UPDATED TO THE LATEST PHP_GTK2 VERSION!! , but the forums are a great place for information and the channel has some nice applications.


Hey, Code Coverage on Windows!

January 28th, 2008

MS was nice enough to grant several members of the PHP community (including me) some MSDN licenses which include the “beefed up” versions of Visual Studio which have some additional tools including testing and code coverage.

So this evening I managed to get PHPTrunning my tests (they’re just basic .phpt tests but run-tests is..well flakey is a nice description some days) for my winapi php extension wrapped inside a “generic test” for Visual Studio. It involved writing a semi-clever reporter to output test data in a way that visual studio liked, just fun with xml, getting the command line right for calling the tests, and telling visual studio what dlls I wanted to do code coverage on and making sure the /Profile switch got sent to the linker.

So what did all this accomplish? I now can run my phpt tests through visual studio and collect code coverage on what they’re testing. Like GCOV, only for windows ;) Nice thing is I can also save xml files with the code coverage data. Tackling this for more of the php source might be a fun project… Makes the mind spin about getting a version of this working so gcov can have windows results too. Here’s my pretty screenshot with coverage highlighting turned on (warning, the thing is huge).


Belated New Years Resolutions

January 7th, 2008

Well, here’s the promised resolutions post, a little late. I actually did start it earlier, but life and kids interrupted. We’d been planning to go the the Museum of Science and Industry for almost a month now to see the Star Wars exhibit before it closed with the kids. Well in addition to that I had wrap up of my old job and get stuff in place for my new job…and then my younger two children got sick on the way back and the two feet of snow was sublimating as we drove back (holy bad visibility batman) in the 55 F weather (in January people!)

First of all, there are a lot of changes in my life. I’ve left my old job doing intranet apps and officially joined the OmniTI crew. For now I’ll be telecommuting with occasional visits. I’m also putting my youngest son into day care. At three - almost four - he’s just too much for me to handle with working (his younger sister is still staying at home for now). And working full time will be quite a change for me.

On to the resolutions:

  • Lose Weight: I think we need a PHP weight loss group. I have 20-30 lbs left of “baby fat” to get off, and of course the last little bit is always the hardest. A good plus is I have a built in exercise program - four kids and a large dog that needs at least 2 walks a day
  • Clean: Yes I’m horrid at housecleaning, probably because I hate it so much. I’ve decided it’s a question of motivation for me. So I’m motivating myself by giving myself a salary for a four hour Saturday cleaning fit. As a nice side effect, housecleaning is a good workout.
  • Projects: I have several code projects that I need to make some headway on
    1. Callicore: PHP-GTK2 application system
    2. Forkr: PHP5.3 namespace ready code library, framework, and application scaffold (wow that’s a mouthful)
    3. PECL and PHP: PECL picks, getting maintainers, and the great compile project for libraries for windows on newer compilers
    4. Perisama: get the builds up on a more regular basis and make it pretty
    5. PHP-GTK2: get that code completion up to 100% and get a nice wix based msi windows installer working
    6. WinAPI: keep working on making more of the windows api available and useful
  • Writing: I have both “code” writing and “pleasure” writing goals. I have several fiction works in various stages and articles I’d like to get done. I’m aiming for the one professional article a month, a half hour fiction writing a day, and one blog post a day (don’t look at me like that, I made it to March one year).
  • Organization: I need to find a way to keep all the mom stuff and professional stuff organized in a nice neat way so I don’t miss important things on my “todo” list. Wish someone made some good software for that…or I had the time to write some…

Well, that’s my relatively short but hopefully doable resolutions for this year!


Wrapping up the Year

December 31st, 2007

I’ve decided to start a new tradition this year after almost three years of this “blog” thing (wow… I started this in 2005) I’m doing an end of the year wrap up and you’ll see my nice “New Year’s Resolutions” come morning.

This year has been incredible for me, even though I think none of my resolutions from last year really came to fruition. But I like to start at the beginning so let’s see HOW I did on last years resolutions. I divided them into categories.

Personal - well didn’t do too hot there. I did start going to the dentist, a nice infected wisdom tooth got me back in the swing of things, but I have yet to get my rear in to see a regular doctor, not a good thing when my depression and blood sugar have been flaking out on me. The addition of a dog to our house has made the walking daily thing a reality, or at least four days a week. I’ve lost all but the last 20-25 pounds of my baby fat which means I met more than half of my weight loss goal, always a good thing. I’m still not too hot on time organization or one-on-one time with the kids. However, I have improved most everything but housecleaning. I think I’ll give up and hire someone to come in once a week for the heavy duty mop, dust, sweep stuff. I can keep the house picked up but cleaning is evil. Last but not least, thanks to a child who thinks that 6 am is happy wake up and play time, I get up on time now. I still need to work on a bedtime routine for the kids and myself.

Code and Work - well that didn’t go so well either. Other than a real simple article and some podcasts I haven’t been writing like I should. I did accomplish a lot in my autobuild system, but it still requires too much setup and monitoring at this point. On the positive side, I have been able to get some stuff done for php extensions and started up Forkr. Now I just need to punt some time into the project - when 5.3 is ready I want to be as well.

Projects - no blog redesign, no spring cleaning, I did get the bedroom done and some of my stuff on Ebay, still a lot more to go…

Final verdict? A mixed bag. I am happier, I think, and healthier, but I still don’t clean as much as I should and my kids drive me up a wall many days. I think I need to tie trash cans to their backsides until they understand that the floor is NOT where you throw things. But just when I think I’m completely failing as a mother they do something fantastic - my baby girl learning to say “thank you” and being more polite than her brothers, my three year old learning his alphabet, my six year old learning to read, my fourth grader coming in second in the school-wide spelling bee (he was beat by a fifth grade girl). And then I found a writing assignment from school where my oldest was supposed to write down his “Christmas wish”. I was expecting a plea for a new video game or a toy…but instead he wished that his aunt would have a healthy baby and come through delivery well so I must be doing something right. Moments in time remind me why I got into the “baby business” in the first place.

On a positive note, sometimes things happen that you completely don’t expect. For me it has been helping out with phpwomen and my involvement in the php community. Although I’ve been doing stuff online for years, I’d never gotten involved socially. I did the college thing until my life went on a detour with babies and marriage, and then the single mother thing while I learned more about IT than I ever wanted to know, and then the mommy thing while life became stable and fun again, and each stage in my life PHP was a fun thing to do, either as part of my job or a hobby.

Finally with the last baby almost two years old and ten years after my first baby sent my life in a detour I’m back to where I wanted to be, a nice balance of career and family. I’ve met some fantastic people in the PHP community, taught myself C to the point where I’m fairly proficient (not guru yet but that day will come), found my niche (PHP on Windows is not an Oxymoron), went to conferences, learned new things, and now I’m moving on again in my job.

You know that corny saying “When god closes a door look for a window” - well I’ve found it to be entirely true in my life and although I may have taken a bumpy path, and a career that I didn’t plan for, I’m happy with where I ended up. I want to thank everyone who has helped me find my wings, and especially to the people in the phpwomen and phpc communities for their friendship and advice.

See you next year with another set of resolutions!

buy cheap levitra
purchase levitra


Day 11 - Lemon Butter Cookies

December 11th, 2007

These are a slightly tart change from the usual super sweet cookies at Christmas time. They taste best with fresh lemon, you can get lemon zest by scraping the yellow part of the rind off the lemon - try not to get the white part, that’s bitter. Or you can cheat and buy it in the spices section. I have a nifty lemon zester from pampered chef.

Lemon Butter Cookies
Ingredients:
1 cup butter, softened
1 cup white sugar
2 eggs
3 cups all-purpose flour
5 tablespoons fresh lemon juice
2 teaspoons lemon zest
1 teaspoon baking powder
1/2 teaspoon salt

granulated sugar for decoration

Directions:
Beat the butter and sugar together until creamy. Beat in the eggs until the mixture is light and fluffy. Slow mix in lemon juice, flour, zest, baking powder, and salt. Cover and refrigerate until firm.

Roll out the dough and cut out with cookie cutters. I use christmas shapes. Transfer to ungreased cookie sheet and sprinkle with sugar. Cook 8-10 minutes in 350 degree F oven (that’s 175 degrees C). They are brown around the edges when done.

You need to chill the dough a lot because it will be sticky. Figure at least two hours, or overnight (make sure you cover it). Also using a bit of flour when rolling out the dough helps the stickiness factor, as does dipping any cutouts in flour. You do need to be careful because these crumble easily. Enjoy!

P.S. Thanks for the conversion Derick


May 2008
S M T W T F S
« Apr    
 123
45678910
11121314151617
18192021222324
25262728293031
Register
Login