The new EricMartindale.com is an experiment in data aggregation, and might have a few bugs. Feel free to explore, and then provide feedback directly to @martindale.

search results for php

Hurricane Sandy: Resources, Guides, and Information With #HurricaneSandy  already flooding streets ...

Hurricane Sandy: Resources, Guides, and Information

With #HurricaneSandy  already flooding streets [1] and causing damage [2] in #NYC  due to the effects of the combined hurricane, western stormfront, and full-moon tides [3], I wanted to take just a quick moment to collect some resources related to the storm.  I have quite a few friends directly in the path of the storm (ahem, +Sharon Strandskov!) and I want to urge everyone to stay safe. Make no illusion, this storm is serious business: take a look at the attached photo to see a comparison to Hurricane Irene.

As always, preparedness is key.  If you're in the path of the storm and haven't yet found your battery-powered radio, it's strongly recommend that you do so now while you have the light, as both your Internet and cell signals are likely to be interrupted.  If you haven't stocked up on water and [non-perishable] food, it's a bit late and you're going to have to hunker down and hope for the best.

Course of Action:
From the FEMA Guidelines [4]:
  1) Listen to the radio or TV for information. [ed.: or FEMA's Twitter [5]]
  2) Secure your home, close storm shutters, and secure outdoor objects or bring them indoors.
  3) Turn off utilities if instructed to do so. Otherwise, turn the refrigerator thermostat to its coldest setting and keep its doors closed.
  4) Turn off propane tanks.· Avoid using the phone, except for serious emergencies.
  5) Moor your boat if time permits.
  6) Ensure a supply of water for sanitary purposes such as cleaning and flushing toilets. Fill the bathtub and other large containers with water.

As an additional tip that I recently learned, you can fill plastic bags with water and put them in your freezer to prepare for extended power/water outages.  These will stay cool longer than bottled water in your refrigerator.

If you're in one of the evacuation areas and haven't yet followed the instructions or aren't able to do so, make sure to seek shelter and follow the appropriate guidelines. [4]

Resources:
Google Crisis Map: http://google.org/crisismap/2012-sandy -- this is awesome, and a great central resource keeping up to date.
NOAA Station 44065: http://www.ndbc.noaa.gov/station_page.php?station=44065 -- this is a buoy off the coast of New York tracking the wind speed and direction, if you want direct from-the-source reports.
GOES-14 Satellite Imagery: http://www.ssec.wisc.edu/data/1min/index.php -- Composite satellite imagery from the SSEC program at WISC, on a 1 minute loop.
Weather.gov: http://www.weather.gov/ -- useful for official advisories and up-to-date information, straight from the source.
Weather.com: http://www.weather.com/

Take a moment and look up your local news station's Facebook / Twitter and subscribe, optionally via SMS so that when the power goes out, you still have a method of receiving realtime updates (provided cell coverage doesn't go down / get inundated with emergency requests).

As a bonus, there's a pretty awesome #HTML5  canvas wind visualization demo that updates in realtime [6].  Some pretty slick techniques there, so view the source [Luke].

Feel free to add your own resources in the comments.  I'll edit the post to add the most helpful resources.

[1]: http://observer.com/2012/10/gowanus-canal-flooding/
[2]: http://www.usnews.com/news/us/articles/2012/10/29/crane-dangles-from-nyc-high-rise-clearing-streets
[3]: http://blogs.discovermagazine.com/badastronomy/2012/10/26/hurricane-sandy-looms-over-the-us/
[4]: http://m.fema.gov/hu_during.htm
[5]: https://twitter.com/fema
[6]: http://hint.fm/wind/

Attachments

9 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Hurricane Sandy: Resources, Guides, and Information With #HurricaneSandy  already flooding streets ...

Hurricane Sandy: Resources, Guides, and Information

With #HurricaneSandy  already flooding streets [1] and causing damage [2] in #NYC  due to the effects of the combined hurricane, western stormfront, and full-moon tides [3], I wanted to take just a quick moment to collect some resources related to the storm.  I have quite a few friends directly in the path of the storm (ahem, +Sharon Strandskov!) and I want to urge everyone to stay safe. Make no illusion, this storm is serious business: take a look at the attached photo to see a comparison to Hurricane Irene.

As always, preparedness is key.  If you're in the path of the storm and haven't yet found your battery-powered radio, it's strongly recommend that you do so now while you have the light, as both your Internet and cell signals are likely to be interrupted.  If you haven't stocked up on water and [non-perishable] food, it's a bit late and you're going to have to hunker down and hope for the best.

Course of Action:
From the FEMA Guidelines [4]:
  1) Listen to the radio or TV for information. [ed.: or FEMA's Twitter [5]]
  2) Secure your home, close storm shutters, and secure outdoor objects or bring them indoors.
  3) Turn off utilities if instructed to do so. Otherwise, turn the refrigerator thermostat to its coldest setting and keep its doors closed.
  4) Turn off propane tanks.· Avoid using the phone, except for serious emergencies.
  5) Moor your boat if time permits.
  6) Ensure a supply of water for sanitary purposes such as cleaning and flushing toilets. Fill the bathtub and other large containers with water.

As an additional tip that I recently learned, you can fill plastic bags with water and put them in your freezer to prepare for extended power/water outages.  These will stay cool longer than bottled water in your refrigerator.

If you're in one of the evacuation areas and haven't yet followed the instructions or aren't able to do so, make sure to seek shelter and follow the appropriate guidelines. [4]

Resources:
Google Crisis Map: http://google.org/crisismap/2012-sandy -- this is awesome, and a great central resource keeping up to date.
NOAA Station 44065: http://www.ndbc.noaa.gov/station_page.php?station=44065 -- this is a buoy off the coast of New York tracking the wind speed and direction, if you want direct from-the-source reports.
GOES-14 Satellite Imagery: http://www.ssec.wisc.edu/data/1min/index.php -- Composite satellite imagery from the SSEC program at WISC, on a 1 minute loop.
Weather.gov: http://www.weather.gov/ -- useful for official advisories and up-to-date information, straight from the source.
Weather.com: http://www.weather.com/

Take a moment and look up your local news station's Facebook / Twitter and subscribe, optionally via SMS so that when the power goes out, you still have a method of receiving realtime updates (provided cell coverage doesn't go down / get inundated with emergency requests).

As a bonus, there's a pretty awesome #HTML5  canvas wind visualization demo that updates in realtime [6].  Some pretty slick techniques there, so view the source [Luke].

Feel free to add your own resources in the comments.  I'll edit the post to add the most helpful resources.

[1]: http://observer.com/2012/10/gowanus-canal-flooding/
[2]: http://www.usnews.com/news/us/articles/2012/10/29/crane-dangles-from-nyc-high-rise-clearing-streets
[3]: http://blogs.discovermagazine.com/badastronomy/2012/10/26/hurricane-sandy-looms-over-the-us/
[4]: http://m.fema.gov/hu_during.htm
[5]: https://twitter.com/fema
[6]: http://hint.fm/wind/

Attachments

1 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Hurricane Sandy: Resources, Guides, and Information With #HurricaneSandy  already flooding streets ...

Hurricane Sandy: Resources, Guides, and Information

With #HurricaneSandy  already flooding streets [1] and causing damage [2] in #NYC  due to the effects of the combined hurricane, western stormfront, and full-moon tides [3], I wanted to take just a quick moment to collect some resources related to the storm.  I have quite a few friends directly in the path of the storm (ahem, +Sharon Strandskov!) and I want to urge everyone to stay safe. Make no illusion, this storm is serious business: take a look at the attached photo to see a comparison to Hurricane Irene.

As always, preparedness is key.  If you're in the path of the storm and haven't yet found your battery-powered radio, it's strongly recommend that you do so now while you have the light, as both your Internet and cell signals are likely to be interrupted.  If you haven't stocked up on water and [non-perishable] food, it's a bit late and you're going to have to hunker down and hope for the best.

Course of Action:
From the FEMA Guidelines [4]:
  1) Listen to the radio or TV for information. [ed.: or FEMA's Twitter [5]]
  2) Secure your home, close storm shutters, and secure outdoor objects or bring them indoors.
  3) Turn off utilities if instructed to do so. Otherwise, turn the refrigerator thermostat to its coldest setting and keep its doors closed.
  4) Turn off propane tanks.· Avoid using the phone, except for serious emergencies.
  5) Moor your boat if time permits.
  6) Ensure a supply of water for sanitary purposes such as cleaning and flushing toilets. Fill the bathtub and other large containers with water.

As an additional tip that I recently learned, you can fill plastic bags with water and put them in your freezer to prepare for extended power/water outages.  These will stay cool longer than bottled water in your refrigerator.

If you're in one of the evacuation areas and haven't yet followed the instructions or aren't able to do so, make sure to seek shelter and follow the appropriate guidelines. [4]

Resources:
Google Crisis Map: http://google.org/crisismap/2012-sandy -- this is awesome, and a great central resource keeping up to date.
NOAA Station 44065: http://www.ndbc.noaa.gov/station_page.php?station=44065 -- this is a buoy off the coast of New York tracking the wind speed and direction, if you want direct from-the-source reports.
GOES-14 Satellite Imagery: http://www.ssec.wisc.edu/data/1min/index.php -- Composite satellite imagery from the SSEC program at WISC, on a 1 minute loop.
Weather.gov: http://www.weather.gov/ -- useful for official advisories and up-to-date information, straight from the source.
Weather.com: http://www.weather.com/

Take a moment and look up your local news station's Facebook / Twitter and subscribe, optionally via SMS so that when the power goes out, you still have a method of receiving realtime updates (provided cell coverage doesn't go down / get inundated with emergency requests).

As a bonus, there's a pretty awesome #HTML5  canvas wind visualization demo that updates in realtime [6].  Some pretty slick techniques there, so view the source [Luke].

Feel free to add your own resources in the comments.  I'll edit the post to add the most helpful resources.

[1]: http://observer.com/2012/10/gowanus-canal-flooding/
[2]: http://www.usnews.com/news/us/articles/2012/10/29/crane-dangles-from-nyc-high-rise-clearing-streets
[3]: http://blogs.discovermagazine.com/badastronomy/2012/10/26/hurricane-sandy-looms-over-the-us/
[4]: http://m.fema.gov/hu_during.htm
[5]: https://twitter.com/fema
[6]: http://hint.fm/wind/

Attachments

9 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Hurricane Sandy: Resources, Guides, and Information With #HurricaneSandy  already flooding streets ...

Hurricane Sandy: Resources, Guides, and Information

With #HurricaneSandy  already flooding streets [1] and causing damage [2] in #NYC  due to the effects of the combined hurricane, western stormfront, and full-moon tides [3], I wanted to take just a quick moment to collect some resources related to the storm.  I have quite a few friends directly in the path of the storm (ahem, +Sharon Strandskov!) and I want to urge everyone to stay safe. Make no illusion, this storm is serious business: take a look at the attached photo to see a comparison to Hurricane Irene.

As always, preparedness is key.  If you're in the path of the storm and haven't yet found your battery-powered radio, it's strongly recommend that you do so now while you have the light, as both your Internet and cell signals are likely to be interrupted.  If you haven't stocked up on water and [non-perishable] food, it's a bit late and you're going to have to hunker down and hope for the best.

Course of Action:
From the FEMA Guidelines [4]:
  1) Listen to the radio or TV for information. [ed.: or FEMA's Twitter [5]]
  2) Secure your home, close storm shutters, and secure outdoor objects or bring them indoors.
  3) Turn off utilities if instructed to do so. Otherwise, turn the refrigerator thermostat to its coldest setting and keep its doors closed.
  4) Turn off propane tanks.· Avoid using the phone, except for serious emergencies.
  5) Moor your boat if time permits.
  6) Ensure a supply of water for sanitary purposes such as cleaning and flushing toilets. Fill the bathtub and other large containers with water.

As an additional tip that I recently learned, you can fill plastic bags with water and put them in your freezer to prepare for extended power/water outages.  These will stay cool longer than bottled water in your refrigerator.

If you're in one of the evacuation areas and haven't yet followed the instructions or aren't able to do so, make sure to seek shelter and follow the appropriate guidelines. [4]

Resources:
Google Crisis Map: http://google.org/crisismap/2012-sandy -- this is awesome, and a great central resource keeping up to date.
NOAA Station 44065: http://www.ndbc.noaa.gov/station_page.php?station=44065 -- this is a buoy off the coast of New York tracking the wind speed and direction, if you want direct from-the-source reports.
GOES-14 Satellite Imagery: http://www.ssec.wisc.edu/data/1min/index.php -- Composite satellite imagery from the SSEC program at WISC, on a 1 minute loop.
Weather.gov: http://www.weather.gov/ -- useful for official advisories and up-to-date information, straight from the source.
Weather.com: http://www.weather.com/

Take a moment and look up your local news station's Facebook / Twitter and subscribe, optionally via SMS so that when the power goes out, you still have a method of receiving realtime updates (provided cell coverage doesn't go down / get inundated with emergency requests).

As a bonus, there's a pretty awesome #HTML5  canvas wind visualization demo that updates in realtime [6].  Some pretty slick techniques there, so view the source [Luke].

Feel free to add your own resources in the comments.  I'll edit the post to add the most helpful resources.

[1]: http://observer.com/2012/10/gowanus-canal-flooding/
[2]: http://www.usnews.com/news/us/articles/2012/10/29/crane-dangles-from-nyc-high-rise-clearing-streets
[3]: http://blogs.discovermagazine.com/badastronomy/2012/10/26/hurricane-sandy-looms-over-the-us/
[4]: http://m.fema.gov/hu_during.htm
[5]: https://twitter.com/fema
[6]: http://hint.fm/wind/

Attachments

1 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

RPGChat Forum Review

RPGChat is one of the other large roleplaying forums out there, and they've been around since about May, 2001. Since then, RPGChat has gone through many evolutions, and has expanded rapidly - they started with a forum, grew into a decent sized roleplaying chat, and finally removed the chat and went back to forums.

RPGChat\'s Forum Index You'll immediately notice the large number of forums, which for most boards isn't an issue. In today's roleplaying world, RPGChat's index fits right in.

They've got four basic navigation options at the top of the page, which are images instead of text, which isn't very good for SEO. The four menu options are Home, Forums, Chat, and Rules. I gave each of them a shot, but it looks like only the "Home" and "Rules" link work.

I'm going to take a look at their code, because using images for links isn't horrible if you specify the right attributes. Let's have a glance:

<a href="http://forums.rpgchat.com/index.php"> <img src="header/but_home.jpg" border="0"> </a>

Yikes! Not only does the anchor not have a title attribute, but the image doesn't have an alt attribute! Search engines won't be able to understand the context of these links, and the flow of link juice to the two working links won't be very beneficial.

I participated on these forums for a few months as the username Alighieri, for that period, I became the single most active user in their welcome forum. I posted in several other topics, but got pretty frustrated with the limitation on the length of a post (20,000 characters).

When attempting to post a profile for one of my characters, I was immediately snubbed by the limitation. This makes well-researched posts difficult to make, specifically with the citations that must be put in place for accurate references. Ultimately, I was forced to cut out portions of my character's history to fit it into the post.

After posting for a few weeks nonstop in the Welcome Forum, I headed off to the The Arena area, where turn-based fighting is largely popular. I opened a topic with a list of the top turn based fighters, placed into a neat little image and posted right into the topic. It took a few days to get any response at all, (save for a few people who contacted me over AIM) and when I did get a response, I logged in to RPGChat to find that I had been banned for "advertising on multiple occasions", much to my surprise.

However, while my visit was cut short, I met some good friends, and had some great discussions. Unfortunately, the forum does not allow any links to external sites of any kind, and also does not allow signatures, which makes it very difficult to spread the word about the topics you start there. This isn't very good for encouraging member interaction, and makes it very difficult for momentum of any sort to be gained within the community.

RPGChat\'s LogoAfter speaking with someone who had messaged me on AIM prior to my banning, I confirmed my worst fears - RPGChat is a closed community, and is not very open to outside communities or positive interaction with those communities. This is the number one concern mentioned to me about RPGChat and their future, and there is ongoing fear of the community continuing to stagnate without any growth other than direct referral.

I sent a request via the site's contact form, as listed at the bottom every page, which merely opened a new email to their support address, forums@rpgchat.com - I sent a couple questions in my email, and I identified who I was, but I haven't yet received a response. It'd be great if we could get an interview with an admin from RPGChat on the history of the site!

In terms of organic visitors, a search for pages on RPGChat has about 16,200 results. When digging through the pages, I noticed that only 477 pages were in the primary index, with the remainder in the supplemental index. That's scary!

Let's take a look at their search results: Running a Google search on RPGChat

As you can see from the above search, we can confirm that there is some duplicate content problems. However, from what we've seen - most of RPGChat's traffic is a result of direct referral. We can identify with the importance of defensible traffic, but organic traffic is also a high-quality method of driving laser-targeted traffic to your site, and it looks like RPGChat is seriously missing out on this.

RPGChat has a relatively active forum; 63,708 threads, 1,925,709 posts, and 59,352 "active" members. While that's only an average of about 30 posts per thread and only about 32 posts per user, they do have some great quality and style elements in their posts that you simply don't see in many other places in roleplaying forums these days. I think it would be a great move for them to deactivate a lot of their older and inactive members, and send out reminders to these users to come back and join in on the fun.

It also seemed like a consensus that the single best area on RPGChat was the Clans & Guilds forum, which most users simply called "C/G" for short. It looks like most other forums' version of a multiverse, where roleplay is freeform, and most action is player-driven with rules being defined by the status quo.

Lack of availability aside, RPGChat leaves a pretty strong impression, and if you're careful to follow their 500 word list of rules, you can likely make some friends and enjoy some great high-quality roleplay. The administration needs to do some overhauling if they're going to keep the community healthy, but for the time being - RPGChat makes for a great roleplaying destination.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

<span class="proflinkWrapper"><span class="proflinkPrefix">+</span><a class="proflink" href="https://plus.google.com/105400736676917752271" oid="105400736676917752271">James... in reply to

+James Williams The end of the article draws a line between node.js issues and php. It's the same kind of talk i hear about php: "this is a cancer, we must purge it, it has issues therefore its the worst thing ever and don't ever use it because you will code yourself into hades".
Most coders own a few cars. Javascript is my motorcycle, php is my compact car, and c# is my pickup truck. If I was less lazy I'd have more cars, but I do well with the ones I've got. If I could take the motorcycle onto the highway (server side) and get away with it, I'm sure I would.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Display Foursquare Badges in Chyrp without using Javascript

If you notice, I currently display my Foursquare badges over in the right hand side. I'm not sure about how long I'll display them specifically, so here's a screenshot:

I recently received an email inquiring about how I accomplished this. Well, since I use Chyrp, here's how I did it:

  1. In includes/controller/Main.php, add the following, somewhere around line 715 (immediately after $this->context["sql_queries"] =& SQL::current()->queries;): // BEGIN Foursquare Badges $cURL = curl_init(); curl_setopt($cURL, CURLOPT_URL, "http://api.foursquare.com/v1/user.json?badges=1"); curl_setopt($cURL, CURLOPT_HEADER, 0); curl_setopt($cURL, CURLOPT_RETURNTRANSFER, 1); curl_setopt($cURL, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); curl_setopt($cURL, CURLOPT_USERPWD, "your@email.com:your_password_here"); $strPage = curl_exec($cURL); curl_close($cURL); $foursquare = json_decode($strPage); $badges = $foursquare->user->badges; foreach ($badges as $badge) { $this->context['foursquare_badges'] .= '<img src="'.$badge->icon.'" title="'.$badge->description.'" />'; }
    // END Foursquare Badges
  2. In themes/your_theme_name/content/sidebar.twig, wherever you want to display your foursquare tags, simply add: <div> <h1>Foursquare Badges</h1> $foursquare_badges </div></code> You can display this wherever you like, in any part of your Chyrp template.

Be aware that this requires PHP's CURL module. I encourage you to enable Chyrp's caching module as well, so every page load does not incur a single API request (I have a feeling that they probably won't appreciate it). The benefit of this is that your Foursquare badges will now be output by your server, so they are both indexable by search engines and degrade very gracefully when the client doesn't have Javascript enabled (NoScript users, particularly).

Enjoy!

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Same Old Story

You know what I hate? Seeing the same story over the course of a few weeks as multiple blogs cover the same "hot" story. Case in point? Starcraft Origami.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Exhaustion

Remote Desktop-ing from work to my personal computer at the house today... and there I was, multitasking AGAIN... Photoshop and Dreamweaver both open... and I was DRAWING with RDP. Well, so Photoshop decides to lock EVERYTHING up. So, I restart the computer and open Remote Desktop again. I connect to my computer, I log in... and KAZZAM!!!!!111one!

There's everything running perfectly just as it was. I was happy. IPG!

I'm tired as hell now, too. We ended up doing like... 400 jumping jacks... and 100 kicks of each type. I'm tired as fook. Oh, and for those that don't understand what I'm talking about, I take Isshin-ryu Karate. Since I'm too tired to list my other experience in martial arts, I think I'm going to lay down.

Readygo.

OR NOT!

Our car decided not to start. Hell, it wasn't even turning. I kicked it. It turned.

You see, certain things deserve a good kick in the face sometimes. Of course, I'd never do that to a person. Unless they did something wrong. That's human nature, though.... ANYWAY. Before I trail off into philosophy, I'll continue on my previous subject. Things such as cars and the occasional computer deserve a good kick. Not just a love tap, but not a decapitation, either. I mean, have you ever build a quantum particle accelerator that just randomly stopped working until you kicked it out of frustation, at which point it sends 300W of microwave energy into your stomach?

Kicking something isn't always the solution, though. There I was using Windows, and it decided to choke and DIE! DIE! DIE! I digress. It was loading something, probably explorer.exe ... and I decided to stroke it. Stroking my machine isn't exactly conventional, but of course, it suddenly worked. Ever since, I've been extremely superstitious about the way I touch my machine. One wrong bump, and it gets irrated at me, and starts shooting sparks everywhere. But a little scratch on the top of the case and it's all good. It works like a charm, let me tell you. Your computer will be cooking popcorn and making your bed in no time.

Speaking of your computer popping teh popcorn, has anyone talked to HAL on GWing lately? Is it just me, or is Chrono trying to get HAL to grow a body and assassinate me? For real? He's getting thoroughly viscious. I've already started a topic on GWing about it, and I guess it'll evolve with time. http://gwing.net/forum/viewtopic.php?t=539

Readyslowgo.

--
Eric Martindale
IT Professional
Admin of GWing.net

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Tuning Large phpBB3 Forums

One of the sites I own and run (RolePlayGateway) has a pretty large forum, with several customizations and features that I've added on to the base install of phpBB3. As time went on, we continued upgrading the servers (moving from GoDaddy shared hosting to GoDaddy virtual dedicated servers, then onward to MediaTemple's (gs), and now we're on the second tier of MediaTemple's (dv) hosting) in an effort to keep the hardware moving as fast as possible.

As I'm sure you know, hardware can be pretty expensive! One month, while on MediaTemple's Grid Server, we racked up $600 in CPU time overage charges. (Ow.) Now that we've moved onward to bigger and better packages, we're shelling out just about $100 per month for a rock-solid server solution that can be upgraded seamlessly in the future. But since upgrades can only go so far without being prohibitively expensive, I thought it was time to take a look at some of our coding approaches.

Enter memcache, the distributed database caching solution originally designed by LiveJournal to help them deal with massive databases and large volumes of users. DavidMJ has written some shiny ACM modules to help phpBB3 make use of some caching systems, and a memcache module was among them.

That didn't work so well. It gave about a 50% boost to phpBB3's performance (which was great!), but we were still choking the server, and ended up upgrading to a bigger and more robust package with MediaTemple. So I started looking into more options, and DavidMJ suggested xcache. So I go grab xcache and compile it, then enabled it in php. Bingo! There's a 500% boost in our page compile times, and across most of our pages we're now well under 0.1 second compile times. (With the exception of viewtopic.php, which frequently approaches 2 seconds due to bad coding on my part... this will be fixed soon.)

So now that I've got the thirst for speed, let's take a look at how we're performing. To do this, use the apache benchmarking tool:ab -n 100000 http://www.mydomain.com/my_page This will test the URL you specify 100,000 times, and give you some feedback about how the page performs. You'll end up with something looking like this:

Server Software: Apache/2.2.3 Server Hostname: www.mydomain.com Server Port: 80 Document Path: /my_page Document Length: 0 bytes Concurrency Level: 1 Time taken for tests: 15.30100 seconds Complete requests: 1 Failed requests: 0 Write errors: 0 Non-2xx responses: 1 Total transferred: 715 bytes HTML transferred: 0 bytes Requests per second: 0.07 [#/sec] (mean) Time per request: 15030.100 [ms] (mean) Time per request: 15030.100 [ms] (mean, across all concurrent requests) Transfer rate: 0.00 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.0 0 0 Processing: 15030 15030 0.0 15030 15030 Waiting: 30 30 0.0 30 30 Total: 15030 15030 0.0 15030 15030

Some tweaks to the default xcache config that I recommend:

Set the number of caches to one per processor on your server! ; set to cpu count (cat /proc/cpuinfo |grep -c processor) xcache.count = 4

This post will be updated as I explore phpBB3 and more server side options. (I wrote part of this post, then stopped writing... and figure I'd publish it a couple days later anyway!)

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Duality

Eternal Sunshine of the Spotless Mind is a really weird movie, and it really scared me.  Not only is the concept nail-head-on, but I used to be called Jim Carrey, and some say I bear a striking resemblance to him in my expressions.  Well... yeah.  It's difficult to explain.

So what, I got over that.  But then, just when I thought the worst was over, I was randomly Googling - the verb form of to search the google search engine - and then... BOOM! HEADSHOT!

http://www.bbc.co.uk/dna/ww2/A5089836

Okay, I can handle someone from WW2 looking almost like myself - and the fact that he's a pilot, one of my dreams.  Okay.  I can handle that.  And then...

http://www.artofcombat.com/instructors.htm :
The training group (SOI) in Dallas was small and under the guidance of Eric Martindale (which promoted Ralph to 9th kyu), ....

I can handle a martial arts instructor being named Eric Martindale as well, a little odd, but then again, I've always been involved in martial arts, haven't I?  Eric apparently promoted that guy to 9th kyu, right?  So don't you have to be 10th kyu?  So he's 1337 like that, right?    ...      And then...

And of course there's the soccer referee, or is he a player?  I don't remember.  He's another Eric Martindale.  A little weird, too... but I've played soccer since the age of five.  And then...

http://www.rtpnet.org/troop200/history/T200Eagles.html

I became an Eagle Scout, too.  When I was a young boy... I was once a cub scout aspiring to be an Eagle Scout.  Dun dun dun.  The plot thickens.

http://www.e-budo.com/forum/showpost.php?p=211703&postcount=15

Once again, I am involved in a martial arts situation, and I believe referring to the same Eric Martindale.  And then...

http://nhpresbytery.org/pdf/Graduates01.pdf

Holy crap, that IS me.  For real.  Only slightly unexpected at this point... after all of these STRANGE entries.  Slightly.  O_o ....

And then...

I've apparently lost myself on http://lostfriends.org - or is someone looking for me?  Oh... that's what I meant to say.  I haven't found myself there yet... but apparently Google did.  And then...

http://north-carolina.injuryboard.com/view.cfm/Topic=77/PAGE=2

I WAS on this page at some point... and this one is somewhat entertaining.  Apparently, in Charlotte during some point about a year ago, someone named Eric Martindale died in a car accident.  I believe I had four people come up to me that day and ask if I had died... I was about two hours north of charlotte at the time, and the "Eric Martindale" news had reached most parts of North Carolina and Virginia, and I got two phone calls, one from my mother - asking if I had died.   .... ... ... ... ....   And then...

http://www.faqs.org/usenet/news.announce.newgroups/rec/rec.autos.rotary

I'm the president of a North Carolina rotary club.  I've always been a fan of rotary engines... but this is ridiculous... WTFH? ....  I'm becoming very frightened at this point... very frightened.  I love rotary engines.  That rotary club is two cities away.  ...  And then...

http://www.wrestlingusa.com/02%20wusa%20web%20root/highschoolnews/wisconsin.html

I used to wrestle, but I've never been to Wisconson.  Or.   Have I.

"The One", any one?  Whoa!  The Matrix!  42!

--
Eric Martindale
IT Professional
Admin of GWing.net

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

<del>I was expanding on the issue... in reply to

I was expanding on the issue of basic libraries as another sore point in Node and how you could use another CommonJS variant and have one less issue to contend with.

I'm not quite sure where PHP got into the debate but you must realize that they might feel they are offering a valid alternative albeit with advantages skewed to their skillset but as PHP person, your investment in the language renders that point moot.

That person doesn't own the car, they might only lease. So their priorities are gonna be different.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Look at his leg <span class="proflinkWrapper"><span... in reply to

Look at his leg +Eric Martindale https://www.facebook.com/photo.php?fbid=324888870887406&set=a.174465782596383.34744.171260932916868&type=1&ref=nf

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

The question is, when will people... in reply to

The question is, when will people who rage about php stop treating coding like a religion and start realizing that tools are just tools, and the best tool for the job isn't necessarily the be all and end all of code.
I'm so tired of hearing people bemoan the horrors of php without having an alternative that offers any advantage whatsoever to the majority of my uses.

I wouldn't throw away my car because it's an ugly color or had a few dents in it if the only alternative was to buy a truck.

It's a good article, and Eric is always good about finding contrary opinions and listening, but a grain of salt is always necessary.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with...

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with Jeb Corliss to the tune of "Sail", by AWOLNATION? [2]

Jeb was filming at Table Mountain in South Africa [3] when he clipped a ridge. See attached video.

Edit: Jeb explains what happened on Facebook [4], and I found some further footage [5].

#musicmonday is relevant, because that song is epic.

[1]: Jeb Corliss " Grinding The Crack"
[2]: AWOLNATION - Sail
[3]: http://en.wikipedia.org/wiki/Table_Mountain
[4]: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868
[5]: http://www.liveleak.com/e/d89_1326749423

Attachments

Jeb Corliss Table Mountain Crash

Sneak peek of wingsuiter Jeb Corliss crash into Table Mountain. Jeb explained what happened on Facebook: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868

1 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with...

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with Jeb Corliss to the tune of "Sail", by AWOLNATION? [2]

Jeb was filming at Table Mountain in South Africa [3] when he clipped a ridge. See attached video.

Edit: Jeb explains what happened on Facebook [4], and I found some further footage [5].

#musicmonday is relevant, because that song is epic.

[1]: Jeb Corliss " Grinding The Crack"
[2]: AWOLNATION - Sail
[3]: http://en.wikipedia.org/wiki/Table_Mountain
[4]: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868
[5]: http://www.liveleak.com/e/d89_1326749423

Attachments

Jeb Corliss Table Mountain Crash

Sneak peek of wingsuiter Jeb Corliss crash into Table Mountain. Jeb explained what happened on Facebook: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868

1 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with...

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with Jeb Corliss to the tune of "Sail", by AWOLNATION? [2]

Jeb was filming at Table Mountain in South Africa [3] when he clipped a ridge. See attached video.

Edit: Jeb explains what happened on Facebook [4], and I found some further footage [5].

#musicmonday is relevant, because that song is epic.

[1]: Jeb Corliss " Grinding The Crack"
[2]: AWOLNATION - Sail
[3]: http://en.wikipedia.org/wiki/Table_Mountain
[4]: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868
[5]: http://www.liveleak.com/e/d89_1326749423

Attachments

Jeb Corliss Table Mountain Crash

Sneak peek of wingsuiter Jeb Corliss crash into Table Mountain. Jeb explained what happened on Facebook: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868

20 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with...

So, remember Jeb Corliss " Grinding The Crack" , [1] that kick-ass #wingsuit / #basejumping video with Jeb Corliss to the tune of "Sail", by AWOLNATION? [2]

Jeb was filming at Table Mountain in South Africa [3] when he clipped a ridge. See attached video.

Edit: Jeb explains what happened on Facebook [4], and I found some further footage [5].

#musicmonday is relevant, because that song is epic.

[1]: Jeb Corliss " Grinding The Crack"
[2]: AWOLNATION - Sail
[3]: http://en.wikipedia.org/wiki/Table_Mountain
[4]: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868
[5]: http://www.liveleak.com/e/d89_1326749423

Attachments

Jeb Corliss Table Mountain Crash

Sneak peek of wingsuiter Jeb Corliss crash into Table Mountain. Jeb explained what happened on Facebook: https://www.facebook.com/permalink.php?story_fbid=336828709693422&id=171260932916868

1 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Pimp Status and further updates...

Now that I've upgraded to Google's Blogger Beta, I'm tweaking a bunch of controls on my blog. I am continually running into the user-friendly syndrome, where a feature is too user friendly and I can't get down to the nitty-gritty tech side of the application. While it saves me the five minute trouble of setting up a Wordpress or similiar in-house blog, it constantly reminds me of the merits of having the Wordpress, and consequently influencing me to neglect posting here at all.

I woke up this morning to a completed upgrade from Ubuntu's Dapper Drake (6.06 LTS) to Edgy Eft (6.10), after encountering some problems resulting from my own stupidity. Upgrading from the servers took a grand total of 16 hours, start to finish. This includes my time working out the kinks from my said stupidity, which I won't go into further here. Due to the complications, my personal alarm clock (XMMS and an alarm plugin...) failed to wake me at the goal of 5:30 AM, having not rung at all. Sadly, this caused me to miss the chance to see my beautiful Amber, with her leaving for school at 6:30, and me waking at 7. grumble

After rebooting the machine to seal the deal, I opened up my shiny new Firefox 2.0 to look at the GWing RSS feed. I clicked the most important thing at the time, a new topic titled A Tale of Two Wreckages: A True Story. I then proceeded to heartily laugh my way through the time I had remaining before I had to leave for work.

Pimp status, hrm?

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

BioShock PC Demo Leaked

The glory.

read more | digg story

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

HOWTO: Seamless MS Windows in Edgy with VirtualBox and Beryl!

UbuntuForums user has integrated MS Windows into Ubuntu, so there's now a lot less dual booting...

read more | digg story

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Dell Tech Chatbot Tries His Best

April's Dell said it couldn't find "systems 32 config" and after going through a series of troubleshooting steps with a Dell tech in chat, he said it was due to a bad sector on the hard drive and it would need to be replaced. While that very well may have been the case, we were amused by how the conversation wrapped up...

read more | digg story

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Extravagant Self Gratuity

I just invested in $500 worth of targeted advertising for GWing Roleplay. So, what's the total impact upon my wallet?

A grand $5 in activation fees.

Big shoutouts to Computers.net for pointing this out. I was thinking of organizing a group of friends to throw multiple instances of these offers into advertising for GWing, but I realized that it would be difficult to target the advertising properly, as I found it rather complicated to create my own template of keywords and negative keywords to match the optimal result for what we desire in our community. If you sign up for these offers, be sure to carefully monitor your expenses! The billing is most likely set to recurring, and will continue to charge your credit card after your account balance has been used.

Alternately, I woke this morning to find DoesMyGeek's New Podcast, and was greeted by a shoutout and a link over the air to yours truly, and GWing Roleplay. What an amazing podcast, talking about the classic combination, roleplay and beer. Here's to you guys. ;)

One more - I just got linked to Michael Robertson's Evaluation of a College Degree, and found the article particularly interesting in this time. And now: back to work.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

PHP5, Scraping, and XPath

I've been building a scraper using PHP5 and the newly added XPath functionality. The idea here, as an exercise in programming, is to scrape complete records from Google Maps, including name, address, and phone number.

Here's a snippet of what I've been trying to do. This probably isn't the best approach, but I can't quite figure out how to pull a child of a resulting element, PHP is forever returning an error when I try to use firstchild.

//start our result counter
$i = 0;
//try setting higher than 1000
while ($i < 1000)
{
//show status so we don't get lost
echo "Currently extracting data from records ".$i." through ".($i + 10)."...";

$raw = new domdocument;
$clean = new domdocument;

//special to Google
$url = 'http://maps.google.com/maps?f=l&hl=en&q='.$what.'&near='.$where.'&view=text&start='.$i."&radius=".$radius;

@$raw->loadHTMLFile($url);

$HTML = $raw->saveHTML();
@$clean->loadHTML($HTML);

$xpath = new domxpath($clean);
$xNodes = $clean->getElementsByTagName('td');

foreach ($xNodes as $xNode)
{
if ($xNode->getAttribute('valign') == "top")
{
//echo $xNode->nodeValue."\n";
$output .= $xNode->nodeValue."";
}
}

echo "...done\n";

//add to our counter
//10 results per page, so we add 10
$i = $i + 10;

}

//fix bugged double comma, can't figure out where this is happening
$output = preg_replace("/,,/",",",$output);

$somecontent = make_csv(strip_non_ascii($output));
echo $somecontent;


There's a bit of extra and unrelated code here, but that's the basic process I'm using.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

RSS is back, or "a brief history of EricMartindale.com"

Hello there, adoring internet-stalkers! (I'm kidding. ~_~) You may have noticed (if you were loyal, that is ;)) that my Feedburner-powered RSS Feed has been lacking in activity lately. There's a reason for that.

Recently, I got rid of WordPress and Sweetcron in favor of a new CMS platform, Chyrp. I had been running Wordpress for a long time, using it to share my thoughts with the general internet populace. However, it had become a bit of a chore to maintain, and it really felt like duplicate work on top of all the other content-generation I was already performing (i.e., forum posts, blog comments, Last.fm "Loved" Tracks, Google Reader shared items, etc.), so I began to look for a way to aggregate this content into a central place.

For a while, FriendFeed served this purpose well, but I didn't like the lack of control I had over the source. Facebook also filled part of this gap (and it still does, to a point), and they've even purchased FriendFeed, but I was looking for something quite a bit more customizable and self-hosted. Through various referrals, I came across Yongfook's Sweetcron project which was a new platform designed specifically for this new thing they called, le gasp, "Lifestreaming".

However, after fighting with Sweetcron and its aggregation methods, particularly its lack of support for various service feed formats; I decided to look into something else. Initial searches landed me upon Tumblr, who had conveniently announced a feature that syncs comments across multiple services (or aggregates). Sadly, I didn't want to get back into a world where all my code was hosted by someone else, and I had no control over it. I kept Sweetcron running on my site under lifestream/, but I continued searching for a better solution.

I then stumbled across Bazooka, which was billed as "the first free PHP tumblelog engine". Thanks to Bazooka developer Evan Walsh, who alerted me to a more up-to-date and current replacement called Chyrp. And I was sold. I immediately spent a few hours converting my existing content from WordPress and SweetCron over to a test installation of Chyrp, and then took the next night changing my site structure and 301'd all my old links to the new URLs.

That's where EricMartindale.com stands today. I've spent a few weeks getting my stream set up the way I want it, and I'm turning the RSS feed back on. Posts should begin flowing into your RSS reader very shortly. Post comments, feedback, and questions here!

Edit 10:13 PM EST: It looks like Feedburner is having some trouble parsing my new RSS content. You can subscribe to my direct feed and it will always work.

Edit 10:58 PM EST: I've fixed the problem and committed the patch to GitHub.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Choosing A Medium For Your Online Role Playing Game

Running a role playing game online presents a large of amount of flexibility in the way you run the game. You no longer need individual sessions where all players are present, and there are a plethora of options as to where you are going to run it - if you want to run it in any one place.

One of the number one questions I receive relates to the medium for online RPGs. There are tons of different ways of communicating online, mainly grouped into a few categories. We have instant messenger, chats, message boards, and emails. There are a few custom services out there, but I'm going to touch on the four that I've mentioned.

On RolePlayGateway, we have a set of roleplaying forums as well as a roleplaying chat. When you're running an RPG, there are a few items you should consider when deciding where you're going to keep everything.

Forums have the benefit of being static and always available - users can post to forums at any time during the day and be sure that other users (and roleplayers) can see their message. Forums are also very flexible, they allow you to embed images and other multimedia within your posts, allowing you to share any experience with your players. However, it is post based - forums are often not the quickest way to communicate, as it is not a live feed of information like a chat.

Chats, on the other hand, have the benefit of being real time. Games can be run in chat (and instant messenger) on a moment's notice, and work best when all of the players can be available at the same time. Because it is real time, short blip-based sessions such as character conversations and interactions work extraordinarily well with chats. Players can get the chance to interject into other player's actions and statements without the worry of too much time going by. It is for this reason that the longer posts, such as those that exceed a paragraph, are often too large and unwieldy for chats - players end up waiting too long for each post, and will get bored.

Longer posts do very well on forums, where writing an individual post can take half an hour or longer to refine and perfect - just enough time for the players to go look at other games and other topics before they come back and begin formulating their response.

If you're running a game with a detailed and/or complicated storyline or characters, it is always good to post something on a forum for player reference. This lets the players have a place to communicate out of character (OOC) - such as when they won't be able to make a chat session, or when they want to discuss plans for character interaction, growth, or development. Even if your game is already on a forum - it is a good idea to create a place for OOC discussion. For chat-based games - this gives a perfect opportunity for players to jump in at the middle of a game with little trouble, as they simply need to read over the history of the game on the forum, which they can do at any point in time, and less time is needed explaining the game to the player.

Instant messenger works well when dealing with one on one sessions, such as when two characters are the only ones in an interaction or a meeting needs to be private. These interactions can be summarized or written into a cinematic format and then posted to the forum, for other players to enjoy as well. Instant messenger (as well as Private Messages) does very well at asking questions of the other players, which is convenient when you have a question about how they're playing a role or a reference they made in character.

There are also emails - many games aren't run by email anymore, but email is still a very valuable tool. RolePlayGateway like many forums offers you the ability to subscribe to topics. Subscriptions will let you receive an immediate email update whenever someone replies to the thread. This is extraordinarily helpful when there's an RPG with only a few players that can only reply every once in a while, but it requires that people, y'know, actually check their email. RolePlayGateway also has the special ability to instant message you when there's an update to a subscribed thread. All you need is a Jabber account (GMail accounts work, too) and to set up the notifications. We'll send you a message as soon as there's an update.

What methods have you used to manage your online roleplaying games? Are you a fan of forum or chat? Both? What helps you determine where you're going to hold your game? Discuss!

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Mitigating the BEAST TLS attack in node.js

I've been relying heavily on node.js this past year to provide a robust set of tools to solve the problems I encounter on a daily basis. I was pleased to see honorCipherOrder was added to node's TLS library in node.js v0.7.6, and released with node.js v0.8.0.

Late last year, security researcher Juliano Rizzo announced a new attack against the AES encryption used in the SSL/TLS transaction he dubbed BEAST. The details are interesting to those who care, but it turns out that we can mitigate this attack in node.js by enforcing honorCipherOrder on the server. Let's take a look.

If you have an HTTPS server that looks like this:


var https = require('https');
var fs = require('fs');

var options = {
  key: fs.readFileSync('key.pem'),
  cert: fs.readFileSync('cert.pem')
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("hello world\n");
}).listen(443);

...you can now manage the cipher order by using the ciphers option. In the following code snippet we're going set the options for the above server to use Steve Caligo's cipher order, which prefers TLS 1.2 ciphers (which are not vulnerable to the BEAST attack) for clients that support TLS 1.2 but falls back to the RC4 ciphers on TLS 1.0 clients.[...]


var options = {
  key: fs.readFileSync('key.pem'),
  cert: fs.readFileSync('cert.pem'),
  ciphers: 'ECDHE-RSA-AES256-SHA:AES256-SHA:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM'
};


Finally, we will enforce the cipher order on the server's side of the negotiation:

var options = {
  key: fs.readFileSync('key.pem'),
  cert: fs.readFileSync('cert.pem'),
  ciphers: 'ECDHE-RSA-AES256-SHA:AES256-SHA:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM',
  honorCipherOrder: true
};

...which leaves us with the following code for a working server that is not vulnerable to the BEAST attack (in node v0.8.0+!):


var https = require('https');
var fs = require('fs');

var options = {
  key: fs.readFileSync('key.pem'),
  cert: fs.readFileSync('cert.pem'),
  ciphers: 'ECDHE-RSA-AES256-SHA:AES256-SHA:RC4-SHA:RC4:HIGH:!MD5:!aNULL:!EDH:!AESGCM',
  honorCipherOrder: true
};

https.createServer(options, function (req, res) {
  res.writeHead(200);
  res.end("hello world\n");
}).listen(443);

Edit, 6/13/2013: Lloyd Watkin has done some research on his own and decided to use a different cipher chain:

ECDHE-RSA-AES128-SHA256:AES128-GCM-SHA256:RC4:HIGH:!MD5:!aNULL:!EDH

You should read into why he chose it and make an educated decision. </edit>

Until node.js implements this as the defaults (they should), this is something you should implement where using HTTPS with node!

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Letter Sweep

Following suit with the likes of Tim Bray and Eric Meyer, I figured I'd throw together my browser's letter sweep tonight.

  • [A]dmin Site. Yeah, I guess I would be visiting the admin panel for this. Quite frequently.
  • Mirascape's [B]log. An infrequent haunt of mine, but fairly obvious.
  • [C]MON. Cluster Monitor for MySQL Cluster, something I almost always have open.
  • Google [D]ocs. This one is painfully obvious, I use Google Docs extensively.
  • [E]ricMartindale.com. Okay, that's a gimme. Does this make me egocentric?
  • [F]acebook. I'm actually fairly ashamed of this one. Why can't I have a cool F site? sadface
  • [G]mail. Three accounts linked using Google's Multiple Sign-in. Open [almost] all day.
  • [H]ighcharts JS. A pretty kick-ass Javascript library for generating charts on the clientside.
  • [I]nternal Discussion. A site for communication with my team. :)
  • [J]Query Mobile Demo, 1.0 alpha 3. I've been spending a lot of time toying with jQuery Mobile, seeing where it's going compared to Sencha Touch.
  • [K]r.github.com. Keith Rarick's GitHub redirect. Total ass-kicker.
  • [L]inkedIn. Pretty straightforward, between hiring for our team at @Mirascape and the travel to and from various conferences and Meetups lately.
  • [M]irascape. The augmented reality platform I'm responsible for.
  • [N]oxBot. A nice PHP-powered IRC bot with various plugins. A bit out of date, but very powerful. Been using it for a couple things lately.
  • [O]K, QR Me!. A QR Code-generating link shortener I built.
  • [P]ostmark. Best Email delivery service I've used. Nice RESTful API, flat rate for emails sent.
  • [Q]uora. These guys nail Q&A, and they're doing it pretty well. Check out all their buzz, too. But for some reason, I just don't stick.
  • Google [R]eader. “From your 1,040 subscriptions, over the last 30 days you read 21,549 items, clicked 274 items, starred 853 items, shared 37 items, and emailed 8 items.” -- </stats>
  • [S]erver Stats for Mirascape. Powered by Munin, it's how I keep track of the status and metrics of all my servers.
  • [T]witter. Not surprising. I love their webapp for my personal use, but own and manage at least five accounts using SplitTweet.
  • [U]serVoice. Pretty sweet tool I use for giving the communities I manage a good way to build a consensus on what they desire most. Examples I run: for RolePlayGateway, and EVE UserVoice for EVE Online.
  • Google [V]oice. Allows me to use SMS from my computer, read (as opposed to listen to) voicemail. Great tool. If only it supported MMS.
  • [W]achovia. One of the places I do banking.
  • [X]DA Developers. An indisposable resource for getting rid of carrier-installed crap and running my own choice of software on the hardware I purchased!
  • [Y]ouTube. Another big namer. No surprise.
  • [Z]ecco. Where I trade most of my public stocks. :)

Surprisingly populist, and there's a lot of Google-owned properties in there. I'm also using Chromium, so I think it prefers the roots of the sites I visit instead of searching through my history for individual pages.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

DMOZ In Danger? Not So Much, Says DMOZ Editor

DMOZ: Open DirectoryThere's been a lot of active discussion about the state of AOL's directory project, DMOZ. There have been many attempts to unseat the directory project from its position as the most authoritative listing resource, such as the Yahoo Directory. Many of these attempts have fallen by the wayside, as Rand Fiskin points out, but none have remained more controversial than DMOZ. More recently, Chris Crum's post on WebProNews about his lack of respect for DMOZ has stirred up a hornet's nest of DMOZ criticism, including a particular post claiming DMOZ is a waste of time.

I forwarded a lot of this on to Philip Nicolcev, known by username as "frug", who is the editor of several roleplay-oriented categories on DMOZ. He responded to me directly with a highly insightful email, and I was fortunate enough to receive his permission to share its contents.

I've been editing the pbp category at DMOZ for what... 4 years now? About that. This article is a big whiny complaint which misses the mark. They are both correct and sadly mistaken. Yes, dmoz is outdated and yes, it fails because of attitude problems, but not silly allegations of 'corruption' or people who are bitter because they didn't get listed. We don't list everything, I don't list even half of the submissions I get, and anyone who has been an administrator or an editor for a similar type of project knows better than to take these kinds of complaints seriously. One thing they say is definitely correct: Apply once carefully following their rules if you wish and then, as Will suggested, forget about them.

This is exactly the approach that should be modeled for any directory, regardless of its state or condition. When you are submitting a link to a directory, you are being offered the privilege to be listed as a resource by the owners and management of that directory. They are not obligated to list your link, let alone review it in a timely fashion--but this would be genuinely appreciated and would reflect on the directory's position as a "good" resource.

DMOZ is the primary source for Google's Directory, and you must respect the opinion of such a large and successful company. It's obvious that the idea behind an open directory like DMOZ is good, but where they fail is in execution. More on that later.

He continues:

That is what you should do. Apply once and forget about it, don't claim anybody is corrupt because whether you believe my opinion or not, there's no corruption. Nobody cares enough about dmoz anymore for it to be valuable for extortion. Don't be ridiculous. Furthermore if you were to speak to some of the senior editors you'd discover that they are pretty damn uptight, even obsessive. The problems with dmoz are, in my opinion, twofold. First off, you have the dated trashy look of the website which is a relic of the 1990's. It's not user friendly, it doesn't entice anyone to go browsing, and it hasn't adapted or added features that would help people understand the structure of the directory or find what they're looking for. The editor forums still use phpBB2, and you should see the editing panel. You wouldn't believe how dated this stuff is. Frankly it has needed an overhaul for years now.

I largely agree with him. The phpBB team deprecated the phpBB2 branch at the beginning of this year, ending support for the outdated platform. AOL would do well to do a complete overhaul of the site's design now that "Web 2.0" has come and gone (and I could reference posts all day on that) - and AOL has completely missed their opportunity to latch on and ride the wave.

Philip finishes his correspondance with the frightening truth that has been plaguing many post-Web2.0 sites and services:

The second problem, attitude, is partially the cause of the first problem. It's a stagnant atmosphere where nothing gets done and nobody gets listened to. They would rather leave a directory as a cluttered mess of garbage than risk breaking its structure by overhauling it. Fixing my category took me about two years before I had approval to restructure it, and I'm in a small niche category nobody pays much attention to. Since becoming an editor I have deleted about 60% of the outdated links listed. Had I not joined, they'd still be there cluttering things up with linkspam geocities pages from 10 years ago. So yeah, dmoz is failing, but not because of corruption or because some guy didn't get what he wanted. And, honestly, if the author of this article was applying to dmoz just to 'test how fair it was' then I'm glad they rejected him. Somehow they made the right decision because he's wasting their time.

And that's the exact problem - the DMOZ community has completely stagnated, which has resulted in the puddle of goop that the directory has become. In my personal opinion, I think that AOL could do a lot better job at community management (all reputation management aside) by setting up a more rigid structure of responsibility. The editors need to be held responsible for a timely review specified by their superiors, and there needs to be cross-checking of the editor's work by other qualified editors.

Is this another example of AOL's purchases being mismanaged and ultimately being forgotten, such as what many people claim is the case with ex-Nullsoft product WinAmp? Perhaps, but I think that remains to be seen. After all, even our favored Google took a questionable amount of time to convert phone-consolidation service GrandCentral to the new Google Voice after its 2007 acquisition. DMOZ was in fact originally a Netscape project, which then-strong AOL acquired in 1998. Since that acquisition, little has changed.

All said and done, DMOZ needs some love if it's going to survive as anything more than a relic of trust and authority in the Web 2.0 bubble. As Philip points out, it has both good and bad traits and deserves further attention, but it needs to be attention in (and from) the right direction. The questions remain; where has AOL been? What can be done about the editors (or lack thereof)? How can DMOZ be improved?

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.

Mac versus Linux

I had a pleasant conversation with a Mac fanboi, this morning.

(08:51:01 AM) Linux User: Do Macs come with an SSH server by default?
(08:51:12 AM) Mac User: bluh...huh?
(08:51:19 AM) Mac User: just woke up
(08:51:22 AM) Linux User: Oh, lol.
(08:51:26 AM) Linux User: Good morning, sunshine.
(08:51:30 AM) Mac User: lol
(08:51:40 AM) Linux User: I've been at work for an hour. ;P
(08:51:57 AM) Linux User: Anyways - does the default Mac have an SSH server?
(08:51:57 AM) Mac User: now...what are you babbling about?
(08:53:25 AM) Mac User: no, but ssh is supported for X11 apps
(08:54:22 AM) Mac User: ....x11 being the x window environment in the Mac OS
(08:54:47 AM) Linux User: Right.
(08:55:22 AM) Linux User: So - X11 applications can SSH to other locations?
(08:55:58 AM) Linux User: And - what's the Mac equivalent of a repository, and/or aptitude/apt-get/yum?
(08:56:01 AM) Mac User: I really don't know, I haven't messed with it
(08:56:12 AM) Mac User: what the fuck are those?
(08:56:46 AM) Linux User: I can go to the command line here, and say... "apt-get install " and it'll download and install that program from the repository.
(08:57:53 AM) Mac User: ...99% of Mac users don't go "Command-Line Commando" on their system....
(08:57:59 AM) Linux User: Also, if the program has any dependencies - it'll get those, too.
(08:58:00 AM) Mac User: so...enjoy that....
(08:58:11 AM) Linux User: Oh, it has a GUI, too.
(08:58:22 AM) Mac User: website?
(08:59:02 AM) Linux User: It's a core component, it doesn't particularly have its own site.
(08:59:22 AM) Linux User: Mac doesn't have an application finder and installer type thing?
(08:59:24 AM) Mac User: of what?
(08:59:27 AM) Mac User: no
(08:59:30 AM) Linux User: Weird.
(08:59:38 AM) Mac User: OMFG!!!! NO!!!! WHAT WILL I DO!???!?!?
(08:59:51 AM) Linux User: I was trying to install openssh-server on a friend's mac...
(08:59:57 AM) Mac User: y'all pc ppl always find the weirdest off-beat shit to pick at
(09:00:05 AM) Linux User: Mac's are PCs to, ho.
(09:00:16 AM) Linux User: Understand the word Personal Computer?
(09:00:21 AM) Mac User: uh, by the definition "personal computer" only
(09:00:38 AM) Linux User: PCs also don't have to run Microshaft.
(09:00:43 AM) Mac User: but be it known that a pc is a pc and a Mac is a Mac
(09:01:01 AM) Linux User: Considering Macs aren't "Macs" so much anymore, without the kooky PPC crap.
(09:01:10 AM) Mac User: ?
(09:01:42 AM) Linux User: They're regular PCs, now. I can install Windows on a Mac, I can install Plan9, MacOS, Linux.
(09:01:52 AM) Linux User: They don't use PPC anymore, right?
(09:02:05 AM) Mac User: you can't remove the Mac OS, though
(09:02:10 AM) Linux User: ...want to bet?
(09:02:13 AM) Mac User: yup
(09:02:16 AM) Mac User: go ahead
(09:02:20 AM) Linux User: LOL.
(09:02:31 AM) Mac User: remove the Mac OS, and then lemme know what you plan to do
(09:02:35 AM) Linux User: Anyways - MacBook pro - does it have more than one button?
(09:02:45 AM) Mac User: FUCK NO!!!!
(09:02:49 AM) Linux User: Alright, nevermind then.
(09:02:58 AM) Mac User: now, shoo
(09:02:59 AM) Linux User: I was going to buy one, because they're sexy.
(09:03:01 AM) Mac User: go buy a dell
(09:03:22 AM) Linux User: Dell is increasing their Linux support.
(09:03:23 AM) Linux User: :)
(09:05:19 AM) Mac User: that is to say that they now have some kind of linux support?
(09:05:52 AM) Linux User: They've always had Linux support, but it's been somewhat hidden.
(09:06:00 AM) Mac User: pphhhht
(09:06:12 AM) Linux User: They're increasing client awareness of the option, now.
(09:06:29 AM) Mac User: ya know, it really doesn't mean anything to me
(09:07:11 AM) Linux User: I was considering purchasing a Macbook and installing Ubuntu on it, for my laptop.
(09:07:25 AM) Mac User: I can run any other OS I want, should I happen to have a sudden drop in IQ, and my machine is pretty awesome.....so....
(09:07:55 AM) Mac User: why would you buy a Mac to run something you can run on a dell?
(09:08:01 AM) Mac User: why?
(09:08:04 AM) Linux User: Because Macs are sexier?
(09:08:08 AM) Linux User: I don't want an ugly dell.
(09:08:23 AM) Mac User: uh, yeah, and at least half the "sexier" is in the GUI
(09:08:28 AM) Linux User: Not at all.
(09:08:35 AM) Linux User: My GUI is 100% more teh sex.
(09:08:45 AM) Mac User: ......wow
(09:08:47 AM) Mac User: um
(09:08:48 AM) Linux User: http://www.youtube.com/watch?v=nzb3MSp82Vs
(09:08:49 AM) Mac User: no
(09:08:51 AM) Linux User: :)
(09:09:05 AM) Linux User: You can't install Beryl or even Compiz in MacOS, can you?
(09:09:46 AM) Mac User: ooh....pretty....gimmicks.....
(09:10:08 AM) Linux User: Oh, is there an equivalent of workspaces in MacOS?
(09:10:17 AM) Mac User: in Leopard, yeah
(09:10:24 AM) Linux User: That's this next version, right?
(09:10:30 AM) Mac User: yizzur
(09:10:34 AM) Linux User: Awesome.
(09:10:43 AM) Mac User: "Spaces"
(09:10:49 AM) Linux User: Lol.
(09:10:59 AM) Linux User: We Linux folk have had that for years.
(09:11:00 AM) Mac User: http://www.apple.com/macosx/leopard/spaces.html
(09:11:01 AM) Linux User: But anyways.
(09:11:15 AM) Mac User: again....I don't care, and you're the only one who noticed
(09:11:34 AM) Linux User: LOL. Awesome argument. :x
(09:11:43 AM) Mac User: I don't argue anymore
(09:12:03 AM) Mac User: If you've bigoted yourself into using PC
(09:12:10 AM) Mac User: s, thats ur own fault
(09:12:44 AM) Linux User: Well, if I can't "uninstall MacOS" - or heaven forbid, order it without MacOS, like I can order most PCs without any OS, for a significant price reduction...
(09:12:49 AM) Linux User: It's not worth getting a Dell.
(09:12:52 AM) Linux User: Or any "PC".
(09:13:02 AM) Linux User: Or an Apple, for that matter.
(09:13:08 AM) Linux User: Dell, I can do that with, though.
(09:13:17 AM) Linux User: I share your Microsuck hatred.
(09:13:18 AM) Linux User: I really do.
(09:13:23 AM) Mac User: you make that sound like a feature
(09:13:24 AM) Linux User: But I also hate MacOS with a passion.
(09:13:32 AM) Mac User: for no reason
(09:13:37 AM) Linux User: No, for full reason.
(09:13:42 AM) Mac User: there's 2 sides of the fight, dude
(09:13:46 AM) Linux User: It's a *nix OS, without all the good stuff.
(09:13:48 AM) Mac User: Apple, and mico$ith
(09:13:57 AM) Linux User: Then there's Linux. ;D
(09:14:05 AM) Linux User: We're not part of the fight, we've already won.
(09:14:06 AM) Mac User: you're out in the woods trying to be a nonconformist
(09:14:22 AM) Linux User: Not at all, actually, I started using Linux because most of my friends were.
(09:14:23 AM) Linux User: :/
(09:14:28 AM) Mac User: yeah, 2% market share. WOO HOO!!!!
(09:14:36 AM) Linux User: 55% of the server share. :/
(09:14:48 AM) Linux User: I think it's above 60, actually?
(09:14:58 AM) Mac User: http://www.apple.com/server/macosx/
(09:15:01 AM) Mac User: > you
(09:15:16 AM) Linux User: Why, exactly, would I run MacOS as a server? When I have Linux?
(09:15:23 AM) Linux User: You don't have a package manager (apt)
(09:15:40 AM) Linux User: apt-get install apache2 php mysql
(09:15:42 AM) Linux User: Done.
(09:15:48 AM) Mac User: you wouldn't
(09:15:58 AM) Mac User: and that's your business
(09:16:04 AM) Mac User: why are you talking to me again?
(09:16:20 AM) Mac User has signed off.

And that was him blocking me. Mac people really do think differently.

0 Replies

Replies are automatically detected from social media, including Twitter, Facebook, and Google+. To add a comment, include a direct link to this post in your message and it'll show up here within a few minutes.