I am coining a new term “Arsonistic Firefighter”
I find myself putting out fires in my code base all the time. The problem is, I set the fires to begin with.
I find myself putting out fires in my code base all the time. The problem is, I set the fires to begin with.
I was really frustrated that our voicemail was not working in Chrome. All it said was Missing Plug-in.
Through some research, I found that the voicemail system was loading the files via ajax to a PHP script. Because the extension was not .wav, Chrome was confused.
How did I solve?
Well, this is an internal box with very little traffic and I have complete control of it.
I first told Apache to treat all .php.wav files as PHP. In httpd.conf of php.conf you will see
AddHandler php5-script .php
Add this right below it.
AddHandler php5-script .php.wav
Restart Apache.
Then I symlinked the .php file to a .php.wav file. So that they were identical. Then in the file that pulled in this php file, I changed the filename there as well.
Fixed my issue.
I was receiving this error and did a quick Google search to figure out why. Most posts referred to a missing curly brace “}”.
I went through about 3-4 posts when it hit me. My code was from an older server that allowed the short tag vs the standard
I know it’s not recommended, but to fix the error, I just changed php.ini.
Change this link from Off to On, and restart Apache.
short_open_tag = On
I, like so many others have been confused by the Excel/reader.php problem with dates. I took the time today to patch it for myself. This works in my situations, but may not in yours. Make a backup before trying this.
You will see in the diff that for some reason the date being returned was off by a day, so I fixed by adding 86400.
Here is the patch:
I gave a presentation at Orlando PHP last night. I had a great time, and everyone there was fantastic.
I really want to improve my public speaking. I gave a very simple introduction of myself to a Google Checkout panel a few years ago and thought I was going to passout. I felt I did a horrendous job, and all I was doing was talking about myself and the company I work for.
Enough about that. Last night I was running late due to traffic on I-4 because of the rain. I got there and was very surprised to see one of the biggest turnouts we have ever had for Orlando PHP. I quickly setup my computer while David Rogers talked a little about GIT.
I sped through my slides a little bit. I really didn’t want to just sit there and read what was on them. I wanted to be personable, clear spoken, and desperately wanted to avoid filler noises (ah’s, umm’s, like’s and you know’s). Overall I am very happy with the way it turned out.
Had I gotten there early, I would have setup a tripod and camera to tape it. Because I was running late, I scrapped that.
People were asking me some great questions, and I hope I took enough time to answer to the best of my ability. Some things I deferred to other members of the group that had better answers. Thank you Ketema for stepping in where you could.
I have become very passionate about using Git & Git Flow for my development. It has truly made me a better developer, rather than just a hacker.
Thank you to Vincent Driessen for sharing his git workflow originally. I used it for a couple of weeks, but ultimately did not keep up with it. At some point he released the “git flow” tools that I used in my presentation. I became aware of these tools thanks to Jeff Kreeftmeijer who wrote a blog post titles “Why Aren’t You Using Git Flow?”
I have some resources at the end of the slides that you can refer to.
I attended my first coding dojo last night for our Orlando PHP Meetup.
Boy was I confused. In my mind I was thinking the javascript library Dojo. I thought maybe they used Dojo as a front end to a PHP backend, and just did some coding samples. I have been wanting to use Dojo (the javascript library) lately, so that is why if was top of mind.
The coding dojo is interesting. Simply put, it’s like a karate dojo, in the sense that it is a programming practice. Pick a simple problem, lay the groundwork, and start developing. Not start coding. They guys running the group stress good TDD (Test Driven Design) practices, which was great. I heard many people last night say something to the effect that the project will take twice as long, because you are writing twice as much code.
While I feel I am a decent programming and make a living, I realize that there are many new programmers that come to these meetups. It was nice to feel like I was contributing to someone else’s learning. I was able to relay some of my personal experience with spaghetti code that I am working on untangling now. TDD is the best way for me to untangle the mess.
All in all, I prefer the presentations when they have them. I have volunteered to do one (I want to improve my speaking skills). I may not make all the dojo’s, only because I drive an hour each way, however I will definitely contribute to others learning when I can.
Thanks #OrlandoPHP
I all of a sudden started receiving this error with no clue why. Numerous posts I read told me that I should downgrade from 3.5 to 3.4, which turned out to be a huge P.I.T.A.
The solution, look for the reason on the system. Turns out, my older version was installed in /usr/local/bin/phpunit, w here as the new version was just /usr/bin/phpunit.
Simply delete the old one, and if necessary, symlink the two together.
My dad “beto” asked me about a topic he would like to use on his website. I decided to share it publicly.
He has a simple select box that stores a “Yes/No/Maybe” option in a table. He wants to include the results on a webpage.
I have to assume his Mysql table (let’s call it ReunionAttendance) has at least two columns (SelectBoxValue, GuestsAttending). Adjust the field names for the actual table columns in your table.
There are many ways to do this. I am going to do it this way for a demonstration:
<?php
/* Steps needed
1) Get data from table
2) Put data into a variable
3) Display the table via HTML
*/
/* 1 */
$result = mysql_query(“SELECT SelectBoxValue, SUM(GuestsAttending) as Attending FROM ReunionAttendance GROUP BY SelectBoxValue”);
/* 2 */
while (list($comingValue, $comingCount) = mysql_fetch_row($result)) {
$list[$comingValue] = $comingCount;
}
/* 3 */
?>
<div id=”WhosComing”>
<table>
<thead>
<tr>
<th>Coming?</th>
<th>Total</th>
</tr>
</thead>
<tbody><?php
foreach ($list as $comingValue => $comingCount) {
?>
<tr>
<td><?php echo $comingValue?></td>
<td align=”right”><?php echo $comingCount?></td>
</tr>
<?php
}?>
</tbody>
</table>
</div>
We use bugzilla internally for so much more than a “bug” reporting system. I have done internal presentations about the product and have jokingly called it OrganiZilla or TicketZilla.
The software offers fantastic Organizational qualities to help us stay on top of tasks. And once you get past the idea of bugs and call them tickets, you realize that there is a much broader use of it.
From updates on a website to telling someone to take out the trash, it works! But only if everyone is on board.
I am a member of two PHP user groups. Each one runs a little bit differently. I am looking for feedback from other people in other PHP user groups to find ways we may be able to make these better.
The East Central Florida PHP User Group (Daytona Beach area) is new/restarting. They have only had one meeting so far, and finally scheduled another a few months later. They seem to be more geared towards teaching new PHP developers. While we haven’t done anything so far, they are leaning towards a mentor/student type of group.
The Orlando PHP User Group is quite different. They lean towards more presentation style meetings. Someone proposes a topic, and then someone volunteers to be the presenter. If there isn’t a presentation, then they do some coding in DjangoDojo. I have not been to a meeting without a topic yet, so I am not sure how those go. I probably should since I am not very familiar with Django (or Dojo for that matter) at all.
Of the two, I prefer the Orlando version because I am growing my skills. However, I may like the mentor version because I feel I am a decent programmer and love teaching.
I am looking forward to doing a presentation sometime, because I really want to improve my speaking skills.
How does your user group run? What is your preference?
Cal Evans 8:32 am on April 11, 2011 Permalink |
Hi John!
I'll preface my remarks by saying I know David over at the Orlando PUG and think he is doing a great job.
I've never seen a PUG organized around a mentor/student model. I think that could be very interesting but only if it has a very dedicated leadership. The problem I foresee is that as students grow and mature, they will fade. A strong leadership may be able to flip them to mentors but you will constantly be rotating people in and out. This is where a traditional UG structure comes in handy. By having an ongoing program of presentations and discussions, you give developers of all skill levels reasons to continue to attend.
I would suggest that you start with the traditional structure and once you have your base solidified, appoint someone to run a mentoring program. Make sure that the mentoring group meets on an alternate week so as not to draw attendees away from the main group.
IMHO, etc.
=C=
John Congdon 8:41 am on April 11, 2011 Permalink |
Thanks Cal! So from your experience, most User Groups follow the Orlando model of presentations? I know that you probably had a lot of interactions with PHP UserGroups through your CodeWorks tour (which I enjoyed very much).
That is definitely my preferred model, as I constantly add new tools to my tool belt. I feel I am learning, but at the same time I have been able to share from my experiences.
By the way, how's the move to Orlando/Central Florida progressing?
John Congdon 8:44 am on April 11, 2011 Permalink |
I will also add, that the group needs to meet regularly to be successful. The fact that the East Central Florida inro meetup was 2 1/2 months ago, makes it difficult to keep people engaged. Hopefully after this meetup, we can get it more regular.
The fact that we are meeting in a Wine Bar also makes me want to attend…
rdohms 9:02 am on April 11, 2011 Permalink |
Interesting points of view.
Here in São Paulo we have never been able to maintain regular meetings every month or so, its hard getting around and finding a place, our beverage subgroup is better at it, eventually.
But we do promote events every nw and then and we actually cover both cases you mentioned, some meetings are gueared toward presentations and some a guided toward coding and mentoring, like our TestFest, whe had quite a bit of new developers and the older one were very enthusiastic about helping averyone. We also try to add the mento mindset in our presentations, trying to bring sessions that will grow everyone, from newbie to veteran.
Maybe you can mix both styles there as well?
John Congdon 9:07 am on April 11, 2011 Permalink |
Great point. I noticed that in Orlando. Some of the presentations do start from the bottom and work up. My first experience with a UserGroup concerned me that the group was going to be too basic. But I made it a point to continue to go and I am very happy that I have.
I enjoy getting to meet other people with a similar mindset. I could be more outgoing for sure, but I have found myself at least one new person every meeting to have a conversation with.
And I do feel like I am adding skills that I can use now and/or in the future.
THANKS EVERYONE!
Joel Clermont 9:25 am on April 11, 2011 Permalink |
In Milwaukee, we tend toward the presentation model as well, however we make sure to regularly include other features like a roundtable discussion or a "show and tell" breakout session. At each monthly user group meeting, we try to have two short presentations, one aimed at beginners and one aimed at professionals. Every other month or so, we'll have only one presentation and then use the remaining time to break out into smaller groups, fire up the laptops and help each other with code or show off what we've been working on. Everyone seems to enjoy and benefit from those sessions.
One other side comment, even though it takes more work, it's good to have a variety of speakers from within the group. As the organizer, it's easy to throw together a presentation each month, but by encouraging members to step up and present, they take more ownership in the group and it becomes stronger overall. I've been very impressed by our members and the quality of presentations they create, despite having never presented before.
More info at mkepug.org
Lineke 9:36 am on April 11, 2011 Permalink |
Hi Joel,
Here in the netherlands we have the PHPBenelux Usergroup. They also have the presentation style meetings, which i think will work best. Maybe you could do both? Offer presentations during the meetings and use the internet (e.g a forum or something) to set up a student/mentorship program. PHPWomen has the big sis/little sis program which is basically the same idea.
Greetz, Lineke
Matthew 12:30 pm on April 11, 2011 Permalink |
At the Burlington, VT, PHP user group, which I used to attend (I no longer live there), we went the presentation style route. One thing we did, however, was to use Google Moderator (http://www.google.com/moderator/) to allow members to recommend and vote on topics. We found that when we did this, and had folks step forward to present on highly moderated topics, our attendance went up, and attendees tended to get more out of the meetings — because they were getting information they were interested in.
Matthias Gutjahr 4:39 pm on April 11, 2011 Permalink |
Good idea, Matthew. We (http://www.phpug-rheinhessen.de/ in Germany) also took the presentation style approach and at least try to meet every 6 weeks. It's sometimes difficult to find a presenter, and then we have discussions about various topics. Our attendees are mostly more or less experienced devs, but there are very active "normal" folks, too
We don't focus solely on PHP, but already had presentations on Javascript, Mobile Apps, or Microcopters (next week). Increasing the attendance is one main challenge for us, so maybe Google Moderator is worth a try.
jaguarnet7 9:46 pm on April 12, 2011 Permalink |
John,
Here in Rio de Janeiro, we (phprio.org) use mailing list to tecnical subjects. We also have the presentation and beverage style meetings.
A particularity of my city are the various Coding Dojo meeting, virtually all days of week has a Dojo running. This promotes a contact with various developers.
David Rogers 10:38 am on April 15, 2011 Permalink |
John,
What a great discussion you’ve sparked here…! Thanks so much for participating. Can I post this to the group for additional comment from the members? I know some of our folks ride the line between two groups or have moved on to other cities, so it might illicit some other opinions.
One correction, though: our non-presentation meetings are Coding Dojo meetings using PHPUnit, similar to the ones in Rio that @jaguarnet7 talked about. In fact, our resident “sensei” hails from there and kicked off the OrlandoDojo.org group from the PHP group, actually. I still help him out with that.
My motivation for choosing the presentationVstyle model is mostly efficiency. It’s much easier to get someone to give a talk and have a little intro, Q&A, and social time than it is to organize a mentoring program, and ppl are less likely to show if it’s just a round-table discussion, I’ve found. The dojo is the _least_ maintenance, though, since it requires almost no planning up front. Still, I think you’ve got some great ideas. Let’s talk about them!
John Congdon 3:56 pm on April 19, 2011 Permalink |
Hi David,
For some reason, your comment did not go into IntenseDebate. I am trying to import it now, that’s why I missed it for so long.
You can definitely share with the group. I would really like to open the dialog as much as possible.
As for the coding Dojo, I will correct it.
I haven’t been to one of those meetups yet, and have not used Dojo at all. I guess I should at least look into it.