For half a year now my Timex watch (yes, I'm one of those old fogeys who actually wears a watch) hasn't had a light. And it doesn't beep when I use the stopwatch. I don't care so much about the beep, but the light was handy.
I replaced the battery at some point, and apparently got something wrong when I put it back together. I've been meaning to go back in and figure out what I got wrong, but life intervened, so I've been putting up with it for way too long, until now.
I felt a bit better about having messed up when some web searching showed that many, many people have this exact same problem. Some of the web pages I found had succestions that got the beeper working again; but the light still didn't work.
Curiously, it worked fine with the watch disassembled: the watch's brains and battery are all in one self-contained module, and if you push the tiny button in the front, the light comes on. It's just that the big button in the front didn't push the tiny button on the watch module.
Maybe there was some tiny piece that went sproinging off to freedom the first time I opened the watch. No matter; if so, it's long gone now. But you know what? Several pieces of masking tape stacked up over the inner button worked fine -- and now my Indiglo light works again.
A few other tips for Timex fixers, some of which aren't obvious from the how-to sites:
- The "scratches" on my crystal -- so bad I'd been thinking it was time to buy a new watch -- were actually melamine (or some such material) that had rubbed off from the artists' table I use as a desk. It cleaned off nicely with alcohol.
- I used a needle to open the spring clip over the battery.
- Rotating the back cover 180° was probably what fixed the beeper.
- You may or may not need to reset the watch by shorting the two contacts as suggested on the label inside the watch. If you see an error code or the watch doesn't work right, try shorting the contacts.
In my post about Controlling a toy car with a Raspberry Pi, I skipped over one important detail: the battery. How do you power the RPi while it's driving around the room?
Most RPi sites warn that you shouldn't use the Pi with a power supply drawing less than an amp. I suspect that's overstated, and it probably doesn't draw more than half of that most of the time; but add the draw of two motors and we're talking a fairly beefy battery, not a couple of AAs or a 9V.
Luckily, as an R/C plane pilot, I have a fridge full of small 2- and 3-cell lithium-polymer batteries (and a li-po charger to go with them). The problem is: the Pi is rather picky about its input voltage. It wants 5V and nothing else. A 2-cell li-po is 7.4V. So I needed some sort of voltage regulator.
It's easy enough to get a simple 5V voltage regulator (pictured at right) -- 30c at Jameco, not much more locally. But they're apparently fairly inefficient, and need a heat sink for high current loads. So I decided to blow the big bucks ($15) for a 5V step-down power converter (left) that claims to be 94% efficient with no need for a heat sink.
Unlike most of Adafruit's products, this one comes with no tutorials and no hints as to pinouts, but after a little searching, I determined that the pins worked the same way as the cheap voltage regulators. With the red logo facing you, the left pin (your left) is input power from the battery; middle is ground (connect this to the battery's ground which is shared with the Pi's ground); the right pin is the regulated 5V output, which goes to pin 2 on the Pi's GPIO connector.
I was able to run both the RPi and the motor drive circuit off the
same 7.4 volt 2-cell li-po battery (which almost certainly wouldn't
work with 4 AAs, though it might work with 8). A 500 mAh battery seems
to be plenty to drive the RPi and the car, though I don't know how long
the battery life will be. I'll probably be using 610 mAh batteries for
most of my testing, since I have a collection of them for the aerial
Here's a wiring diagram made with Fritzing
showing how to hook up the battery to power a RPi. If you're driving motors,
you can run a line from the battery's + terminal (the left pin of the
voltage regulator) as your motor voltage source, and use the right pin
as your 5V logic source for whatever motor controller chip you're using.
In all of these projects, communication and trust are paramount. Dialog which fosters creativity and progress is only possible when people enlarge their trust in one another. Along the way to the highest trust levels, many barriers will come down, as people allow them. Sometimes these barriers are invisible, until someone points them out.
I thought I'd seen a cartoon illustrating this story, but a web search tells me it's a story by David Foster Wallace:
Two young fish meet an older fish, who asks them “How’s the water?” The younger fish look at each other and say, “What the hell is water?”I was reminded of this story recently while observing the various reactions to the removal of the Community link on Ubuntu.com, the portal to the Ubuntu project. The link is coming back, so I'm not complaining. However, what I've noticed is that most of the people discussing the issue seem to be talking past the folks they are hoping to connect with. The emotions expressed range from puzzlement, to shock and outrage, with little understanding on the other "side" on the perceptions causing these reactions.
So how is the water? To me, the drama played out completely predictably, because any time you have one company selling a product, and volunteers working in that same project, you will have class issues, and class is like the water fish swim in. People are often not aware of it, and thus have difficulty dealing with their emotions around it, because they have been taught to ignore it, or even that it doesn't exist. So when the designers removed the link, it was felt as a slap to the face of community members, while the designers see it as just a step to a clean, functional design. The conversation about this change at the recent vUDS clearly betrays this lack of understanding of the other on all sides. http://summit.ubuntu.com/uds-1305/meeting/21740/community-1305-ubuntu-website-planning/
There is no such thing as a culture without class. There are always power imbalances, and privileges. However, that doesn't mean that class is the death of the Ubuntu project, or that volunteers and companies can't happily co-exist. They can, but the fact of class must be acknowledged, and those with privilege and power must realize what they have, and use them on behalf of the project.
A healthy culture has hierarchy, but not one based on domination. In fact, in FOSS that is part of what we are attempting to dislodge, right? We want our hierarchies to be constructed for function, not to rule over us. For instance, those who demonstrate their skill in packaging or coding are given the right to upload to the repositories. And those who grant them that right are those who already have built their reputations by using their skill and trustworthiness in that domain.
Recently there has been a breakdown -- or an apparent breakdown -- in that hierarchy of function in Ubuntu. And I think that both those inside Canonical and those outside, perceive that the other is the one causing that break. So, some repair is needed.
All of our differences can be overcome as we build (or re-build) trust. However, all sides of the issue will need to think about, process emotion about, and finally discuss openly what has gone on. The replacement of the Community link alone will not mend this breach, nor will brief virtual UDS sessions. In fact, I think the lack of in-person face-to-face interaction is allowing this divide to grow.
Folks, we don't want resentment and suspicion to grow, so we are all going to need to work on this if the Ubuntu project is going to continue to thrive as a free software enterprise. In my opinion, thinking about and discussing class issues are fundamental to that effort.
This blog appears on the Linuxchix, KDE and Ubuntu planets, and these issues of class appear in all teams. Health and progress are the goal, and honest dialog is the means. I propose we look one another in the eye and start a conversation. These are difficult dialogs, but our health is at stake.
For each Ubuntu release I spend a little time finding a toy or other representation of the codename animal to use at booths, Ubuntu Hours and other events. I wrote about Quetzals and Pangolins here and you may have seen Raring here.
When the salamander came up I was confident that a toy would be easy to find, and indeed they were! Even better, I found that the World Wildlife Fund offers a $50 Hellbender Salamander Adoption Kit that ships with 2 plush salamanders! Mine arrived yesterday, I’ll be keeping one to use at our events and will find a way to give away the other (perhaps as part of the Ubuntu Women contest we’re planning? Or at some LoCo event?).
Event decoration + helping to save the actual animal, hooray!
Oh, and it is a release late, but while I was in Mérida, Mexico we stopped in to Miniaturas where I picked up some adorable quetzal earrings:
I think I’ll wear them to our San Francisco Ubuntu Hour on June 12th, and bring along the salamander!
For a while now I have been contemplating starting a series of monthly challenges – to try something new or practise a habit consistently over a month, for its own benefit, and to blog about it (to get back into the blogging habit). Today I saw an ad for Open Family Australia's 21 Challenge, where individuals or groups can undertake a 21-day challenge to raise money to support homeless youth. I don't normally participate in big fundraising events like this (though I support my friends who do), but as I'd already been thinking about doing a monthly challenge, why not sign on to a cause that I support? In addition, doing a 21-day challenge in June will help me ease into a series of whole-month challenges, if I do follow up on that idea.
Here are some of the challenges I had been considering; if you think any of these are particularly great or terrible, please say so in the comments. I will decide on the challenge and set up a fundraising page on 21 May. The final decision is up to me but I am interested in what others think.
- Talk to a stranger every day
- Draw something every day
- Adopt a vegan diet
- Do not travel on public transport or in cars [which means walking or cycling in cold, wet, and windy June – not something I would like, but it would make me appreciate some of the conditions homeless people face]
If you want to suggest a different challenge, note that I already live without a car or a television, I don't eat meat, and I hardly ever wear makeup, so some of the ideas at http://21challenge.com.au/inspiration are pointless for me. Note also that I make my living from the internet, so I can't realistically give that up.
Since I left for my wedding and honeymoon a bunch of things happened! Ubuntu 13.04 was released, 13.10 was given the code name “Saucy Salamander” and Debian 7.0 Wheezy came out. Plus lots of exciting OpenStack development discussion that came out following the Summit (I left right after it). When I got back into the country on the 12th I had a lot to catch up on! I did my best to cram before sessions and certainly had to limit involvement to a handful of sessions that I was particularly keen on attending and so could get up to speed with quickly.
This was the first virtual UDS I was able to participate in, so it was all new to me. Essentially the the “fish bowl” (as seen here, I took this photo from my spot in the wider attendee seating) is replaced by a Google Hangout and the “wider attendee seating” is an IRC channel. For the 4 sessions I participated in this worked very well, session leads were pro-active about asking who wished to participate in the Hangout so everyone who wanted to was able to. A great deal of attention in all these sessions was given to the IRC channel, which is a contrast with in person UDS where the channel can sometimes get a bit left behind (even though it’s being projected, it was easy to forget once you get talking). I didn’t use the summit.ubuntu.com page for anything aside reference, preferring to pop out the etherpad and use my standard IRC client, but I appreciated it all being there as a resource (and I’m sure it was super helpful for newcomers to follow along!).
Cheri Francis and others in the Ubuntu Women session
I found the sessions I participated in to be productive and focused and when applicable resulted in a solid list of action items. I hope that the event also lessened the experience gap that was always present for in person vs. remote participants, we all got the same experience. Now I have to admit to not being a fan of using Google Hangouts for this (I like Google, but it is still a proprietary, closed-source tool that we have no control over), but I understand that the ease of use and immediate availability of videos on YouTube makes a compelling case. Perhaps my only other complaint is lack of cohesiveness that comes from an online event, I didn’t watch the introduction or the wrap up. I also didn’t participate in the “beer hangout” – I didn’t even know it was happening, and sitting in front of my computer with a beer in the middle of the day wasn’t particularly interesting to me. I only attended a few specific sessions and there was no “wandering into something that looks interesting” (instead I just went back to work) or the regular social down time we get to relax or sit down to hack on things. I do hope we can find some kind of replacement for the in-person events, it would be great to see something on the LoCo team level at conferences where we seek to have an expanded Ubuntu presence focused on contributors (perhaps an Ubucon with a participant track?).
And the venue… it was at home! In order to participate in the hangout I did feel the need to leverage my multiple monitors.
Now the sessions themselves…
– Planning for Ubuntu Community presence on the Ubuntu Website –
This was not a particularly productive session as far as action items were concerned, but it turns out that while I was gone the removal of the “Community” link from ubuntu.com took on a life of its own (and boy was I surprised to see my name end up in a recent Datamation article about it). Personally I was satisfied with Daniel Holbach’s blog post on the subject a day after the change was made, but it was nice to speak with with some folks from the Design team and allow everyone to confirm that no ill will was intended and that plans for a new and improved community site were moving forward. The session was kept short given the more structured session about the community site specifically planned for the following day.
YouTube video of the session here
– Ubuntu Women UDS-1305 Goals –
Huge thanks to Silvia Bindelli and Cheri Francis for doing all of the leg work for this session while I was gone, I felt very comfortable reviewing their pre-session notes and found a really great, collaborative environment upon joining in. The discussion began talking about an information scavenger-hung competition that the team will be doing in the coming months, seeking volunteers to assist. It then moved into a topic that I was really happy to see on the agenda – a user poll to see how the team could be most effective in serving our audience of women interested in Ubuntu. I find that the project needs a bit of an adjustment every couple of years to refocus on our current targets as Ubuntu and the open source ecosystem evolves, so I’m excited that we’re doing this. Finally, much of the session was spent discussing our intention to further collaborate with other groups seeking to encourage women in open source (and in technology in general).
– Revamping ubuntu.com/community –
Picking up from where discussion left off the previous day, this session was a focused on on concrete things that need to be done to get the proposed community website that was under development reviewed and published. I admit that job change + wedding planning had my attention diverted this past cycle so I wasn’t able to contribute to this project, but I made sure to spend time the night before to do a review of the content so I’d be prepared. I was able to go through some of my suggestions during the meeting and took a few action items to continue with a more thorough review and to collect some quotes and photos from the community to make the site more personal and approachable.
– Shaping a plan for the future of Ubuntu Documentation Team –
I can’t begin to say how pleased I was to see this session land on the agenda. The Ubuntu Doc team has been a very small team for a long time, and new contributors have struggled to participate as the docs for writing the docs got stale to a point where they were not useful. We’re at a very exciting time now where we have limited support from a couple of the (very busy!) former drivers of this team and at least two strong contributors who have committed to moving the project forward. The first thing on the agenda was addressing the updating of docs so that more contributors can get on-boarded. I was able to pitch in with a couple action items to nudge things along a bit, but I’m hopeful that this is the beginning of an exciting new phase for the team.
– Xubuntu –
Since the event was online, the Xubuntu team took advantage of the flexibility and ended up pulling their sessions from UDS proper and scheduling our sessions for the hour after UDS each day to tackle a series of blueprints designed for the coming months. I was able to use my YouTube account + Hangouts to replicate that portion of what main UDS was doing.
Discussion of most interest to me centered around our testing+release plans (should we do alphas? betas? which ones?) and documentation, but discussion of our limited developer force (want to grow it!), a proposal for a shortcut overlay and default applications also were discussed. A much better summary was posted on the Xubuntu website yesterday: Looking towards Xubuntu 13.10. Pasi Lallinaho also wrote bullet-point style summaries of Night 1 and Night 2 which include links to their respective YouTube videos.
In all, a productive UDS for me, I have a lot of work to do… :)
The second half of our honeymoon was full of adventure (and ok, a bit more luxury). We decided to spend 5 days traveling through the Yucatan peninsula visiting Mayan ruins, cenotes and local cities. We wanted our visit to be stress-free so MJ did some research and found William Lawsons Personal Driving Service which would not only take us around the peninsula but our driver would also be a registered tour guide! We met our guide, Angel, at the resort on Tuesday morning to begin our adventure.
Our first visit was to the ruins of Ek’ Balam. This was a really cool site, with multiple structures to climb, including the huge main temple. It wasn’t until I climbed to the top that I fully appreciated how hot it was out (and that I hadn’t brought enough water!).
I was pretty tired after wandering around those ruins in the heat, so I was delighted when our tour guide was able to find Cenote Hubiku, just north of Valladolid where we were spending the night. A cenote is a “a deep natural pit, or sinkhole, characteristic of Mexico, resulting from the collapse of limestone bedrock that exposes groundwater underneat” (wikipedia). There are thousands in the Yucatan and many that are equipped for people to swim in. Cenote Hubiku had a small admission fee and full, modern facilities for changing before swimming. We caught them at the tail end of their day, but got a good 20 minutes of swimming in the beautiful, cool cenote before being on our way. It was the perfect thing for post ruin exploration.
For dinner we went to Taberna de los Frailes for a delicious dinner that included a grilled watermelon with cheese appetizer (which I wouldn’t have ordered, but the waiter recommended it). We retired for the night at Casa Hamaca Guesthouse which was a cute little inn in the heart of Valladolid. Even better, the proprietor Denis Larsen is a northeast US expat who was exceptionally welcoming and helpful the next morning as we enjoyed banana pancakes and chatted about everything from our shared love of Google Docs for collaboration to tips for the rest of our stay in the Yucatan.
We then spent the day exploring the beautiful city of Valladolid. We visited the small San Roque Museum and then spent some time walking around the main square. From there we did some shopping and I picked up a couple of the traditional embroidered blouses that Valladolid is famous for. We also got a couple of brimmed hats for further ruin exploration. Mid-day we met up with Angel who took us to the Convent of San Bernardino de Siena and Cenote Zaci – a cenote right in town! We didn’t swim but it was nice to visit.
Come late afternoon it was time to start driving toward Mérida to check in to Hacienda Xcanatun boutique hotel for the night. This former hacienda was one of the many in the region that used to be a sisal (fiber) plantation. This was my favorite hotel. The rooms were sprawling and while modernized, still held an architectural feel and basic layout similarities to what I’d expect from and old hacienda. We had dinner at their famous on-site restaurant of the same name.
The next day was Uxmal! Plus a couple other sites on the Puuc Route. Uxmal was a major city and so touring the ruins takes several hours. We managed to see most of it and had a lot of fun climbing around several of their major structures (only the largest and a few minor sites had climbing prohibited). This site really rivals Chichen Itza in how big and amazing the ruins are, definitely one of my favorites.
Next on our list to visit for the day was Kabah. Most amazing about this place was its famous “Palace of the Masks” which was a whole building covered on one side with ornate faces of stone. You’re allowed to climb up to and around the palace, making this probably my favorite small site we visited.
The last ruin site we visited was Sayil where we just visited the Palace of Sayil (the site was very spread out, with buildings up to 1 mile apart). Like so many of these palaces, it was an impressive and imposing sight! No climbing up the structure allowed though.
Our final new site of the day was the Ecomuseo del Cacao. Our first hint that this place wasn’t quite up to par with the rest of our day was the clue from Angel that, while a traditional Mayan thing, cacao doesn’t actually grow naturally in the Yucatan because it’s not humid enough. The museum had it’s moments but was a bit too polished and cheesy. It was nice visiting the grove of artificially maintained cocoa trees and the hot chocolate tasting at the end was probably worth the entrance fee.
From there we headed back to Uxmal for a sound and light show. I hadn’t read great things about it online, so I was prepped for something really cheesy, but I admit having really enjoyed it. The main track being broadcast is in Spanish, but you can rent headphones in several languages so you can hear the stories going along with the show that paint a picture of what it may have been like in the height of civilization there. It was also then that I noticed how beautifully clear the sky was out there, you could see so many stars.
That night we checked into Hacienda Temozon. It was a beautiful property, advertisements for it are quick to tell you that Bill Clinton stayed there once and the only owned by a major American company. The rooms were large, but it turns out perhaps not the right place to stay during ant season. Staying true to some of the age of the place, it didn’t have glass on the windows so everything was quite open-air and the doors covering the windows didn’t seal (you could put your finger through some of the gaps). I did enjoy a wonderful Mexican omelette in the morning.
Angel picked us up in the late morning and, knowing our interest in cenotes, decided to take us to a less touristy one that he knew of, Cenote Kankirixché. It wasn’t a fancy, staffed cenote like the previous ones we’d been to, we had to change in the van and then it was just a hole in the ground and a somewhat questionable wooden staircase taking you down to the water. It was beautiful and refreshing though!
From there we were off to the city of Mérida! First stop was to check in to the stunningly modern Rosas and Xocolate boutique hotel before heading across the street to the Anthropology and History Museum. The museum is located in the former Canton Palace and while all in Spanish the exhibits mostly spoke for themselves. My favorite exhibits were one of one of the earlier expeditions to the Yucatan where many of the Puuc sites we explored, seeing photos from those sites before they were uncovered and restored was really cool. They also had a local embroidery exhibit upstairs which, seeing them in context, made me really happy about my beautiful blouse purchases in Valladolid.
Then it was off to the Grande Plaza district of Merida where we had lunch at Amaro. We did some shopping and were able to visit the Casa de los Montejo and the Palacio de Gobierno with it’s captivating murals by Fernando Castro Pacheco. We enjoyed dinner back at the hotel and in all a relaxing night.
Unfortuantely the adventures had to come to an end at some point, our last day was spent visiting the famous Chichen Itza.
Chichen Itza is a huge settlement and we spent over 3 hours exploring it. It was more crowded than any of the other sites we went to, but the benefit of going in the hottest part of the year is that it wasn’t overwhelming with people at all. One of the interesting things about it though was while it’s expensive for tourists to enter (up to 5 times as much as other sites), the whole inside was filled with vendors! Angel told us it was because it used to be privately owned and they owner brought in all these vendors, and when it was transferred to more government run thing they kept the vendors. At first it was a little off-putting to have so many vendors throughout the archaeological site, but I came to realize that these vendors were selling on-topic keepsakes that tourists (including myself) were interested in buying, and technically these people are descendants of the Mayans who built this city – this is theirs. It also brought a liveliness to the site that was lacking at the other sites, I appreciated them by the time we were wrapping up our day there. And what a day. You couldn’t climb any of the ruins but it’s probably for the best, even just walking among these giants in the heat was enough to tire me out considerably.
We spent our last night in Mexico in Cancun so we’d have easy access to the airport the following morning. MJ picked a hotel on the beach where we could have a romantic private cabana dinner. Perfect wrap up to our honeymoon :)
Ender's Game, Intention, and Morality. An excerpt:
We see the effects of displaced, righteous rage everywhere around us, written in violence and justified as moral action, even compassion. Ender gets to strike out at his enemies and still remain morally clean. Nothing is his fault. Stilson already lies defeated on the ground, yet Ender can kick him in the face until he dies, and still remain the good guy. Ender can drive bone fragments into Bonzo’s brain and then kick his dying body in the crotch, yet the entire focus is on Ender’s suffering. For an adolescent ridden with rage and self-pity, who feels himself abused (and what adolescent doesn’t?), what’s not to like about this scenario? So we all want to be Ender. As Elaine Radford has said, “We would all like to believe that our suffering has made us special—especially if it gives us a righteous reason to destroy our enemies.”
But that’s a lie. No one is that special; no one is that innocent. If I felt that Card’s fiction truly understood this, then I would not have written this essay.
This entry was originally posted at http://bokunenjin.dreamwidth.org/38505.html.
I'd like to suggest a simple process that can turn visitors to your website, list or IRC channel into a successful part of the development team. When people actually contribute, they quickly feel like a valuable part of the group. New people bring fresh energy, and new ideas.
At your next sprint or meeting, start dreaming. Is your user documentation well-written and up-to-date? Do you need promotion, or video guides? How about art or diagrams for your website? Speaking of your website, when was the last time all the links were tested, and it was checked for spelling and grammar? Create a nice, friendly list of tasks for your newcomers.
Could your codebase use some grooming, for common misspellings, for instance? (EBN is a great source for these). When you run across a bit of code which needs pruning or refactoring, or normalizing signal-slot stuff, the easy thing is to fix it while it's in front of your eyes. Instead, consider which of these small tasks can be filed as a "Junior Job", created for the purpose of getting those knowledgeable people to move from faithful user, to part of the team.
The Bugsquad and Quality Control teams can likely suggest more ideas, too.
KDE Junior Jobs can be easily found: http://kde.org/jj. Teams can create their own shortcut links too, such as Amarok has done, listed in the #amarok IRC channel topic: http://tinyurl.com/amarokjjs. Other tasks can be blogged about, posted on a trello, on the Community wiki; whatever your team likes to use. For more ideas, see http://community.kde.org/Getinvolved.
The Kubuntu team has a list of tasks in Trello, which works well.
So, when you feel like not fixing a little issue, don't feel lazy. Feel responsible! File a bug, make it a JJ, and call attention to those issues when new folks show up and ask, how can I help?
PS: Thanks to the #kde-www team for suggesting this blog. Einar77, neverdingo, mamarok; you are wonderful.
PPS: How LibreOffice does it: https://wiki.documentfoundation.org/Development/Easy_Hacks
One of my current web development clients is my mother, Ida Chionh, and I think it's been quite an educational process for both of us as we find ourselves in a client-freelancer relationship instead of (well, in addition to) a mother-daughter one.
Today Mum is launching her new website, A Wok on the Wild Side, an exploration of her passion for food, travel, and the arts. Both my parents have been dedicated home cooks for as long as I can remember, and Mum started reviewing restaurants in Melbourne in the early 1980s, when sweet and sour pork and butter chicken were still strange and exotic dishes. Mum has a lot of stories and knowledge to share about food and cooking, and I'm pleased to provide her with another platform for her to share her experiences.
A Wok on the Wild Side
On Tuesday the 30th we flew from Philadelphia to Cancun, Mexico. From there we took a shuttle south for about 40 minutes until we got to the Riviera Maya district and Grand Velas, the all-inclusive resort we had reservations at for the first week of our honeymoon.
We then spent a much-needed week relaxing.
We had a stunning view from our room.
Hours to spend relaxing on the beach, or in one of their several pools where they brought us all the food and beverages we wanted.
Plus, chocolate strawberries.
I read my way through several books that I’d been wanting to read but never could find time for. Pretty much the only decision we needed to make all week was which of the top notch restaurants they had on site for each meal. I quite enjoyed room service for breakfast.
More photos from our stay: http://www.flickr.com/photos/pleia2/sets/72157633490351996/
We did end up making one excursion during the week, and that was to Rio Secreto, a nearby series of underground caves and waterways. I wasn’t sure what to expect since it was quite close to such a touristy area (tourist trap?) but my expectations were surpassed in all ways. We were geared up with water shoes (we opted to buy new ones for $10/pair), helmets and wet suits and we had a great tour guide, but it was far from a risk-free, polished tourist experience. We got a real feel for the natural caves and we had an amazing time swimming through some of the pools we were taken through in our 3 hour tour through 600+ meters of cave.
A photographer came along with to take photos and we paid the charge to download them all royalty-free, I uploaded several of them here: http://www.flickr.com/photos/pleia2/sets/72157633479166189/
Alas, the luxurious stay had to come to and end at some point. The following Tuesday we packed up… but not to end our honeymoon! Instead we repacked to spend the next 5 days traveling through the Yucatán visiting Mayan ruins and modern Yucatán cities! But that’s for the next post…
On Sunday April 28th MJ and I were married!
The day began gathering with mothers, my aunt and the bridesmaids in the bridal suite of the Joseph Ambler Inn where we and most of our out of town guests stayed. Inn Manager Keenan Christiansen and Brian Cottman really made us feel welcome throughout our stay and during all the planning.
My maid of honor, Danita Fries, took care of morning makeup and hair preparations, bringing in Daneene Jensen and her team to take care of hair and makeup for all of us. Not being a makeup person, I wasn’t thrilled about the idea of wearing it, but Daneene made me feel comfortable and was great about keeping the makeup light and the look very natural. MJ’s Best Woman even stopped by with refreshments in the late morning so we wouldn’t be without lunch.
We met with our photographer, Melissa Morelli, at 1PM to begin taking photos at the inn. She was the photographer MJ hired for our engagement and a few months back she also did my head shots. We were really happy to have her join us in Pennsylvania for the wedding.
The weather was beautiful, which was quite fortunate as the wedding was outdoors and Melissa was able to take some great pictures throughout the venue before the ceremony.
Then, the ceremony! We went back and forth about having a videographer for our wedding and decided to go with one from the Mixed Media Productions, the firm our DJ, Mike Robertson, runs. In retrospect I’m glad we decided to have one, the photos are great but I was so overwhelmed (happy! excited! nervous!) that I can’t say I actually remember that much of the ceremony :)
It all went very smoothly. My mother and grandfather walked me down the aisle. We were honored to have Rabbi Elliot Holin work with us on the ceremony and finally to officiate.
We also held our reception at Talamore, starting with a cocktail hour in the garden room (this room was also backup for ceremony had it rained). Then dinner in their main ballroom which was decked out with the amazing flower centerpieces by Moles Flowers.
The rest of the reception was also pretty traditional, short speeches from family and friends, a first dance and cake! We selected a multi-flavor cake from Bredenbecks and I made sure to have a bit of each ;)
And in addition to being able to talk to many of our guests, we even danced a bit! It was an amazing night.
Afterwards we had a bit of an after party back at the Inn, giving us time to kick back and relax for a couple hours with some of our guests.
In all, things went as perfect as I could have imagined thanks to MJ’s attention to detail throughout the process along with some great vendors who were able to work with us on requests.
We’ll be updating our website in the coming weeks with tons more photos and other details of our wedding weekend which included family and wedding party dinners.
Checking versions in Debian-based systems is a bit of a pain.
This happens to me a couple of times a month: for some reason I need to know what version of something I'm currently running -- often a library, like libgtk. aptitude show will tell you all about a package -- but only if you know its exact name. You can't do aptitude show libgtk or even aptitude show '*libgtk*' -- you have to know that the package name is libgtk2.0-0. Why is it libgtk2.0-0? I have no idea, and it makes no sense to me.
So I always have to do something like aptitude search libgtk | egrep '^i' to find out what packages I have installed that matches the name libgtk, find the package I want, then copy and paste that name after typing aptitude show.
But it turns out it's super easy in Python to query Debian packages using the Python apt package. In fact, this is all the code you need: import sys import apt cache = apt.cache.Cache() pat = sys.argv for pkgname in cache.keys(): if pat in pkgname: pkg = cache[pkgname] instver = pkg.installed if instver: print pkg.name, instver.version Then run aptver libgtk and you're all set.
In practice, I wanted nicer formatting, with columns that lined up, so the actual script is a little longer. I also added a -u flag to show uninstalled packages as well as installed ones. Amusingly, the code to format the columns took about twice as many lines as the code that does the actual work. There doesn't seem to be a standard way of formatting columns in Python, though there are lots of different implementations on the web. Now there's one more -- in my aptver on github.
A word to the wise who are trying to help beginners -- please don't leave out "obvious" steps!
I'll illustrate with a recent experience I had, trying to help a user work through a problem using Krusader. A bit of googling told me that s/he wasn't alone; there are bugs filed on both launchpad and bugs.kde.org. First, kudos to the unnamed person for asking for help in IRC. That's an excellent place to get step-by-step help.
In the launchpad bug, a helpful person posted a series of step to fix the bug by building an updated version from source:
Made my own deb from 2.4.0.beta3 which solved the `krarc` problem.The unfortunate user came back into IRC, and posted this error message:
0 Uninstall Krusader
1 download source from http://www.krusader.org/
2 cd krusader-2.4.0-beta3
3 cmake -DCMAKE_INSTALL_PREFIX=/usr/ -DQT_INCLUDES=/usr/share/qt4/include
5 sudo checkinstall
Don´t forget in step 5 to set version on 3 instead of beta3, only digits are allowed in versions in debs nowadays.
xy@xy-ubuntu:~/Downloads$ cmake -DCMAKE_INSTALL_PREFIX=/home/user/app/krusader-2.4.0-b3-2 -DQT_INCLUDES=/usr/share/qt4/includeHaving struggled through this process myself, I see what's missing in the instructions. The person posting them didn't realize, I'm sure, that steps were being left out, because they have become automatic. To a beginner, they are bewildering.
CMake Error: The source directory "/home/jony/Downloads" does not appear to contain CMakeLists.txt.
Step zero, uninstall, is unambiguous. So far, so good.
Step one, download source, leaves out the best practice, which is to create a directory into which you want your source file! Probably not specified as people have their own schemes of organization, but in general, I advise a ~/kde folder into which I put all source files and builds (thank you for your advice on that, Myriam!)
So step one should be: a) open a konsole, and type or paste: mkdir kde && cd kde && mkdir krusader && cd krusader && wget http://downloads.sourceforge.net/krusader/krusader-2.4.0-beta3.tar.bz2
Then, step b) tar xf krusader-2.4.0-beta3.tar.bz2
Then, do step two, which is correctly stated as cd krusader-2.4.0-beta3
Step three is almost all there, with a missing note: be sure you have cmake installed! My bet is that my troubled user did not.
Cmake ran uneventfully, as did make, so steps three and four are perfect. Step five, however, does not work at all for me, because I don't have checkinstall installed. And I don't think I'll do that for the sake of finishing this blogpost! I don't need a deb file, when Krusader is available from source.
I hope our Kubuntu packagers will get the newest version packaged soon, and make it easy for my troubled user.