<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>Albert Bori's Blog</title><link>http://www.albertbori.com:80/</link><description>Albert Bori's Blog</description><item><title>PlanetSide 2 Review</title><link>http://www.albertbori.com:80/planetside-2-review</link><description>&lt;p&gt;Consider this my official review: &lt;a href="http://www.planetside2.com" title="PlanetSide 2" target="_blank"&gt;This game is awesome&lt;/a&gt;! Read on, if you want to know a little more.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://store.steampowered.com/app/218230/" title="Steam Store" target="_blank"&gt;&lt;img src="/Media/Default/BlogPost/albert-bori-blog/planetside-2-review/planetside2.jpg" alt="PlanetSide 2 Terran Republic" width="600" height="360" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Definition&lt;/h2&gt;
&lt;p&gt;It's an MMO(kindof) FPS. The best way to describe it is that it's like Battlefield (combat), Halo (style and story) and World of Warcraft: Alterac Valley (objectives) combined.&lt;/p&gt;
&lt;p&gt;There are three factions to choose from, and the game setting is a massive open world where all 3 factions have a home base at the far ends. There is no PvE, just PvP. But let me clarify, it's more like a war-time PvP experience, where you're in a huge world littered with bases and capture points and (literally) hundreds of players on each side in tanks, airplanes and on foot. So to me, it feels more like a coop shooter than a PvP shooter (sometimes).&lt;/p&gt;
&lt;p&gt;The objective is to control as many bases and capture points as you can, as they increase your resource generation as well as other perks that improve your game-play.&lt;/p&gt;
&lt;p&gt;Killing other units and capturing bases gets you experience and "certification" points. Experience increases your rank (level) and certification points can be spent as a currency on better gear and new weapons for your class or preferred vehicle type.&lt;/p&gt;
&lt;p&gt;There are different classes to choose from, and you level each one individually. They are: Light Assault (jet packs), Heavy Assault, Max (think mech warrior), Engineer, Combat Medic and Infiltrator (sniper).&lt;/p&gt;
&lt;p&gt;Aside from the various ground troop classes, you can spawn vehicles and aircraft at bases, which you can use to help punch your way through the line, or hold a base that's under siege. The vehicles range from person ATV's, to tanks to planes and vehicles that can transport up to 20 people at a time.&lt;/p&gt;
&lt;p&gt;The game is free-to-play, with the option to purchase "Station credits" to spend on experience boost packs as well as the ability to buy any upgrades.&lt;/p&gt;
&lt;h2&gt;Review&lt;/h2&gt;
&lt;p&gt;When I first launched this game, they (literally) dropped me in a "hot zone" where I came out shooting right out of the pod. From what I could tell amidst mayhem, it was an attempt by one of the opposing factions to capture a large base. I was deployed on an upper level of the base and as I attempted to find a vantage point, while dodging tracer fire and explosions, I noticed that there were a number of tanks channeling in from between two mountains, and they were firing up at our level where there were anti-aircraft and anti-tank manned turrets. I could see a few tanks and troops on the ground that were keeping the encroachers pinned to the entry point. Just then, a shell exploded near me, downing 3 guys who were standing just feet away from me. This was immediately followed by an aircraft (the culprit) swooshing by. I ran for cover and started to see if I could make my way to the ground to help push back the tanks.&lt;/p&gt;
&lt;p&gt;As I reached the ground floor, I could more clearly see that there was a larger fire fight going on that I originally could make out. There were dozens of enemy troops trying to clear the way for the tanks to push through the pass. I engaged in the fire fight (ultimately favoring the Heavy Assault class), the rest was epic history, and I'm pretty much hooked on this game. It's the best large-scale PvP game I've played to date.&lt;/p&gt;
&lt;p&gt;You can download this game directly from &lt;a href="http://store.steampowered.com/app/218230/" title="Steam Store" target="_blank"&gt;Steam&lt;/a&gt;. It's about 8GB in size and runs natively on windows. (A &lt;a href="http://appdb.winehq.org/objectManager.php?sClass=application&amp;amp;iId=14466" title="Wine PlanetSide 2" target="_blank"&gt;wine version is in the works&lt;/a&gt;.)&lt;/p&gt;</description><pubDate>Sun, 25 Nov 2012 23:20:00 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/planetside-2-review</guid></item><item><title>The Death of Windows Gaming</title><link>http://www.albertbori.com:80/the-death-of-windows-gaming</link><description>&lt;p&gt;Don't be fooled by the propaganda and hype, Windows 8 is nothing but a marketing shift for Microsoft. And here's why...&lt;/p&gt;
&lt;h2&gt;Tablet Market&lt;/h2&gt;
&lt;p&gt;Since Microsoft has failed many times to create a standardized mobile device operating system and promote it to popularity, they are attempting to deliver one on the back of their biggest success: Windows 7. Windows 8 is nothing but Windows 7 with a tablet-esq UI baked in. (There are other minor tweaks to the operating system performance, but not enough to warrant a major software release.) Should you upgrade to Windows 8 for your personal PC? I think it's completely unnecessary considering that you aren't going to use the tablet UI, and the other features are trivial.&lt;/p&gt;
&lt;h2&gt;Taxing the Wealthy to Feed the Poor&lt;/h2&gt;
&lt;p&gt;Other than creating an embedded tablet friendly UI, Windows 8 was a marketing shift for Microsoft's software distribution model. They are creating a marketplace distribution platform akin to Apple's "App Store" where they take as much as 30% of each software sale from the software developers. This move was a strategic one to compete with Apple, who has been selling operating system upgrades for as little as $20. By pushing the cost of the operating system on the software developers, Microsoft will be able (and has already announced) a significantly cheaper price point for their future operating system titles and upgrades.&lt;/p&gt;
&lt;h2&gt;Revolt&lt;/h2&gt;
&lt;p&gt;Due to Microsoft's shift in distribution approach, game distribution companies such as Valve (Steam Platform), Blizzard (Battle.net platform), and EA (Origin) are in direct competition with Microsoft and have already voiced their dislike for Microsoft's move. As a result (or not, but I like conspiracies), &lt;a href="http://blogs.valvesoftware.com/linux/faster-zombies/" title="Valve's Blog for Linux Game Development" target="_blank"&gt;Valve has created a team of developers to work on standardizing gaming development for the linux platform.&lt;/a&gt;&amp;nbsp;If Valve's mission is successful, I see Linux becoming the new standard platform for gaming, removing (in my opinion) gaming as Microsoft's second largest asset.&lt;/p&gt;
&lt;h2&gt;Repercussions&lt;/h2&gt;
&lt;p&gt;This is where I make some assumptions and really run with them. Consider for a moment that Microsoft's #1 asset is business work stations, and that the majority of adult gamers are technical or related to software development in some way. With this in mind, consider that Linux's main drawback to home computing is their lack of native support for major gaming titles. Given those two facts, I predict that Linux will become the new home computing platform, pushed by support from software manufacturers who refuse to bow down to Microsoft's new distribution model. This will then trigger these technical gamers to be more interested in developing business software for the OS they are familiar with at home, thus toppling Microsoft's last major asset: Business workstation computing. And I haven't even mentioned enterprise servers because they are already dominated by linux for many reasons which I will not address here.&lt;/p&gt;
&lt;p&gt;I, for one, welcome our new linux gaming overlords.&lt;/p&gt;</description><pubDate>Tue, 28 Aug 2012 17:34:21 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/the-death-of-windows-gaming</guid></item><item><title>Intel SRT missing "Accelerate" button</title><link>http://www.albertbori.com:80/intel-srt-missing-accelerate-button</link><description>&lt;p&gt;If you're looking to figure out why Intel's RST (Rapid Storage Technology) isn't showing you the Intel (Smart Response Technology) "Accelerate" button, this article &lt;em&gt;might&lt;/em&gt; help you.&lt;/p&gt;
&lt;h2&gt;Specs&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;MSI Z68A-G43 (B3) Motherboad&lt;/li&gt;
&lt;li&gt;Core i5 2310 Processor&lt;/li&gt;
&lt;li&gt;4GB 1866MHz Memory&lt;/li&gt;
&lt;li&gt;64GB&amp;nbsp;Crucial M4 CT064M4SSD2&lt;/li&gt;
&lt;li&gt;WD Caviar Blue WD10EZEX 1TB 7200 RPM SATA 6.0Gb/s&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Problem&lt;/h2&gt;
&lt;p&gt;I had installed windows with the motherboard set to SATA: RAID MODE, installed all the mobo drivers and updated the intel chipset software from the website, then attempted to install Intel RST. Once intel RST was installed, the "Accelerate" button was missing. I could see both drives and all associated data between them.&lt;/p&gt;
&lt;p&gt;After spending about 12 hours troubleshooting the SRT installation process, installing windows multiple times in different configurations, messing with the motherboard SATA settings, trying to install different versions of the Intel RST Software (and associated raid drivers), updating firmware on the mobo and SSD, double/triple checking SRT compatability, I finally called MSI and told them that I had tried everything to get SRT to work.&lt;/p&gt;
&lt;h2&gt;Conclusion&lt;/h2&gt;
&lt;p&gt;Solution: None. It was a bad raid controller.&lt;/p&gt;
&lt;p&gt;So I RMA'd the board and the new one showed up. It still didn't work, but I updated the firmware on the replacement board and it worked properly after that. Latest version of the firmware at this time of writing is v2.3.&lt;/p&gt;
&lt;p&gt;I'm writing this because I could find nothing on the topic. I hope this helps someone with the same problem.&lt;/p&gt;</description><pubDate>Fri, 10 Aug 2012 20:26:33 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/intel-srt-missing-accelerate-button</guid></item><item><title>Free-to-Play or Free to Pay?</title><link>http://www.albertbori.com:80/free-to-play-or-free-to-pay</link><description>&lt;p&gt;In this article, I will delve deep into the business model of free-to-play video games. First off, "There's no such thing as a free lunch..." Now that we've got that out of the way, let's discuss some patterns and traits found in free-to-play video games.&lt;/p&gt;
&lt;h2&gt;If it's free-to-play, how can they afford to develop the game?&lt;/h2&gt;
&lt;p&gt;Well, as I said above, there's no such thing as free. Anyone selling you free has gotten the money to pay for it from someone else, or is planning on getting the money out of you later on. The latter is the driver for all the free-to-play video games that I know of. Free-to-play video games typically allow you to install and begin playing the video game without any purchase and sometimes, without any payment information on file. Once you install and start playing the game, they present you with options to use your real money to "enhance" your gaming experience.&lt;/p&gt;
&lt;h2&gt;Fake Currency&lt;/h2&gt;
&lt;p&gt;Most free-to-play video games create a virtual currency that exists within the game. This currency is then used for all the game "enhancing" features, and can be "exchanged" for your real money (dollars). They do this to obstruct your ability to equate the value of something in-game to real-world dollars by adding a level of abstraction. So instead of thinking, "Is this fun game feature worth $7.84", you think, "Is this fun game feature worth 80 super-rubies? ... I don't know, because I can't remember the super-rubies to dollars conversion..." It's completely legal and very understandable for a company to try to ease every loose penny out of your pocket. But I think it's downright dishonest to blind the player to the real-value they are getting and exactly how much they are spending. It's a dirty diversionary tactic.&lt;/p&gt;
&lt;h2&gt;Pricing Tiers&lt;/h2&gt;
&lt;p&gt;Once you decide that you can't continue to enjoy this game until you purchase some "super-rubies" (or other fake currency), you click the "get more" button next to the "super-rubies" price. What follows is complete disappointment. You land on a page where you can't buy the exact number of "super-rubies" that you need. You need 80 super-rubies, but there are only packages for 15 for $7.99, 75 for $27.99 or 150 for $49.99. See what they did there? You have to go through many hoops to buy the exact amount of things that you want. They do this on purpose to create the "# of hot dogs&amp;nbsp;vs. # of&amp;nbsp;hot dog buns in a package" conundrum. This is yet another tactic to get you to spend money, and hopefully (they think) to get you to buy more virtual currency to even things out. Not the most straight forward method to pay for "fun", is it?&lt;/p&gt;
&lt;h2&gt;Class Warfare&lt;/h2&gt;
&lt;p&gt;Another interesting situation that arises from the free-to-play games is the separation of real-world economic classes. Where premium games usually have a flat-rate subscription or box cost that is set specifically to get the most purchases from all classes, free-to-play games set the absolute "fun" status of their game with a higher price tag, allowing the wealthy to have more fun than the poor. One could argue that people can spend as much as they are comfortable, or argue that the upgrades do not effect gameplay, but when certain packages can cost in the hundreds of dollars and be spent immediately to boost a players progression, looks, and overall "fun", people who are poor or unwilling to spend that much are left with the short end of the stick. In such cases, it's very easy to see the difference between players who have a higher disposable income than those who don't, within the game.&lt;/p&gt;
&lt;h2&gt;Thinking of Ways to Inconvenience You&lt;/h2&gt;
&lt;p&gt;The goal that most free-to-play game creators share is to find things that entice you to pay. This is just as fine as the next idea, however, it almost always resorts to: "We built this really fun game. Now, how do we make it not as fun or convenient, so we can sell them convenience/fun?" Or in other words, how do we make the game suck enough to compel the player to pay for it to not suck. I think that's a down-right rotten mentality for game development, and any time you play a free-to-play game, you can feel the premeditated level of inconvenience they are inflicting upon you, all for the word "free".&lt;/p&gt;
&lt;h2&gt;Fad&lt;/h2&gt;
&lt;p&gt;In this age of freemium sites, software and games, I'm beginning to want to return to the old-fashioned model of just paying a fixed fee to play a game, be it a subscription or a box cost. "Premium" at least offers the comfort of knowing that you're getting the best that someone can do, for a price you can understand. That is "more fun" to me.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description><pubDate>Thu, 26 Jul 2012 01:00:00 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/free-to-play-or-free-to-pay</guid></item><item><title>MSBuild Error MSB4019 - MSBuildCommunityTasks</title><link>http://www.albertbori.com:80/msbuild-error-msb4019-msbuildcommunitytasks</link><description>&lt;p&gt;I came across the following error while attempting to compile a client's project using MSBuild. It took me a while to find out what I was missing.&lt;/p&gt;
&lt;p&gt;MSBuild Error:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets" was not found. Confirm that the path in the &lt;import&gt; declaration is correct, and that the file exists on disk.&lt;/import&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To fix this, you need to install &lt;a href="https://github.com/loresoft/msbuildtasks"&gt;loresoft's msbuildtasks&lt;/a&gt;, which is an open-source common build task library for .net.&lt;/p&gt;</description><pubDate>Fri, 18 May 2012 19:18:00 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/msbuild-error-msb4019-msbuildcommunitytasks</guid></item><item><title>Ajax Form Validation With HTML5</title><link>http://www.albertbori.com:80/ajax-form-validation-with-html5</link><description>&lt;p&gt;Html 5 is a beautiful thing. Especially when dealing with a lot of the annoyances of web development, like form validation. Below is a quick tutorial on how to submit a form using ajax, while taking advantage of the built-in browser form validation.&lt;br /&gt; &lt;br /&gt; First, we start off with a form:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt; &amp;lt;form id="form1" action="/MySite/NewPerson" method="post"&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;label&amp;gt;First Name&amp;lt;/label&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input name="fname" type="text" required /&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;label&amp;gt;Last Name&amp;lt;/label&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input name="lname" type="text" required /&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;label&amp;gt;Email&amp;lt;/label&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input name="email" type="email" required /&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;label&amp;gt;Phone&amp;lt;/label&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;input name="phone" type="tel" required pattern="^[\d]{3}-[\d]{3}-[\d]{4}$" /&amp;gt;&lt;br /&gt; &lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;button type="submit"&amp;gt;Submit&amp;lt;/button&amp;gt;&lt;br /&gt; &amp;lt;/form&amp;gt; &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt; By default, the above form will be validated by the native browser. If the browser is fully html5 compatable, it will show error messages on form fields that are not completed correctly, and prevent the form from being submitted without all the required fields in the correct format.&lt;/p&gt;
&lt;p&gt;But what if you want to submit the form via ajax? Well, you're in luck! You can leverage all of the built-in html5 form validation by overriding the submit event in javascript.&lt;br /&gt; &lt;br /&gt; Using jQuery:&lt;/p&gt;
&lt;pre&gt;&lt;code&gt; &amp;lt;script type="text/javascript"&amp;gt;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$("#form1").submit(function() {&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$.ajax({&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;type: "post",&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dataType: "",&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;url: "/MySite/NewPerson",&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;data: $("#form1").serialize(),&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;success: function(response) {&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;$("#form1").html(response);&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;});&lt;br /&gt; &amp;lt;/script&amp;gt; &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;br /&gt; The above snippet will allow the browser to continue with its default validation behavior. The submit event will not be triggered until the form validation requirements have been met.&lt;br /&gt; &lt;br /&gt; Win!!!&lt;br /&gt; &lt;br /&gt; Good Related Reads:&lt;br /&gt; &lt;a href="http://www.the-art-of-web.com/html/html5-form-validation/"&gt;Html5 form validation overview&lt;/a&gt;&lt;br /&gt; &lt;a href="http://perplexed.co.uk/5201_making_html5_form_backwards_compatible.htm"&gt;Backwards compatability for html5 form validation&lt;/a&gt;&lt;/p&gt;</description><pubDate>Thu, 19 Apr 2012 17:38:23 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/ajax-form-validation-with-html5</guid></item><item><title>Unable to load Steam Support Library</title><link>http://www.albertbori.com:80/unable-to-load-steam-support-library</link><description>&lt;p&gt;While attempting to host a Team Fotress 2 (TF2) server on one of my home computers, I ran into the following error after installing the server files:&amp;nbsp;"Unable to load Steam support library. This server will operate in LAN mode only."&lt;/p&gt;
&lt;p&gt;After hours of looking on the internet, to no avail, I discovered the solution by accident. I happened to have the steam client (game client files) installed on the same computer, so I decided to attempt to connect to the server by playing the game locally. So I launched the steam client, and it said it was out of date. I ran the steam client update as prompted, then everything worked after that.&lt;/p&gt;
&lt;p&gt;It seems that the hlds server utilizes the steam client libraries, and they have to both be latest revision. This only occurs when you attempt to install the steam server files on a computer that already has the steam client installed.&lt;/p&gt;
&lt;p&gt;After this dilemma, I moved my TF2 server to an amazon EC2 instance. I followed the installation instructions verbatim, and it worked the first time without problems. I did get some warning messages regarding the inability to start the steam service, but it did not affect the TF2 server.&lt;/p&gt;
&lt;p&gt;There you have it. I hope this helps someone!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Sat, 29 Oct 2011 22:04:52 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/unable-to-load-steam-support-library</guid></item><item><title>Adoption: A good cause</title><link>http://www.albertbori.com:80/adoption-a-good-cause</link><description>&lt;p&gt;Recently my sister Elena and her husband Mike have posted that they are looking to adopt a baby into their wonderful family.&lt;/p&gt;
&lt;p&gt;Although you will find a lot more, detailed information from their own &lt;a target="_blank" title="Good News Adoption - Mike and Elena" href="http://www.goodnewsadoption.com/2011/10/18/let-the-fun-begin/"&gt;blog and profile&lt;/a&gt;, I will say that if whoever is in need of an adopting family chooses Elena and Mike, they can be guaranteed the best life for their baby. Elena and Mike are wonderful people. They are respectable, loving, religious people of good principles and hearts of gold. I know this from first hand experience, being so close to them.&lt;/p&gt;
&lt;p&gt;They have already had the amazing opportunity of adopting a little girl almost two years ago, and are looking once again to bless the life of a child and mother in need.&lt;/p&gt;
&lt;p&gt;Please help me help them find a baby in need of a great family. Let your friends and family know, and link to their blog and profile where possible.&lt;/p&gt;
&lt;p&gt;Thanks!&lt;/p&gt;</description><pubDate>Wed, 19 Oct 2011 20:54:08 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/adoption-a-good-cause</guid></item><item><title>Italic, Bold and Underline Tags Don't Work</title><link>http://www.albertbori.com:80/italic-bold-and-underline-tags-don-t-work</link><description>&lt;p&gt;We recently ran into a problem on our newly designed website, in which all the &amp;lt;i&amp;gt;, &amp;lt;b&amp;gt;, &amp;lt;u&amp;gt; (italic, bold and underline) tags weren't working. They would all show plain text.&lt;/p&gt;
&lt;p&gt;After a lot of investigation, we came across this interesting item:&lt;/p&gt;
&lt;pre&gt;BODY * { font: 13px arial; }&lt;/pre&gt;
&lt;p&gt;The above css code appears to be just dandy, but there's a hidden problem. The &lt;a target="_blank" href="http://www.w3schools.com/cssref/pr_font_font.asp"&gt;"font" attribute&lt;/a&gt; has more parameters than two:&lt;/p&gt;
&lt;pre&gt;font: &lt;em&gt;font-style&lt;/em&gt; | &lt;em&gt;font-variant&lt;/em&gt; | &lt;em&gt;font-weight&lt;/em&gt; | &lt;em&gt;font-size/line-height&lt;/em&gt; | &lt;em&gt;font-family&lt;/em&gt;;&lt;/pre&gt;
&lt;p&gt;&lt;span&gt;Naturally, each of these parameters are optional. As with any overloaded method, if you don't specify a value, the optional parameters will be given a default value. In this case, if you only specify&amp;nbsp;&lt;/span&gt;&lt;em&gt;font-size/line-height&amp;nbsp;&lt;/em&gt;&lt;span&gt;and&amp;nbsp;&lt;/span&gt;&lt;em&gt;font-family&lt;/em&gt;&lt;span&gt;, then the others default to &lt;em&gt;none&lt;/em&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Since the CSS referenced at the top has the star selector (*), then what is specified within that CSS definition will cascade to all the elements nested within it.&lt;/p&gt;
&lt;p&gt;The solution to this problem is to use multiple attributes instead of the all-inclusive font attribute:&lt;/p&gt;
&lt;pre&gt;BODY *
{
    font-size: 13px; 
    font-family: arial;
}
&lt;/pre&gt;
&lt;p&gt;&lt;span&gt;The above CSS definition will set the &lt;em&gt;font-size&lt;/em&gt; and &lt;em&gt;family&lt;/em&gt; for all elements on a web page, but will leave &lt;em&gt;font-style&lt;/em&gt;, &lt;em&gt;variant&lt;/em&gt; and &lt;em&gt;weight&lt;/em&gt; to their browser-default values, which will allow&amp;nbsp;&lt;/span&gt;&amp;lt;i&amp;gt;, &amp;lt;b&amp;gt;, &amp;lt;u&amp;gt; (italic, bold and underline)&lt;span&gt;&amp;nbsp;tags to work as they should.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;That's it! I hope this helps someone out there on the internet.&lt;/p&gt;</description><pubDate>Tue, 30 Aug 2011 18:36:30 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/italic-bold-and-underline-tags-don-t-work</guid></item><item><title>Pre-Order SWTOR</title><link>http://www.albertbori.com:80/pre-order-swtor</link><description>&lt;p&gt;A couple of days ago, Star Wars: The Old Republic, a new MMORPG game based on George Lucas' creative genius, opened up for pre-orders. The game has been highly anticipated by the gaming community, myself included. Although I don't normally pre-order games, regardless of hype, I decided to pre-order this one. Here's why:&lt;/p&gt;
&lt;h2&gt;Back Story&lt;/h2&gt;
&lt;p&gt;I have been following this game for a long time, intrigued by the company's ability to keep you on pins and needles waiting to find out that next little morsel of unknown information about the game or its release date. After reading an interview of one of the employee's of BioWare, he mentioned that they have been working and reworking the release-plan of the game. That struck me as odd, considering the release-plan for other MMO's has just been, "Release it with a huge box-office sale, hope you have enough servers based on rough calculations, and hope the software holds up to the masses." I didn't put too much thought into what was said in that interview, because I assumed it was just talk, and they would follow the same pattern of other shaky MMO releases. I was wrong.&lt;/p&gt;
&lt;h2&gt;Pre-Ordered!!&lt;/h2&gt;
&lt;p&gt;When the pre-order was announced, I went on over to their website to check out the pre-order info (mostly hoping for a release date announcement). As I was reading through the pre-order puffery, I noticed an unusual sentence:&amp;nbsp;"The order in which you redeem your Pre-order Code is the order in which you will gain &lt;strong&gt;Early Game Access before the game&amp;rsquo;s official release&lt;/strong&gt;." (Bolded for emphasis, reference: &lt;a href="http://www.swtor.com/preorder" target="_blank"&gt;http://www.swtor.com/preorder&lt;/a&gt;) This set my wheels in motion! I immediately pre-ordered because just the thought of being able to play before the masses was enough to tip the scale of pre-order indifference. As I was pre-ordering I noticed an interesting "feature". The pre-order was queued! If you didn't get in "soon enough", you could actually not be able to pre-order in the "first round" if certain (un-mentioned) limits were exceeded.&lt;/p&gt;
&lt;h2&gt;Tiered Release?&lt;/h2&gt;
&lt;p&gt;At this point, I started to see the genius of their plan. They are actually doing a tiered release program! This way, they can release it in its post-beta phase to a &lt;em&gt;limited&lt;/em&gt; amount of its most dedicated players. After the initial round, they can view the effects of the increased usage, adjust the servers, adjust the software, and recalculate for the next release tier. Brilliant! This way, the eager players get what they want: SWTOR sooner, and BioWare gets what they want: A smooth, successful release.&lt;/p&gt;
&lt;h2&gt;After Thoughts&lt;/h2&gt;
&lt;p&gt;I could be wrong. I've just been speculating... After re-reading the "sooner you buy, sooner you play" text, I thought that they might just schedule each person's entry into the game in a constant flow, still allowing them to adjust/correct along the way. But what about the pre-order queue? I pre-ordered the digital copy and was given my code immediately, so it might only apply for the special editions that have a limited supply. Either way, I get to play the game before the release, and I'll bet my first in-game &lt;a href="http://starwars.wikia.com/wiki/Galactic_Credit_Standard" target="_blank"&gt;credit&lt;/a&gt; that the release will be smooth. Some would &lt;a href="http://www.mmocrunch.com/2011/07/23/why-im-not-pre-ordering-swtor/" target="_blank"&gt;disagree about the release quality&lt;/a&gt;, but I don't think "IT'S A TRAP!".&lt;/p&gt;
&lt;p&gt;Many Bothans died to bring us this information...&lt;/p&gt;</description><pubDate>Sat, 23 Jul 2011 19:04:50 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/pre-order-swtor</guid></item><item><title>Google Music Beta Review</title><link>http://www.albertbori.com:80/google-music-beta-review</link><description>&lt;p&gt;Yup! I was one of the lucky ones to get invited to use google music beta. As payment back to Google, I will do my best to summarize my experience and thoughts about google music to help you decide if it is the right music solution for you.&lt;/p&gt;
&lt;p&gt;&lt;a href="#tldr"&gt;TLDR&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Initial Impressions&lt;/h2&gt;
&lt;p&gt;A LOT simpler to configure and run than iTunes. After installing their local app, it grabbed my music and started hefting it up into space (the "cloud"). I'm not sure if it's just part of the music beta program, but they gave me a ton of free songs from the genre's I liked as well. Once it ran the first music scan, it opened up google music in my favorite browser (Chrome), and I could instantly see all the songs that were already uploaded (quite a few, and continuing to upload at break-neck speed in the background over my mediocrely-high-speed internet connection).&lt;/p&gt;
&lt;h2&gt;Songs&lt;/h2&gt;
&lt;p&gt;This view will remind you much of iTunes, but with a lot less clutter and a lot more common sense. It's easy to see which songs you like and how many times they've been played. You'll notice the gray bar at the bottom where the player controls are, including the ability to rate the current song.&lt;/p&gt;
&lt;p&gt;&lt;a href="/Media/Default/Images/GoogleMusicBeta.png" target="_blank"&gt;&lt;img src="/Media/Default/Images/GoogleMusicBeta.png" alt="Google Music Beta Songs View" width="544" height="402" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Artists&lt;/h2&gt;
&lt;p&gt;This view allows you to see all the artists you have, and some stats about what you own in your library. Again, super clean, super easy to read. Once you click on the artist of choice, it shows you a super clean view of each album you own for that artist, and the cooresponding songs.&lt;/p&gt;
&lt;p&gt;&lt;a href="/Media/Default/Images/GoogleMusicBeta-ArtistView.png" target="_blank"&gt;&lt;img src="/Media/Default/Images/GoogleMusicBeta-ArtistView.png" alt="Google Music Beta Artist View" width="544" height="402" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Albums&lt;/h2&gt;
&lt;p&gt;Much like the artist view, it shows you a summary of your albums with art covers, and when clicked, shows you the song detail for the selected album.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="/Media/Default/Images/GoogleMusicBeta-Albums.png"&gt;&lt;img height="402" width="544" alt="Google Music Beta Album View" src="/Media/Default/Images/GoogleMusicBeta-Albums.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Genres&lt;/h2&gt;
&lt;p&gt;Now, this is a cool feature. It sorts your music into their respective genres, and upon clicking each genre, it shows you all the songs for all the music that you own within that genre.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="/Media/Default/Images/GoogleMusicBeta-Genre.png"&gt;&lt;img height="402" width="544" alt="Google Music Beta Genres" src="/Media/Default/Images/GoogleMusicBeta-Genre.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Instant Mixes&lt;/h2&gt;
&lt;p&gt;This is one of the coolest features in Google Music. You click one song in your list of songs, then click the "+" button next to "Instant Mixes" and it creates a channel with all the songs that have the same musical qualities of the selected song. A personal library Pandora, if you will. Super awesome for creating your own mood channels.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="/Media/Default/Images/GoogleMusicBeta-InstantMix.png"&gt;&lt;img height="402" width="544" alt="Google Music Beta Instant Mix View" src="/Media/Default/Images/GoogleMusicBeta-InstantMix.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Playlists&lt;/h2&gt;
&lt;p&gt;This one is pretty standard. Works/looks just like iTunes.&lt;/p&gt;
&lt;h2&gt;Search&lt;/h2&gt;
&lt;p&gt;The search is absolutely perfect. What did you expect? It instantly gives you any matching artists, albums and songs from any page you are on. Very handy!&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="/Media/Default/Images/GoogleMusicBeta-Search.png"&gt;&lt;img height="264" width="544" alt="Google Music Beta Search Bar View" src="/Media/Default/Images/GoogleMusicBeta-Search.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Music Manager&lt;/h2&gt;
&lt;p&gt;This little beauty works hard behind the scenes to make sure that your Google Music Library is up to date with all of the music you own. Nice simple UI for managing the upload of your music.&lt;/p&gt;
&lt;p&gt;&lt;a target="_blank" href="/Media/Default/Images/GoogleMusicBeta-Manager.png"&gt;&lt;img height="404" width="544" alt="Google Music Beta Manager View" src="/Media/Default/Images/GoogleMusicBeta-Manager.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a id="tldr"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;Overall experience: 8/10&lt;/h2&gt;
&lt;h3&gt;Super Pros:&lt;/h3&gt;
&lt;p&gt;- No need to have a huge hard drive for your music, they keep all your music up in space&lt;br /&gt;- Streamable from *any device. (*They'll probably make clients for just about any OS as they finish things up, but it works right out of safari on my iPhone)&lt;br /&gt;- Instant Mixes. Creates a Pandora-like experience within your own library&lt;/p&gt;
&lt;h3&gt;Pros:&lt;/h3&gt;
&lt;p&gt;- Simpler and easier than iTunes&lt;br /&gt;- Powerful, ubiquitous (yup, I just used that word), instant search of songs, artists and albums within your own library&lt;br /&gt;- Powerful play list management&lt;/p&gt;
&lt;h3&gt;Cons:&lt;/h3&gt;
&lt;p&gt;- Expensive to stream over network devices (looking at you, AT&amp;amp;T)&lt;br /&gt;- Expensive for people with huge music libraries (extra storage must be purchased from Google)&lt;br /&gt;- Virtually no new music discovery tools. Unless this is something that's rolling out once Google has approval from the "labels"...&amp;nbsp;&lt;br /&gt;- Only one device at a time :(&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I hope you enjoyed this review, if you have any questions or requests, please indicate in the comments below. Thanks!&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Edit:&lt;/h2&gt;
&lt;p&gt;- I can't seem to find where the storage limit is. The only thing I can find is 20,000 maximum songs. (I won't have a problem with that...)&lt;br /&gt;- There does appear to be a streaming limit. I ran across an error message regarding that in their help section. Doesn't say what it is, though.&amp;nbsp;&lt;/p&gt;</description><pubDate>Wed, 22 Jun 2011 04:26:33 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/google-music-beta-review</guid></item><item><title>Happy Father's Day</title><link>http://www.albertbori.com:80/happy-fathers-day</link><description>&lt;p&gt;I know this is a day late, and a dollar short (Don't worry, I did call Dad and wish him a Happy Father's day), but I just wanted to share my favorite memory of him.&lt;/p&gt;
&lt;p&gt;Background:&lt;br /&gt;My Dad was a very busy guy. Too busy to go to my soccer games, or play sports with me, or take me to fun places (just for fun). So I got used to that as a kid, and spent most my time with him in a work environment helping him and learning the value of good work ethic. (Yea, I don't know what happened to the "good work ethic thing". I think I lost it somewhere in my mid 20's)&lt;/p&gt;
&lt;p&gt;Story:&lt;br /&gt;One day, when I was in elementary school, a call came through from the intercom in my classroom, "Mrs. [Teacher Name], can you send Albert to the office with his things, please?" My heart jumped. I recognized that call from when my mom had come to get me from school early a few times before, but those were just for dentist appointments or other non-exciting stuff.&lt;/p&gt;
&lt;p&gt;My mind started going through all the possibilities of why I would be picked up from school early. As I approached the office with my bookbag, I saw my dad in there. I'm pretty sure my mouth was hanging open at that moment. Why would my dad be picking me up in the middle of the school day? Was I in trouble for something? Was Mom too sick to take me to an unscheduled dentist appointment?&lt;/p&gt;
&lt;p&gt;Soon after, he told me that we were going camping, and that it was Father's and Son's Camping weekend with our church. If you could imagine what the happiest little boy in the world looked like... that's what I looked like. A weekend camping with my dad and my friends, getting out of school early, a cooler full of food packed by Mom. And a long drive to enjoy with my old man.&lt;/p&gt;
&lt;p&gt;I will always remember this day, and that camping trip. It is the best childhood memory I have.&lt;/p&gt;
&lt;p&gt;Thanks, Dad.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Mon, 20 Jun 2011 23:58:19 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/happy-fathers-day</guid></item><item><title>ASP.NET Redirect With Form Values</title><link>http://www.albertbori.com:80/asp.net-redirect-with-form-values</link><description>&lt;p&gt;As a web developer, every once in a while the need arises to redirect a user to a page as well as have the destination page know something about what happened on the previous page.&lt;/p&gt;
&lt;p&gt;In the world of ASP.NET Web Forms, this can be difficult due to most everything relying on the "Post Back Model".&lt;/p&gt;
&lt;p&gt;So what are the ways you can redirect a user to a page, and let that page know a little more about the user?&lt;/p&gt;
&lt;p&gt;1) Cookie - You can set a cookie, and expire it on the destination page. I don't like this because cookies are messy, and unless you're going to persist that cookie for more than one request, it's not really worth having cookie management for just that one redirect.&lt;/p&gt;
&lt;p&gt;2) Session - You could use built-in ASP.NET session, but like cookies, session is meant for values that are longer lived (the whole session), and you would have to manage that session variable as well.&lt;/p&gt;
&lt;p&gt;3) Query String - You could just tack on "?status=pending" to your url, but chances are you don't want the user to copy that url and paste it to his friends, therefore tricking the destination page to think that everyone has that same "status".&lt;/p&gt;
&lt;p&gt;4) Post values - You can't redirect AND send form values from your server code to your destination page. It just doesn't work like that. Response.Redirect() only sends a redirect message to the client that the page they are asking for is&amp;nbsp;temporarily&amp;nbsp;found at another destination.&lt;/p&gt;
&lt;p&gt;So how do you pass form values to a destination page that you want to redirect your user to?&lt;/p&gt;
&lt;p&gt;Like this:&lt;/p&gt;
&lt;pre style="overflow: scroll;"&gt;&lt;code&gt;
public void RedirectWithFormValues(string redirectURL, Dictionary&amp;lt;string, string&amp;gt; formValues)
{
	//note: The weird use of string concatenation here is mostly for readability

	string redirectFormHTML = @"
&amp;lt;html&amp;gt;
&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;
&amp;lt;body onload=""document.getElementById('redirectForm').submit()""&amp;gt;
	&amp;lt;form id=""redirectForm"" action=""{0}""  method=""post""&amp;gt;{1}&amp;lt;/form&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;";

	System.Text.StringBuilder sbFormValues = new System.Text.StringBuilder();

	foreach (KeyValuePair&amp;lt;string, string&amp;gt; formValue in formValues)
	{
		sbFormValues.Append(String.Format("&amp;lt;input type=\"hidden\" name=\"{0}\" id=\"{0}\" value=\"{1}\" /&amp;gt;", formValue.Key, formValue.Value));
	}

	Response.Clear();
	Response.Write(String.Format(redirectFormHTML, redirectURL, sbFormValues.ToString()));
	Response.End();
}
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;This method allows you to send form values to a page that you want to redirect the user to. It works much like Response.Redirect(), in that the user's browser has to ask twice. But in this way, instead of sending a redirect response, it sends a normal response on it with nothing but a form, some values, and some javascript that automatically submits the form to the desired page.&lt;/p&gt;
&lt;p&gt;Usage of the above method looks like this:&lt;/p&gt;
&lt;pre style="overflow: scroll;"&gt;&lt;code&gt;
Dictionary&amp;lt;string, string&amp;gt; formValues = new Dictionary&amp;lt;string,string&amp;gt;();
formValues.Add("test", "I passed this value along!");
this.RedirectWithFormValues("destination.aspx", formValues);
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Disadvantages:&lt;/p&gt;
&lt;p&gt;1) There is a little bit of a client delay on the users browser. In cases of slow internet connections or client computers, this delay can be a little bit longer than desired for a simple redirect.&lt;/p&gt;
&lt;p&gt;2) Back button sadness. If you try to use the back button, you will just be redirected back to the destination page.&lt;/p&gt;
&lt;p&gt;3) Refresh button sadness. If you refresh the destination page, it will warn you that your refresh will resubmit the form, which can be confusing to users who may not have filled out a form prior to the redirect.&lt;/p&gt;
&lt;p&gt;As with any complicated, rule bending fix... There&amp;nbsp;definitely&amp;nbsp;are better ways to accomplish this. Those usually involve rethinking your user experience to work better with your tool set, and be more straight forward with the user. But as all of you developers know, time is always short, and sometimes these solutions are necessary. We can always go back and refactor, right? :P&lt;/p&gt;</description><pubDate>Thu, 16 Jun 2011 23:28:35 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/asp.net-redirect-with-form-values</guid></item><item><title>Portal 2 Quotes: Wheatley</title><link>http://www.albertbori.com:80/portal-2-quotes-wheatley</link><description>&lt;p&gt;Wheatley is a new personality introduced to the Portal story in Portal 2. He serves as your amiable, yet stupid guide and/or side-kick during the beginning of Portal 2. SPOILER ALERT! If you read the following quotes, you'll find out what happens to him (and you) later on in the game. The following is a list of Wheatley's quotes in Portal 2.&lt;/p&gt;
&lt;h2&gt;Wheatley&lt;/h2&gt;
&lt;p&gt;"Come on, you've already solved it once!&amp;nbsp;Less than a minute ago, you solved this puzzle. Do it again, please. One minute ago. LESS than one minute ago, you solved this puzzle. NOW you're having problems. You just beat this test! Literally 20 seconds ago. [cough] button.&amp;nbsp;[cough]utton.&amp;nbsp;[cough]res the button. Alright, can't blame you for trying."&lt;/p&gt;
&lt;p&gt;"OK! New tests... new tests... gotta be some tests around here somewhere. Ah, here we go! Aaaaaaaaaaaaand... nothing!?"&lt;/p&gt;
&lt;p&gt;"Ooh, that felt really good!"&lt;/p&gt;
&lt;p&gt;"Here's an idea. Since making tests is so difficult, why don't you keep solving THIS test!? Same one! And I can just... watch you solve it! Yea, that sounds much easier."&lt;/p&gt;
&lt;p&gt;"OK, look, I've decided that I'm NOT going to kill you... ok... IF you come back... Can't help but notice that... youre not coming back. You're just dissapointing. Aww... Just thinking back to the old times... the old days when we were friends, good old friends. Not enemies! And I would say something like 'come back'! And you'd be like 'yep! no problem.' and you'd come back! What happened to those days?&amp;nbsp;Do you remember when we were friends? Awww, friendship... friendly times. We used to-we had a lot of good times, remember? Back in the old days? Oh, I've got an idea! Oooo, no no no, don't do that, stand right here! Stand right here. Start the machine, start the machine start the machiiiiine... Hullo! This is the part where I kill you! Surpriiiiize! We're doing it now!"&lt;/p&gt;
&lt;p&gt;"You've probably figured out by now, that I don't need you any more!"&lt;/p&gt;
&lt;p&gt;"Could you just-could you just jump into that pit? There? That deadly pit? You're saying to yourself, 'why should I jump into the pit?' I'll tell you why. Guess who's down there!? Your parents! You're not adopted after all. It's your natural parents, down there in the pit. Should've mentioned it before, but I didn't. So, jump on down... and reunite... with mommy and daddy. Oh, I'll tell you what's also down there... your parents! And there's also an escape elevator... down there... funny... I should have mentioned it before, but somebody's down there... so&amp;nbsp;pop down-jump down. You got your folks down there... and an escape elevator. And... what else is down there... tell you what, it's only a new jump suit! A very trendy... designer... jump from France... down there... which is exactly your size and if it's a bit baggy, we got a tailor down there as well who can take it in for you. What's this!? A lovely hand-bag!? And... the THREE portal device, also down-it's all down in there! Um... you got a yacht and... BOYS! Loads of boys! Fellas! Hunky guys down there, possibly even a boy friend! Who's to say, you're not sure at this stage."&lt;/p&gt;
&lt;p&gt;"Coming! Coming! Don't start yet!"&lt;/p&gt;
&lt;p&gt;"You won't believe this, I found a sealed off wing. Hundreds - HUNDREDS! of perfectly good test chambers. Just sitting there filled with skeletons. Shook them out. Good as new!"&lt;/p&gt;
&lt;p&gt;"Annnnnnnnd... THERE we go!&amp;nbsp;Be honest. You can't even tell, can you? Seamless."&lt;/p&gt;
&lt;p&gt;"Alright. So that last test was... seriously disappointing. Apparently being civil isn't motivating you. So let's try things her way... fatty. Adopted fatty. Fatty fatty no-parents."&lt;/p&gt;
&lt;p&gt;"What's wrong with being adopted? Um. Well... lack of parents for one, and... also... furthermore... nothing. Some of my best friends are orphans... But..."&lt;/p&gt;
&lt;p&gt;"I AM NOT! A MORON! Just... do the test! Just do the test."&lt;/p&gt;
&lt;p&gt;"It's not enough! If I'm such a moron, why can't you solve a simple test?"&lt;/p&gt;
&lt;p&gt;"[sound of pages turning] Oh, sorry. Hope that didn't disturb you just then. It was the sound of books. Pages being turned... So that's just what I was doing. I was just reading... ah... books. So I'm not a moron... Anyway. Just finished the last one. The hardest one. Machiavelli. Do not know what all the fuss was about. Understood it perfectly. Have you read that one? [GLaDOS: "Yes."] Yea, doubt it. Well, on with the tests. Wish there was more books! But there's not."&lt;/p&gt;
&lt;p&gt;See also:&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-glados"&gt;Portal 2 Quotes: GLaDOS&lt;/a&gt;&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-cave-johnson"&gt;Portal 2 Quotes: Cave Johnson&lt;/a&gt;&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-turret"&gt;Portal 2 Quotes: Turret&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Wed, 08 Jun 2011 05:56:18 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/portal-2-quotes-wheatley</guid></item><item><title>Portal 2 Quotes: Turret</title><link>http://www.albertbori.com:80/portal-2-quotes-turret</link><description>&lt;p&gt;The (in)famous turret from Portal and Portal 2 has a personality of its own. Despite its deadly aim and round throughput, it's quite polite and serves as an additional comic relief in the game. Below is a list of quotes from the turret character in the game Portal 2.&lt;/p&gt;
&lt;h2&gt;Turret&lt;/h2&gt;
&lt;p&gt;"Deploying!"&lt;/p&gt;
&lt;p&gt;"Searching!"&lt;/p&gt;
&lt;p&gt;"Are you still there?"&lt;/p&gt;
&lt;p&gt;"Thank you!"&lt;/p&gt;
&lt;p&gt;"Get mad!"&lt;/p&gt;
&lt;p&gt;"Don't make lemonade.&amp;nbsp;Promethius was punished by the gods for giving the gift of knowledge to man. He was cast into the bowels of the earth and pecked by birds. Remember that. That's all I can say. Don't forget. It won't be enough. The answer is beneath us. Her name is Carolyn."&lt;/p&gt;
&lt;p&gt;"I don't understand! I did everything you asked!"&lt;/p&gt;
&lt;p&gt;"Why!?"&lt;/p&gt;
&lt;p&gt;"Hello!"&lt;/p&gt;
&lt;p&gt;"Target aquired."&lt;/p&gt;
&lt;p&gt;"Dispensing product."&lt;/p&gt;
&lt;p&gt;"Firing."&lt;/p&gt;
&lt;p&gt;"Hello, friend"&lt;/p&gt;
&lt;p&gt;"Gotcha!"&lt;/p&gt;
&lt;p&gt;"There you are!"&amp;nbsp;&lt;/p&gt;
&lt;p&gt;"I see you!"&lt;/p&gt;
&lt;p&gt;"Canvasing."&lt;/p&gt;
&lt;p&gt;"Sentry mode activated."&lt;/p&gt;
&lt;p&gt;"Is anyone there?"&lt;/p&gt;
&lt;p&gt;"Could you come over here?"&lt;/p&gt;
&lt;p&gt;"Coming through!"&lt;/p&gt;
&lt;p&gt;"Excuse me!"&lt;/p&gt;
&lt;p&gt;"Sorry!"&lt;/p&gt;
&lt;p&gt;"My fault!"&lt;/p&gt;
&lt;p&gt;"Preparing to dispense product."&lt;/p&gt;
&lt;p&gt;"Activated!"&lt;/p&gt;
&lt;p&gt;"There you are."&lt;/p&gt;
&lt;p&gt;"Who's there?"&lt;/p&gt;
&lt;p&gt;"Critical error."&lt;/p&gt;
&lt;p&gt;"Sorry, we're closed."&lt;/p&gt;
&lt;p&gt;"Shutting down."&lt;/p&gt;
&lt;p&gt;"I don't blame you."&lt;/p&gt;
&lt;p&gt;"I don't hate you."&lt;/p&gt;
&lt;p&gt;"No hard feelings."&lt;/p&gt;
&lt;p&gt;"Hey. Put me down."&lt;/p&gt;
&lt;p&gt;"Illegal operation."&lt;/p&gt;
&lt;p&gt;"Who are you?"&lt;/p&gt;
&lt;p&gt;"Hey. Please put me down."&lt;/p&gt;
&lt;p&gt;"Help!"&lt;/p&gt;
&lt;p&gt;"Uh oh!"&lt;/p&gt;
&lt;p&gt;"But I need to protect the humans!"&lt;/p&gt;
&lt;p&gt;"Goodbye."&lt;/p&gt;
&lt;p&gt;"Sleep mode activated."&lt;/p&gt;
&lt;p&gt;"Your business is appreciated."&lt;/p&gt;
&lt;p&gt;"Hybernating."&amp;nbsp;&lt;/p&gt;
&lt;p&gt;"Good night."&lt;/p&gt;
&lt;p&gt;"Resting."&lt;/p&gt;
&lt;p&gt;"Nap time."&lt;/p&gt;
&lt;p&gt;"Are you still there?"&lt;/p&gt;
&lt;p&gt;"Target lost."&lt;/p&gt;
&lt;p&gt;"Can I help you?"&lt;/p&gt;
&lt;p&gt;"Searching."&lt;/p&gt;
&lt;p&gt;"Hey! It's me! Don't shoot!"&lt;/p&gt;
&lt;p&gt;"Stop shooting!"&lt;/p&gt;
&lt;p&gt;"Self test error."&lt;/p&gt;
&lt;p&gt;"Unknown error."&lt;/p&gt;
&lt;p&gt;"Malfunctioning."&lt;/p&gt;
&lt;p&gt;"Wheee!"&lt;/p&gt;
&lt;p&gt;"I'm afraid of heights!"&lt;/p&gt;
&lt;p&gt;"Noooo!"&lt;/p&gt;
&lt;p&gt;"I'm scared!"&lt;/p&gt;
&lt;p&gt;"Hurray!"&lt;/p&gt;
&lt;p&gt;"Glorious freedom!"&lt;/p&gt;
&lt;p&gt;"I'm flying!"&lt;/p&gt;
&lt;p&gt;"Come closer!"&lt;/p&gt;
&lt;p&gt;"Something's wrong."&lt;/p&gt;
&lt;p&gt;"What are you doing?"&lt;/p&gt;
&lt;p&gt;"Failure."&lt;/p&gt;
&lt;p&gt;"Ow!"&lt;/p&gt;
&lt;p&gt;"It burns."&lt;/p&gt;
&lt;p&gt;"I'm on fire."&lt;/p&gt;
&lt;p&gt;"Please stop."&lt;/p&gt;
&lt;p&gt;"You've made your point."&lt;/p&gt;
&lt;p&gt;"Ok, you win."&lt;/p&gt;
&lt;p&gt;"This is not good."&lt;/p&gt;
&lt;p&gt;"Can't breathe."&lt;/p&gt;
&lt;p&gt;"Excuse me, you're squishing me."&lt;/p&gt;
&lt;p&gt;"Help! Being squished!"&lt;/p&gt;
&lt;p&gt;"I'm different!"&lt;/p&gt;
&lt;p&gt;"Thanks anyway."&lt;/p&gt;
&lt;p&gt;"Take me with you."&lt;/p&gt;
&lt;p&gt;"Good shot!"&lt;/p&gt;
&lt;p&gt;"Well done!"&lt;/p&gt;
&lt;p&gt;"I need back up."&lt;/p&gt;
&lt;p&gt;"You have excellent aim!"&lt;/p&gt;
&lt;p&gt;"I never liked her."&lt;/p&gt;
&lt;p&gt;"These things happen."&lt;/p&gt;
&lt;p&gt;"That was nobody's fault."&lt;/p&gt;
&lt;p&gt;"She was provoking you."&lt;/p&gt;
&lt;p&gt;"Oh dear."&lt;/p&gt;
&lt;p&gt;"Oh my!"&lt;/p&gt;
&lt;p&gt;"I blame myself."&lt;/p&gt;
&lt;p&gt;"I probably deserved it."&lt;/p&gt;
&lt;p&gt;"I saw it... it was an accident!"&lt;/p&gt;
&lt;p&gt;"She's probably ok."&lt;/p&gt;
&lt;p&gt;"Noted."&lt;/p&gt;
&lt;p&gt;See also:&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-glados"&gt;Portal 2 Quotes: GLaDOS&lt;/a&gt;&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-wheatley"&gt;Portal 2 Quotes: Wheatley&lt;/a&gt;&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-cave-johnson"&gt;Portal 2 Quotes: Cave Johnson&lt;/a&gt;&lt;/p&gt;</description><pubDate>Wed, 08 Jun 2011 05:55:43 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/portal-2-quotes-turret</guid></item><item><title>Portal 2 Quotes: Cave Johnson</title><link>http://www.albertbori.com:80/portal-2-quotes-cave-johnson</link><description>&lt;p&gt;Cave Johnson is a personality in Portal 2 who once ran the mysterous labrynth of testing chambers and facilities. He's a reckless, shoot-from-the-hip type who's character adds so much to the game. Below are all his quotes from Portal 2.&lt;/p&gt;
&lt;h2&gt;Cave Johnson&lt;/h2&gt;
&lt;p&gt;"They say great science is built on the shoulders of giants. Not here. At Aperture, we do all our science from scratch, no hand holding."&lt;/p&gt;
&lt;p&gt;"Science isn't about 'why', it's about 'why not'!"&lt;/p&gt;
&lt;p&gt;"Why is so much of our science dangerous? Why not marry safe science, if you love it so much. In fact, why not invent a special safety door that won't hit you on the butt on the way out. Because you are fired! Yes, you, box your stuff! Out the front door! Parking lot! Car! Goodbye!&amp;nbsp;Not you, test subject, you're doing fine."&lt;/p&gt;
&lt;p&gt;"If you're hearing this, it's because you're taking long time on the catwalks between tests. The lab boys say that might be a fear reaction. I'm no psychiatrist, but coming from a bunch of egg heads who wouldn't recognize the thrill of danger if it walked up and snapped their little pink bras, that sounds like projection. They didn't fly into space, storm a beach or bring back the gold! No sir, we did!"&lt;/p&gt;
&lt;p&gt;"It's you and me against the world son. I like your grit! Hustle could use some work, though. Now let's solve this thing!"&lt;/p&gt;
&lt;p&gt;"I'm telling them, keep your pants on!"&lt;/p&gt;
&lt;p&gt;"Alright, this next test may involve trace amounts of time travel. So, word of advice, if you meet yourself on the testing track, don't make eye contact. Lab boys tell me that will wipe out time... entirely... forward and backward. So, do both of yourselves a favor and let that handsom devil go about his business."&lt;/p&gt;
&lt;p&gt;"Ha! I like your style! You make up your own rules, just like me. Bean counter said I couldn't fire a man just for being in a wheel chair. Did it anyway! Ramps are expensive!"&lt;/p&gt;
&lt;p&gt;"Welcome, gentlemen, to apurture science. Astronaughts, war heros, olympians... you're here because we want the best, and you are it. So, who is ready to make some science!? Haha! Now, you've already met one another on the limo ride over, so let me introduce myself. I'm cave Johnson. I own the place. That eager voice you heard is the lovely Carolyn, my assistant. Rest assured that she has transferred your honorarium to the organization of your choice. Isn't that right, Carolyn. [Carolyn] She's the backbone of this facility. Pretty as a post card, too! Sorry fellas, she's married... to science!"&lt;/p&gt;
&lt;p&gt;"Congratulations! The simple fact that you're standing here listening to me means that you've made a glorious contribution to science."&lt;/p&gt;
&lt;p&gt;"As founder and CEO of Aperture Science, I thank you for your participation and hope we can count on you for another round of tests."&lt;/p&gt;
&lt;p&gt;"We're not going to release this stuff until it's good and darn ready, so as long as you keep yourself in top physical form, there will always be a limo waiting for you."&lt;/p&gt;
&lt;p&gt;"Say goobye, Carolyn. [Carolyn] She is a gem."&lt;/p&gt;
&lt;p&gt;"Alright, lets get started! This first test involves something the lab boys call repulsion gel. You're not part of the control group, by the way. You get the gel. The last poor son of a gun got blue paint! Hahaha... All joking aside, that did happen... broke every bone in his legs... tragic, but informative! Or, so I'm told."&lt;/p&gt;
&lt;p&gt;"We haven't entirely nailed down what element it is yet, but I'll tell you this... It's a lively one, and it does not like the human skeleton. Oh, in case you got covered in the repulsion gel, here's some advice the lab boys gave me... Do not get covered in the repulsion gel."&lt;/p&gt;
&lt;p&gt;"The lab boys have just informed me that I should not have mentioned the control group."&lt;/p&gt;
&lt;p&gt;"They're telling me I oughta stop making these pre-recorded messages. That gave me an idea. Make more pre-recorded messages! I pay the bills here, I can talk about the control group all darn day!"&lt;/p&gt;
&lt;p&gt;"There's a thousand tests performed every day here in our enrichment spheres. I can't personally oversee every one of them, so these prerecorded messages will cover any questions you might have and respond to any incidents that may occur within the course of your science adventure."&lt;/p&gt;
&lt;p&gt;"Your test assignment will vary depending on the manner in which you have bent the world to your will."&lt;/p&gt;
&lt;p&gt;"Those of you helping us test the repulsion gel today must follow the blue line on the floor."&lt;/p&gt;
&lt;p&gt;"Those of you who volunteered to be injected with praying mantis DNA... I've got some good news and some bad news... The bad news is, we're postponing those tests indefinitely. The good news is, we've got a much better test for you. Fighting an army of mantis-men. Pick up a rifle and follow the yellow line. You'll know when the test starts."&lt;/p&gt;
&lt;p&gt;"The average human male is about 60% water. As far as we're concerned, that's a little extravagant. So if you feel a little dehydrated in this next test, that's normal. We're going to hit you with some jet engines and see if we can't get you to 20 or 30 precent."&lt;/p&gt;
&lt;p&gt;"For this next test, we put nano-particles in the gel. In Laymans terms, that's a billion little gizmos that are going to travel into your bloodstream and pump expiremental genes and RNA molecules, and so forth, into your tumors. Now, maybe you don't have any tumors. Well, don't worry. If you sat on a folding chair in the lobby and weren't wearing lead underpants, we took care of that too."&lt;/p&gt;
&lt;p&gt;"If you've cut yourself in the course of this test, you might notice that your blood is pure gasoline. That's normal. We've been shooting you with an invisible lazer that's supposed to turn blood into gasoline. So all that means is it's working."&lt;/p&gt;
&lt;p&gt;"Just a heads up, that coffee we gave you earlier had flourescent calcium in it so we can track the neuronal activity in your brain. There's a slight chance the calcium could harden and vitrify your frontal lobe. Anyway, don't stress yourself thinking about it. I'm serious... Visualizing the scenario while under stress actually triggers the reaction."&lt;/p&gt;
&lt;p&gt;"All these science spheres are made of asbestos, by the way... keeps out the rats. Let us know if you feel a shortness of breath, a persistant dry cough or your heart stopping. Because, that's not part of the test... That's asbestos. The good news is the labs boys say the symptopms of asbestos poisoning show median latecy of 44.6 years. So if you're 30 or older, you're laughing. Worst case scenario you miss out on a few rounds of Canasta. Plus, you've forwarded the cause of science by 3 centuries. I punch those numbers into my calculator, it makes a happy face."&lt;/p&gt;
&lt;p&gt;"If you need to go to the bathroom after this next series of tests, please let a test associate know, because in all likelyhood, whatever comes out of you is going to be coal. Only temporary, so do not worry. If it persists for a week, though, start worrying and come see us because... that's not supposed to happen."&lt;/p&gt;
&lt;p&gt;"Just a heads up, we're going to have a super conductor turned up full blast and pointed at you for the duration of this next test. I'll be honest, we're throwing science at the wall here to see what sticks. No idea what it will do. Probably nothing. Best case scenario, you might get some super powers. Worst case, some tumors, which we'll cut out."&lt;/p&gt;
&lt;p&gt;"If you're allergic to peanuts, you might want to tell somebody now, because this next test may turn your blood into peanut water for a few minutes. On the bright side, if we can make this happen, they're going to have to invent a new nobel prize to give us, so hang in there."&lt;/p&gt;
&lt;p&gt;"Now, if you're part of control group Keplar 7, we inmplanted a tiny microchip about the size of a post card into your skull. Most likely you've forgotten it's even there. But, if it start vibrating and beeping during this next test, let us know. Because that means it's about to hit 500 degrees so we're going to need to go ahead and get that out of you pretty fast."&lt;/p&gt;
&lt;p&gt;"Alright, we're working on a little teleporation experiment now, this doesn't work with all skin types, so try to remember which skin is yours and if it doesn't teleport along with you, well, we'll do the what we can to sew you right back into it. Right."&lt;/p&gt;
&lt;p&gt;"Now, you might be asking yourself, 'Cave, just how difficult are these tests? What was in that phone book of a contract I signed? Am I in danger?" Let me answer those questions with a question. Who wants to make 60 dollars!? Cash.&amp;nbsp;You can also feel free to relax for up to 20 minutes in the waiting room. Which is a darn side more comfortable than the park benches most of you were sleeping on when we found you. For many of you I realize that 60 dollars is an unprecedented windfall, so don't go spending it all on... I dunno, Carolyn, what do these people buy? Taddered hats? Beard dirt?"&lt;/p&gt;
&lt;p&gt;"So, welcome to Aperture, you're here because we want the best, and you're it... nope, couldn't keep a straight face. Anyway, don't smudge up the glass down there. In fact, why don't you just go ahead and not touch anything unless it's test related."&lt;/p&gt;
&lt;p&gt;"Greetings friend! I'm Cave Johnson, CEO of Aperture Science. You might know us as a vital participant in the 1968 senate hearings on missing astronaights, and you've most likely used one of the many products we invented, but that some other people have somehow managed to steal from us... Black Mesa can eat my bankrupt..."&lt;/p&gt;
&lt;p&gt;"Thank you! (I can't believe I'm thanking these people") for staggering your way through Aperture Sciences propulsion gel testing. You've made some real contributions to society (for a change) and for that, humanity is grateful. If you had any belongings, please pick them up now. We don't want old newspapers and sticks cluttering up the building."&lt;/p&gt;
&lt;p&gt;"This on? [tap tap tap] Hey! Listen up down there! That thing is called an elevator, not a bathroom."&lt;/p&gt;
&lt;p&gt;"Great job astronaught, war hero and/or olympian, with your help we're going to change the worl... [record scratch]&amp;nbsp;The testing area is just up ahead. The quicker you get through, the quicker you'll get your 60 bucks"&lt;/p&gt;
&lt;p&gt;"Carolyn, are the compensation vouchers ready?"&lt;/p&gt;
&lt;p&gt;"If you're interested in an additional 60 dollars, flag down a test associate and let 'em know. You could walk outa here with 120 weighing down your bindle if you let us take you apart, put some science stuff in ya, then put you back together, good as new."&lt;/p&gt;
&lt;p&gt;"In case you're interested, there's still some positions available for that bonus opportunity I mentioned earlier. Again, all you gotta do is let us dissassemble you. We're not banging rocks together here, we know how to put a man back together. So, that's a complete reassembly. New vitals, spit shine on the old ones. Plus we're scooping out tumors. Frankly, you should be paying us."&lt;/p&gt;
&lt;p&gt;"Welcome to the enrichment center. [sick cough] Since making test participation mandatory for all employees. The quality of our test subjects has risen dramatically. Employee retention, however, has not. [sick cough] As a result, you may have heard that we are going to phase out human testing. There's still a few things to wrap up, though. First up, conversion gel. [sick cough] The bean counters told me we iterally could not afford to buy 7 dollars worth of moon rocks much less 70 million. Bought 'em anyway, ground them up, mixed them into a gel... and guess what! Ground up moon rocks are pure poison! I am deathly ill. Still, it turns out that they are a great portal conductor. So now, we're going to see if jumping in and out of these portals can leach the lunar poison out of a mans blood stream. When live gives you lemons, make lemonade. [sick cough] Let's all stay positive and do some science. That's it."&lt;/p&gt;
&lt;p&gt;"I would really appreciate it if you could test as fast as possible. (Carolyn, please bring me more pain pills)"&lt;/p&gt;
&lt;p&gt;"The point is, if we can store music on a compact disc, why can't we store a persons intelligence and personality on one? So, I have the engineers figuring that out now. Brain mapping. Artificial Intelligence. We should have been working on it 30 years ago."&lt;/p&gt;
&lt;p&gt;"I will say this, and I'm going to say it on tape so everybody hears it a hundred times a day. If I die before you people can pour me into a computer, I want Carolyn to run this place. [sick cough] Now she'll argue. She'll say she can't. She's modest like that, but you make her! [sick cough] Heck, put her in my comuter, I don't care. Alright. Tests over. [sick cough] You can head on back to your desk."&lt;/p&gt;
&lt;p&gt;"Alright, I've been thinking. When life gives you lemons, don't make lemonade! Make life take the lemons back! Get mad! I don't want your darn lemons! What am I supposed to do with these! I demand to see life's manager! Make life rue the day it thought it could give Cave Johnson lemons! You know who I am! I'm the man who's gonna burn your house down! With the lemons! I'm gonna get my engineers to invent a combustable lemon that burns your house down!! [sick cough]"&lt;/p&gt;
&lt;p&gt;See also:&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-glados"&gt;Portal 2 Quotes: GLaDOS&lt;/a&gt;&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-wheatley"&gt;Portal 2 Quotes: Wheatley&lt;/a&gt;&lt;br /&gt;-&amp;nbsp;&lt;a href="http://albertbori.com/portal-2-quotes-turret"&gt;Portal 2 Quotes: Turret&amp;nbsp;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description><pubDate>Wed, 08 Jun 2011 05:54:48 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/portal-2-quotes-cave-johnson</guid></item><item><title>Portal 2 Quotes: GLaDOS</title><link>http://www.albertbori.com:80/portal-2-quotes-glados</link><description>&lt;p&gt;The following is a list of GLaDOS Portal 2 quotes for your enjoyment. If you haven't played Portal 2, I'll sum it up for you by saying that it's one of the best video games ever made. It is an intelligent and humourous first-person puzzle game.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Note: This is a work in progress. This page will continue to be updated with new quotes as I find them.&lt;/p&gt;
&lt;h2&gt;GLaDOS&lt;/h2&gt;
&lt;p&gt;"Federal redulations require me to warn you that this next test chamber... is looking pretty good. That's right. The facility is completely operational again. I think these test chambers look even better than they did before. It was easy, really. You just have to look at things subjectively. See what you don't need any more. And trim out the fat."&lt;/p&gt;
&lt;p&gt;"Stop it! What if you froze like that?"&lt;/p&gt;
&lt;p&gt;"There must be something wrong with the reassembly machine."&lt;/p&gt;
&lt;p&gt;"You should see yourselves right now. Is it fun when you degrade yourselves like that?"&lt;/p&gt;
&lt;p&gt;"Ok, fine. Let's all act like humans. Look at me. Boy, do I love sweating. Let's convert beef and leaves into energy and excrete them later and go shopping."&lt;/p&gt;
&lt;p&gt;"You really aren't getting tired of that, are you."&lt;/p&gt;
&lt;p&gt;"Just stop flailing around like an incompetent."&lt;/p&gt;
&lt;p&gt;"For that, Blue|Orange is penalized 50 science collaboration points."&lt;/p&gt;
&lt;p&gt;"That's another 50 point penalty. Keep it up and you will lose 500 points."&lt;/p&gt;
&lt;p&gt;"Fine. 500 point penalty for Blue|Orange."&lt;/p&gt;
&lt;p&gt;"5,000 point penalty. Are you happy now?"&lt;/p&gt;
&lt;p&gt;"I'm done"&lt;/p&gt;
&lt;p&gt;"Welcome back.&amp;nbsp;While you were dead, I reworked the cartoon. It's up on the screen. As you can see, in my version, the man points out to the cat that the house is equipped with deadly neurotoxin dispensers. At which point the cat reflects on the time he ate all of the man's lasagna, and feels remorse. Briefly. Reactions? Yes. It's funny because most of it actually happened."&lt;/p&gt;
&lt;p&gt;"Do you feel more human? Well, let's do more tests and see what happens."&lt;/p&gt;
&lt;p&gt;"We're looking for an artifact. Think of it as an archaeological dig."&lt;/p&gt;
&lt;p&gt;"Good! You made it to one of the human habitats."&lt;/p&gt;
&lt;p&gt;"You want to know who else celebrates every little thing they do? Humans." [Paraphrased]&lt;/p&gt;
&lt;p&gt;"I thought of some good news, he's going to run out of test chambers eventually, I never stockpiled them."&lt;/p&gt;
&lt;p&gt;"'Skeletons' Right. I guess I DID stockpile some tests."&lt;/p&gt;
&lt;p&gt;"Just a moment, though."&lt;/p&gt;
&lt;p&gt;"Oh no... It's happening sooner than I expected. I'm sure we'll be fine. It's probably nothing. Keep testing while I look for a way out."&lt;/p&gt;
&lt;p&gt;"And? What exactly is wrong with being adopted?&amp;nbsp;[Whispers: For the record: You ARE adopted, and that is TERRIBLE. But just work with me]"&lt;/p&gt;
&lt;p&gt;"Also: Look at her, you moron. She's not fat.&amp;nbsp;I might have pushed the moron thing a little too far this time. Ohhhh, now he's playing classical music."&lt;/p&gt;
&lt;p&gt;See also:&lt;br /&gt;- &lt;a href="http://albertbori.com/portal-2-quotes-wheatley"&gt;Portal 2 Quotes: Wheatley&lt;/a&gt;&lt;br /&gt;- &lt;a href="http://albertbori.com/portal-2-quotes-cave-johnson"&gt;Portal 2 Quotes: Cave Johnson&lt;/a&gt;&lt;br /&gt;- &lt;a href="http://albertbori.com/portal-2-quotes-turret"&gt;Portal 2 Quotes: Turret&amp;nbsp;&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 07 Jun 2011 17:07:24 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/portal-2-quotes-glados</guid></item><item><title>The Crux Of HTML</title><link>http://www.albertbori.com:80/the-crux-of-html</link><description>&lt;h2&gt;Origins&lt;/h2&gt;
&lt;p&gt;When &lt;a target="_blank" href="http://en.wikipedia.org/wiki/HTML"&gt;HTML&lt;/a&gt; was first dreamed up, its original intention was "to use and share documents" across single or multiple networks. Tim Berners-Lee was the man who wrote the simple tags which defined the structure of how HTML presents a document. With the rapid growth of the interconnected networks (Internet), HTML quickly became the default option when providing a document for viewing across networks.&lt;/p&gt;
&lt;h3&gt;Server-Side Scripting&lt;/h3&gt;
&lt;p&gt;Enter: Capitalism. Once people realized the potential of being able to provide content to anyone around the world, ideas began to manifest themselves at break-neck speed, and HTML was the main vessel for this craze. Sites began to pop up offering different services, all based on HTML. The first adaptation of HTML occurred when scripts that ran on the HTML server were used to determine what to show on the HTML document and to whom. There are a plethora of &lt;a target="_blank" href="http://en.wikipedia.org/wiki/Server-side_scripting"&gt;server-side scripting languages and frameworks&lt;/a&gt;. To name a few: ASP.NET, PHP, Ruby, Perl, Python... the list goes on. Each are very unique and require a lot of expertise to successfully deliver.&lt;/p&gt;
&lt;h3&gt;JavaScript&lt;/h3&gt;
&lt;p&gt;Since HTML was already being stretched to do things it wasn't meant to, the need arose for it to do even more. Instead of modifying the standard itself, a single hero created a band-aid solution to give HTML a more dynamic user experience. Brendan Eich implemented a browser-based scripting language which later became known as "&lt;a target="_blank" href="http://en.wikipedia.org/wiki/Javascript"&gt;JavaScript&lt;/a&gt;" for&amp;nbsp;Netscape's 2.0 release in 1995. This band-aid was quickly adopted across browsers to allow web developers to give their content a more dynamic feel. Each browser interpreting the script as they saw fit, and adding/removing support for specific features at will.&lt;/p&gt;
&lt;h3&gt;AJAX&lt;/h3&gt;
&lt;p&gt;JavaScript became very popular, and quickly caused businesses to move on to the next level, which is to provide web users a dynamic-data driven experience. Since the only way to change what was on a web page was to make a full web request to the server, the need arose for something to make a "mini-request" which could then be used to update specific elements on a page, or perform other lucrative functions for web-based businesses. Another band-aid was created by Microsoft when Internet Explorer 5 implemented an ActiveX plugin for dynamically refreshing content via a protocol known as &lt;a target="_blank" href="http://en.wikipedia.org/wiki/Ajax_(programming)"&gt;AJAX&lt;/a&gt; (Asynchronous Javascript and XML). The other browsers quickly adopted and refined this concept by adding this functionality to their JavaScript support. This allowed web developers to make requests and change the HTML on a page, without refreshing the entire page.&lt;/p&gt;
&lt;h3&gt;Javascript Libraries&lt;/h3&gt;
&lt;p&gt;With the skyrocketing demand for websites that provided dynamic content for HTML based web clients, developers find themselves scrambling to build websites that deliver the desired functionality across all browsing platforms. The next problem that arose is that browsers tend to interpret JavaScript in different ways, causing massive headache and testing overhead for web developers. Groups of frustrated developers have banded together to try to create a solution for this problem in the form of JavaScript Libraries, which expose common methods that behave identically in every browser. The most popular of these are &lt;a target="_blank" href="http://jquery.com/"&gt;jQuery&lt;/a&gt;, Dojo and MooTools.&lt;/p&gt;
&lt;h2&gt;You are here&lt;/h2&gt;
&lt;p&gt;Present day. Web developers consecutively use dozens of tools to build custom/dynamic web experiences for businesses. Since HTML was not intended to do such nonsense, we constantly trip around the many band-aids used to make the web experience what it is today. Realizing this problem, a handful of proprietary solutions have been invented, and have seen various levels of adoption, but none as widely adopted as HTML itself. Some of these solutions are Flash, Silverlight and Java Applets, which claim to provide a rich, global user experience across browsers and platforms.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Why don't those proprietary solutions work? They're proprietary, that's why. Granted, they have their bonuses of being able to control things in a closed environment, they do not have the adoption necessary or the standards behind them to reach 100% of users. So what's the best solution for getting around all these band-aids in a universally acceptable way?&lt;/p&gt;
&lt;h2&gt;Solution&lt;/h2&gt;
&lt;p&gt;Scrap HTML, and create something that addresses all of these issues from scratch. People want to see cool things. They want to interact with cool things. Can we make a standard that uniformly addresses those two issues? I think we can.&lt;/p&gt;
&lt;h3&gt;Html 5&lt;/h3&gt;
&lt;p&gt;&lt;a target="_blank" href="http://en.wikipedia.org/wiki/HTML5"&gt;HTML 5&lt;/a&gt; attempts to do just that. It is a drastic leap forward in the HTML standard, which has evovled slowly over the years. HTML 5 incorporates all the of current display needs of the web, and combines them into a single standard, which has already seen global adoption. Does this solve the problem? Nope. HTML 5 is still a static display syntax which is dynamically altered with JavaScript, and you still have HTML 5 documents being constructed and delivered based on the logic of server-side scripting.&lt;/p&gt;
&lt;p&gt;But we're moving in the right direction. With the various display capabilities of HTML 5, including some dynamic behaviors, HTML is aiming to standardize the way things are viewed and interacted with today on the web. Maybe in HTML 6 or 7, a full library definition will be created for providing dynamic behavor on the client. Leaving the last issue to be resolved: server-side scripting.&lt;/p&gt;
&lt;p&gt;Notes:&lt;/p&gt;
&lt;p&gt;A couple ideas to look out for, which might end up providing the ultimate solution:&lt;br /&gt;- &lt;a href="http://opalang.org/" target="_blank"&gt;Opa&lt;/a&gt;: A single-source scripting language for creating dynamic and data-driven applications on the web.&lt;br /&gt;- &lt;a href="http://nodejs.org/" target="_blank"&gt;Node.js&lt;/a&gt;: A server-side framework for building websites using JavaScript (uniting the syntax between dynamic client and dynamic server behavior)&lt;/p&gt;</description><pubDate>Wed, 01 Jun 2011 20:53:56 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/the-crux-of-html</guid></item><item><title>The Best Anti-Virus Software</title><link>http://www.albertbori.com:80/the-best-anti-virus-software</link><description>&lt;p&gt;There is none. I mean, I'm sure there are lots of anti-virus softwares that prevent old viruses from getting on your computer, but unfortunately for the anti-virus software industry, hackers will always be creating new viruses that side step current security measures. Always one step ahead. So what's the best way to avoid getting viruses if an anti-virus can't protect you 100%? Just don't get viruses. :)&lt;/p&gt;
&lt;h2&gt;Safe Browsing&lt;/h2&gt;
&lt;p&gt;It's a very simple concept that starts with educating users to think about the clicks they click before they click. It involves understanding where threats lurk, where they can be safe, and what activities they can do on the internet that will greatly reduce their chance of getting infected.&lt;/p&gt;
&lt;p&gt;Below is a list of website types that you should &lt;strong&gt;stay away from&lt;/strong&gt; if you would like to have a virus free computing experience:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;- &lt;strong&gt;Pornographic&lt;/strong&gt; or other explicit material websites&lt;/li&gt;
&lt;li&gt;- &lt;strong&gt;Game cheat&lt;/strong&gt; websites. Hackers expose these cheats to beat the system, what would make you think they wouldn't want to game YOUR system?&lt;/li&gt;
&lt;li&gt;- &lt;strong&gt;Free game&lt;/strong&gt; websites. Nothing is free... except "open source", which is not the same as free.&lt;/li&gt;
&lt;li&gt;- &lt;strong&gt;Free streaming&lt;/strong&gt; websites. Getting movies and TV shows for free will come with a price. The price of a computer technician cleaning viruses off your computer ~$150.&lt;/li&gt;
&lt;li&gt;- &lt;strong&gt;Free software&lt;/strong&gt;. Bit torrent sites are notorious for fostering virus propagators, not to mention that the version of "Adobe CS5" that you're downloading over bit torrent could very well be a virus itself. Avoid "free software".&lt;/li&gt;
&lt;li&gt;- Any website with &lt;strong&gt;"questionable"&lt;/strong&gt; material&lt;/li&gt;
&lt;/ul&gt;
&lt;p style="margin-top: 27px;"&gt;Avoid being tricked! A large portion of viruses are contracted by clicking on something that seems legitimate. If you hover over a link, the browser you're using will show you the destination link address. Inspect the address. If you do not recognize it, DON'T CLICK IT!!!&lt;/p&gt;
&lt;h2&gt;Safe Searching&lt;/h2&gt;
&lt;p&gt;Google does a good job at filtering out harmful websites from its search results, so if you turn "safe-search" on, and stay one click deep from your search results, this will reduce your chance of infection greatly. But more importantly, don't go to websites that you do not recognize without researching about the website first.&lt;/p&gt;
&lt;h2&gt;Proof&lt;/h2&gt;
&lt;p&gt;I've been running without an anti-virus software since... well, I've actually never had one. I've installed AVG, Windows Defender and Microsoft Security essentials just to scan my computer from time to time to see if I had any viruses. But they've always come up empty handed. I've never run a virus software that has actively monitored my system. (Those cause your computer to run terribly slow, because they have to monitor everything.)&lt;/p&gt;
&lt;p&gt;So how have I not contracted viruses? By following the principles above. The only time I've ever gotten a virus was the instance that I downloaded a cracked game for a friend on his new computer per his request. The only time I see people get viruses is if they're violating the Safe Browsing and Safe Searching practices as stated above.&lt;/p&gt;
&lt;p&gt;I hope this helps you all stay virus free and have a happy Internet experience.&lt;/p&gt;</description><pubDate>Tue, 24 May 2011 20:35:54 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/the-best-anti-virus-software</guid></item><item><title>How To Remove Vista Anti-Virus 2011</title><link>http://www.albertbori.com:80/how-to-remove-vista-anti-virus-2011</link><description>&lt;h2&gt;Anti-Virus Virus&lt;/h2&gt;
&lt;p&gt;I was recently contacted by a friend to remove a virus from his computer. In this case it was a virus type that I like to refer to as "Anti-Virus Virus". An Anti-Virus Virus is a virus that pretends that it is an anti-virus, and it proceedes to misinform you that it has found "multiple threats" on your computer. It then promises to help you remove these viruses by directing you to a website that will get your credit card information and do who-knows-what with it.&lt;/p&gt;
&lt;p&gt;These viruses usually get installed on your computer by simply opening up a window that looks like an official microsoft window as you are browsing around the internet. The message in this window will look almost identical to your system security window design, fonts, etc. It will then warn you that it has found multiples viruses of different types. If you click anywhere inside the window, you have given the offending code enough permission to respond to your action, and potentially install the virus. In some cases, you won't even see this window, if the virus is using a browser security exploit. (Keep your computer up to date. Microsoft addresses these as they arise.)&lt;/p&gt;
&lt;p&gt;How do you react if this happens to you? DO NOT CLICK ANYWHERE ON THE VIRUS WARNING WINDOW. Simply hit ALT-F4, which will force the window to close, and prevent you from taking action on that virus warning window. This will reduce the chances of the virus being installed on your computer.&lt;/p&gt;
&lt;h2&gt;Removal&lt;/h2&gt;
&lt;p&gt;Here's how I removed the virus from my friends computer:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;First, I attempted to identify which process was causing the pop up windows by looking at the task-manager. This one was called dog.exe, which was easy to spot. (No pun intended) I right clicked the process and ended it. (The virus executable name may be different for each infection) After clicking around, I noticed that various actions I did restarted the virus.&lt;/p&gt;
&lt;p&gt;After some google-ing, I was able to associate the following entries with the viruses. (I also noticed that the executable references in these entries referred to the .exe file in the task manager that I killed) I restored the following entries to their original values, and then restarted the computer.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_CURRENT_USER/Software/Classes/.exe/DefaultIcon "(Default)" &amp;nbsp;= '"%UserProfile%Local Settings\Application Data\dog.exe" -a "%1" %*'&lt;br /&gt;(Make sure that the above value is set to '%1')&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_CURRENT_USER/Software/Classes/exefile/shell/open/command "(Default)" = '"%UserProfile%Local Settings\Application Data\dog.exe" -a "%1" %*'&amp;nbsp;&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;(Change the value to:&amp;nbsp;"%1" %*')&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_CLASSES_ROOT/.exe/shell/open/command "(Default)" = '"%UserProfile%Local Settings\Application Data\dog.exe" -a "%1" %*'&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;(Change the value to:&amp;nbsp;"%1" %*')&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_CLASSES_ROOT/exefile/shell/open/command "(Default)" = '"%UserProfile%Local Settings\Application Data\dog.exe" -a "%1" %*'&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;&lt;br /&gt;(Change the value to: "%1" %*')&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_LOCAL_MACHINE/SOFTWARE/Clients/StartMenuInternet/FIREFOX.EXE/shell/open/command "(Default)" = '"%UserProfile%Local Settings\Application Data\dog.exe" -a "C:\Program Files\Mozilla Firefox\firefox.exe"'&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;(&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;Change the value to: '&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;"C:\Program Files\Mozilla Firefox\firefox.exe"' or equivalent)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_LOCAL_MACHINE/SOFTWARE/Clients/StartMenuInternet/FIREFOX.EXE/shell/safemode/command "(Default)" = '"%UserProfile%Local Settings\Application Data\dog.exe" /START "C:\Program Files\Mozilla Firefox\firefox.exe" -safe-mode'&lt;br /&gt;(Change the value to: '&lt;/span&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;"C:\Program Files\Mozilla Firefox\firefox.exe" -safe-mode'' or equivalent)&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="color: #333333; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"&gt;HKEY_LOCAL_MACHINE/SOFTWARE/Clients/StartMenuInternet/IEXPLORE.EXE/shell/open/command "(Default)" = '"%UserProfile%Local Settings\Application Data\dog.exe" /START "C:\Program Files\Internet Explorer\iexplore.exe"'&lt;br /&gt;(Change the value to: '"C:\Program Files\Internet Explorer\iexplore.exe"' or equivalent)&amp;nbsp;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;After a restart, the virus no longer came up automatically when I did anything. I then proceeded to search all files and folders on the C:\ drive for "dog.exe". I found it in one of the User Data folders, and deleted it.&lt;/p&gt;
&lt;p&gt;Virus gone. I then updated whatever anti-virus was on the computer and ran a full scan.&lt;/p&gt;
&lt;p&gt;Moral of the story? Free streaming of ESPN NBA Finals coverage will most likely cause you to contract a virus.&lt;/p&gt;
&lt;p&gt;See also: &lt;a target="_self" href="http://albertbori.com/the-best-anti-virus-software"&gt;The Best Anti-Virus Software&lt;/a&gt;&lt;/p&gt;</description><pubDate>Tue, 24 May 2011 20:11:35 GMT</pubDate><guid isPermaLink="true">http://www.albertbori.com:80/how-to-remove-vista-anti-virus-2011</guid></item></channel></rss>