tag:blogger.com,1999:blog-149391532009-07-20T06:02:46.756-05:00lactoseand other unavoidable evils <small>(like you having to click on my ads) <a href="http://lactose.blogspot.com/feeds/posts/default"><u>Subscribe</u></a></small>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.comBlogger61125tag:blogger.com,1999:blog-14939153.post-85700736882906405152009-07-01T11:20:00.001-05:002009-07-01T11:20:33.309-05:00Post from phone<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-8570073688290640515?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-43617474643460256442009-03-11T08:32:00.004-05:002009-03-11T08:54:52.827-05:00How to spot a CraigsList scammer email<span style="font-style: italic;">So you just posted an ad on CL and you get like 5 emails 10min later asking if the item is still available....SCAMMER.</span><br /><br />So after posting things on CL for sometime i have come to learn what separates the real interest from the bots and broken down the detection methods by sections of the email. I haven't listed the basic stuff that CL puts in every email about WesternUnion... but please don't ignore that:<br /><br /><span style="font-weight: bold;">Body</span><br />1. If the email says "is this item still available" it's a scam, why, well because, it doesn't mention the item, the cost, and it's the most common phrase in the scammer software out there.<br />2. If the body makes no indication as to what the item is...<br />3. If the body indicates an offer to pay more than the listed price, don't be greedy<br /><br /><span style="font-weight: bold;">Subject<br /></span>1. If the email includes the exact copy of a detailed description, it was probably copied by a bot so a subject like "D80 10MP, 17-55mm f/2.8, 70-210mm f/4" is pretty much non human typed, You may think that people copy the item name and paste it into the subject, but they don't they copy the email address to paste into their email client and sadly we have only one clipboard.<br /><br /><span style="font-weight: bold;">Name</span><br />1. This is a more intuitive thing, but if the name looks too random, it probably is. Remember, parent pick out names, nobody names their kid "dickey frank", and most people don't enter their name into an email app in all lower case. If you are unsure then do a white pages search, easy as that, if the person doesn't exist in your city or state, then it's a scammer.<br /><br /><span style="font-weight: bold;">Timing</span><br />1. if it comes in the first 5 min of posting the ad...<br />2. If you have multiple listings and get an email for each of them at the same time, it' not an overeager customer, it's a spammer.<br /><br />Most of this stuff is common sense an you would only get sucked into it if you were (a) Really busy and not paying attention. (b)So greedy that you think that you can take advantage of your customers. If you are that busy, hire someone to sell stuff for you, and iff you are greedy, well it's time to learn your lesson, simple supply(of scammers) and demand(greed).<br /><br />-peace<br /><br />ps: (i'm a bit greedy(i'ts human), but i've avoided the scammers so far)<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-4361747464346025644?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-4970921580932946952009-02-10T19:48:00.004-06:002009-02-10T20:42:02.750-06:00Web apps, digg 'em (or reddit, whaever)<span style="font-style: italic;">I hate sign ups, especially just to try a new web 2.0 app, some of them even require getting on a invite list blech!</span><br /><br /><span style="font-weight: bold;">I</span> do want web apps usage to take off MORE, like iPhone apps do but for browsers. I know everyone uses facebook and twitter, but only a fraction of that use edgier tools like google docs, gliffy, remember the milk, and so on... I see the barrier to entry with some of those apps so i want to help people start small by highlighting some of the "zero config" apps out there. By zero config i mean, no barrier to use, as in no interstitial sign up page or other prerequsites.<br /><br /><span style="font-weight: bold;">Ajaxload - Ajax loading gif generator</span><br /><a href="http://www.ajaxload.info/">http://www.ajaxload.info/</a><br />Animated gifs are cool and all, but with youtube came the death of animated gifs, except for loading images. This site makes these images in your choice of colors all in one page.<br /><br /><span style="font-weight: bold;">Let me google that for you</span><br /><a href="http://letmegooglethatforyou.com/">http://letmegooglethatforyou.com/</a><br />If you read my blog you've seen my post on dealing with peoples computer questions. This site is a good choice for both comic relief and really helping the horse that you bring to water actually drink!<br /><br /><span style="font-weight: bold;">Colour Lovers</span><br /><a href="http://www.colourlovers.com/">http://www.colourlovers.com/</a><br />I love Colour Lovers, not least of which because they spell color correctly. It's handy for getting color pallets, some of them are so well done that they casue viceral reactions. The coffee color makes me think that i smell a fresh brew. A vary theraputic site, as well as helpful.<br /><br /><span style="font-weight: bold;">Nizzote</span><br /><a href="http://nizzote.com/">http://nizzote.com</a><br />This is one of mine, it's like a super portable notepad, actually i think it loads faster than notepad.<br /><br /><span style="font-weight: bold;">NotifyURL</span><br /><a href="http://notifyurl.com/">http://notifyURL.com</a><br />Also one of mine, it's basically the classic tinyurl.com but it sends you an email when the person you send the link to clicks on it.<br /><br /><span style="font-weight: bold;">Now Do This!</span><br /><a href="http://nowdothis.com/">http://nowdothis.com/</a><br />At first this seemed too basic, it lacks portability... But i never use other to-do lists because they have too many features and i hate logging in, this one is awesome because it's so simple and the impact is huge.<br /><br />Hmm... Thats all i can think of for now, and googleing "no sign up required", and the like, didn't turn up much. If you have some please add them in the comments<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-497092158093294695?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com3tag:blogger.com,1999:blog-14939153.post-10360911281751795352008-12-01T12:14:00.003-06:002009-01-03T11:15:03.954-06:00This is why i like Dr. HouseBeing technically minded, people bring questions to me when they have a technical problem. This is great, it's my job and i usually have the answer; as it's my job to know. So why am i complaining?. Well the other day I get an IM from a client, the dreaded words: "does my new site support safari?" so i prepare to arm myself expecting that some huge functionality has proven to be incompatible with Safari and it's probably one of our biggest clients that needed the feature, "I don't really test much on safari, so some things may look different but it should work" as i write that IM i scramble to gather browser statistics and brainstorm on what elements are most likely to fail, i should have used jsLint.com more... no reply ... "why?" i finally ask. Reply: "oh, i got this message from someone: 'Safari can’t verify the identity of the website. The certificate for this website was signed by an unknown certifying authority. ..." . Ahh the actual error, an expired SSL, nothing to do with browsers, if only they said that in the first place.<div><br /></div><div>In most cases the challenge lies not in solving the problem but in solving what the problem is. Non technically minded folks don't know what information is needed to diagnose a problem so they try to shape the information to either save face by hiding info, or they add superfluous info to show that they have been working on the problem before bothering me, which is nice as they do that out of respect for me, but really it just lowers the signal to noise ratio for me. There are also the folks who are just plain frustrated and don't care what i think so they simply show me the error and leave, i like these folks the best becasue by removing themselves it eliminates a barrier between me and the problem and then the solution.</div><div><br /></div><div>So what i envision as a remedy is some sort of definable framework for collecting the nessesary information of an error, but thats another post. - Peace<br /></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-1036091128175179535?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-69342343784462414932008-09-04T16:12:00.003-05:002008-09-04T16:22:08.076-05:00Data Object C# Generator<div>Since i can't afford a fancy code generator i've been using a SQL query based on one that i found on SQLservercentral by Cade Bryant which uses the system schema tables to generate some simple data objects in C#, there are a few glitches that requre tweaking the SQL result, but overall it makes for quick work, (please feel free to use your SQL prowess to incorporate the twaks into the query, oh and let me know)</div><div><br /></div><div>Your PK for the table has to be called tableName + 'ID', so a table called [Person] would have to have a Primary Key called [PersonID].</div><div><br /></div><div>run the query then copy the column with C# into visual studio where you can make the following changes before applying automatic formating to clean it all up.</div><div><br /></div><div>The query leaves a bit to clean up: </div><div>1. in the paramter list of the input method you have to delete the last comma.</div><div>2. Delete the last comma in the SQL strings where colums are listed.</div><div>3. Delete the primary key from the update SQL query and from the insert query</div><div><br /></div><div><span class="Apple-style-span" style="font-size: small;">Syntax highlighted HTML generated on </span><a href="http://tools.devshed.com/webmaster-tools/syntax-highlighting/"><span class="Apple-style-span" style="font-size: small;">http://tools.devshed.com/webmaster-tools/syntax-highlighting/</span></a></div><br /><br /><div class="sql"><span style=" font-weight: bold;color:#993333;">CREATE</span> PROCEDURE <span style="color:#66cc66;">[</span>dbo<span style="color:#66cc66;">]</span>.<span style="color:#66cc66;">[</span>usp_TableToClass<span style="color:#66cc66;">]</span><br /><span style=" font-style: italic;color:#808080;">/*<br />Created by Cade Bryant.<br />Generates C# class code for a table<br />and fields/properties for each column.<br /><br />Run as "Results to Text" or "Results to File" (not Grid)<br /><br />Example: EXEC usp_TableToClass 'MyTable'<br />*/</span><br /><br /><span style="color:#0000ff;">@table_name</span> SYSNAME<br /><br /><span style=" font-weight: bold;color:#993333;">AS</span><br /><br /><span style=" font-weight: bold;color:#993333;">SET</span> NOCOUNT <span style=" font-weight: bold;color:#993333;">ON</span><br /><br />DECLARE <span style="color:#0000ff;">@temp</span> <span style=" font-weight: bold;color:#993333;">TABLE</span><br /><span style="color:#66cc66;">(</span><br />sort INT,<br />code TEXT<br /><span style="color:#66cc66;">)</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">1</span>, <span style="color:#ff0000;">'public class '</span> + <span style="color:#0000ff;">@table_name</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> + <span style="color:#ff0000;">'{'</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">2</span>, <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> + <span style="color:#ff0000;">'#region Constructors'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">3</span>,  <span style="color:#ff0000;">'public '</span> + <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'()'</span><br />+ <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  + <span style="color:#ff0000;">'{'</span><br />+ <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  + <span style="color:#ff0000;">'}'</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">4</span>, <span style="color:#ff0000;">'#endregion'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">5</span>, <span style="color:#ff0000;">'#region Public Properties'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">6</span>,  <span style="color:#ff0000;">'public '</span> +<br /><span style=" font-weight: bold;color:#993333;">CASE</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%CHAR%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'string '</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%INT%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'int '</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%DATETIME%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'DateTime '</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%BINARY%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'byte[] '</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'BIT'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'bool '</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%TEXT%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'string '</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'MONEY'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'decimal '</span><br /><span style=" font-weight: bold;color:#993333;">ELSE</span> <span style="color:#ff0000;">'object '</span><br /><span style=" font-style: italic;color:#808080;">/*END + '_' + COLUMN_NAME + ';' */</span><br /><span style=" font-weight: bold;color:#993333;">END</span> + COLUMN_NAME + <span style="color:#ff0000;">';'</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">7</span>, <span style="color:#ff0000;">'#endregion'</span> +<br /><span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">8</span>,  <span style="color:#ff0000;">'public '</span> + <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'(int '</span> + <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'ID)'</span><br />+ <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  + <span style="color:#ff0000;">'{'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["YourConnectionStringKeyValue"].ToString())) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />using (SqlCommand cmd = new SqlCommand("Select * from '</span>+<span style="color:#0000ff;">@table_name</span>+<span style="color:#ff0000;">' where '</span>+<span style="color:#0000ff;">@table_name</span>+<span style="color:#ff0000;">'ID = @id", conn)) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />cmd.Parameters.AddWithValue("id", '</span>+<span style="color:#0000ff;">@table_name</span>+<span style="color:#ff0000;">'ID);'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />conn.Open();'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />using (SqlDataReader dr = cmd.ExecuteReader()) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />if (dr.Read())'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>  +   <span style="color:#ff0000;">'<br />            {'</span> <br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">9</span>,  <span style="color:#ff0000;">'this.'</span> + COLUMN_NAME + <span style="color:#ff0000;">' = '</span> +<br /><span style=" font-weight: bold;color:#993333;">CASE</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%CHAR%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'Convert.ToString(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%INT%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"] == DBNull.Value ? new int() : Convert.ToInt32(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%DATETIME%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"] == DBNull.Value ? new DateTime() : Convert.ToDateTime(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%BINARY%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"] == DBNull.Value ? new byte() : (byte[])dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'BIT'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'Convert.ToBoolean(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%TEXT%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'Convert.ToString(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'MONEY'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"] == DBNull.Value ? new decimal() : Convert.ToDecimal(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'DECIMAL'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"] == DBNull.Value ? new decimal() : Convert.ToDecimal(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'FLOAT'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"] == DBNull.Value ? new double() : Convert.ToDouble(dr["'</span> + COLUMN_NAME + <span style="color:#ff0000;">'"])'</span><br /><span style=" font-weight: bold;color:#993333;">ELSE</span> <span style="color:#ff0000;">' --check: '</span> + COLUMN_NAME<br /><span style=" font-style: italic;color:#808080;">/*END + '_' + COLUMN_NAME + ';' */</span><br /><span style=" font-weight: bold;color:#993333;">END</span> + <span style="color:#ff0000;">';'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">10</span>, <span style="color:#ff0000;">' } } } } } '</span><br /><br /><span style=" font-style: italic;color:#808080;">/* insert */</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">11</span>, <span style="color:#ff0000;">'public int insert('</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">12</span>,<br /><span style=" font-weight: bold;color:#993333;">CASE</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%CHAR%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'string _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%INT%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'int _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%DATETIME%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'DateTime _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%BINARY%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'byte[] _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'BIT'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'bool _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE <span style=" font-weight: bold;color:#993333;">LIKE</span> <span style="color:#ff0000;">'%TEXT%'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'string _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'MONEY'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'decimal _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">WHEN</span> DATA_TYPE = <span style="color:#ff0000;">'DECIMAL'</span> <span style=" font-weight: bold;color:#993333;">THEN</span> <span style="color:#ff0000;">'decimal _'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">ELSE</span> <span style="color:#ff0000;">' --check: '</span> + COLUMN_NAME<br /> <span style=" font-weight: bold;color:#993333;">END</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">13</span>, <span style="color:#ff0000;">' )'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />        {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["CONNSTR"].ToString())) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />            using (SqlCommand cmd = new SqlCommand(@"'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />INSERT INTO ['</span> + <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'] (<br />'</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">14</span>,  <span style="color:#ff0000;">'['</span> + COLUMN_NAME + <span style="color:#ff0000;">'],'</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">15</span>, <span style="color:#ff0000;">' ) VALUES ('</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">16</span>,  <span style="color:#ff0000;">'['</span> + COLUMN_NAME + <span style="color:#ff0000;">'],'</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">17</span>, <span style="color:#ff0000;">' )<br />SELECT SCOPE_IDENTITY() AS '</span> + <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'ID ", conn)) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />'</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">18</span>,  <span style="color:#ff0000;">'cmd.Parameters.AddWithValue("@'</span> + COLUMN_NAME + <span style="color:#ff0000;">'",'</span> + COLUMN_NAME + <span style="color:#ff0000;">');'</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">19</span>, <span style="color:#ff0000;">''</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />                conn.Open();<br />                return (int)cmd.ExecuteScalar();'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />                }}}'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> <br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">20</span>, <span style="color:#ff0000;">'<br />public void Update()'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />        {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />            using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["CONNSTR"].ToString())) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />            using (SqlCommand cmd = new SqlCommand(@"'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />UPDATE<br />    ['</span>+ <span style="color:#0000ff;">@table_name</span> +<span style="color:#ff0000;">']<br />SET<br /> <br /><br />'</span><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">21</span>,  <span style="color:#ff0000;">'['</span> + COLUMN_NAME + <span style="color:#ff0000;">'] = @'</span> + COLUMN_NAME + <span style="color:#ff0000;">','</span><br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">22</span>, <span style="color:#ff0000;">'<br />WHERE<br />     ['</span>+ <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'ID] = @'</span>+ <span style="color:#0000ff;">@table_name</span> + <span style="color:#ff0000;">'ID<br />", conn)) {'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> +<span style="color:#ff0000;">'<br />'</span><br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">23</span>,  <span style="color:#ff0000;">'cmd.Parameters.AddWithValue("@'</span> + COLUMN_NAME + <span style="color:#ff0000;">'",'</span> + COLUMN_NAME + <span style="color:#ff0000;">');'</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span>   <br /><span style=" font-weight: bold;color:#993333;">FROM</span> INFORMATION_SCHEMA.<span style=" font-weight: bold;color:#993333;">COLUMNS</span><br /><span style=" font-weight: bold;color:#993333;">WHERE</span> TABLE_NAME = <span style="color:#0000ff;">@table_name</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> ORDINAL_POSITION<br /><br /><span style=" font-weight: bold;color:#993333;">INSERT</span> <span style=" font-weight: bold;color:#993333;">INTO</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> <span style="color:#cc66cc;">24</span>, <span style="color:#ff0000;">'cmd.ExecuteNonQuery();   '</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">13</span><span style="color:#66cc66;">)</span> + <span style="color:#000066;">CHAR</span><span style="color:#66cc66;">(</span><span style="color:#cc66cc;">10</span><span style="color:#66cc66;">)</span> + <span style="color:#ff0000;">'             <br />}}}}'</span><br /><br /><span style=" font-weight: bold;color:#993333;">SELECT</span> * <span style=" font-weight: bold;color:#993333;">FROM</span> <span style="color:#0000ff;">@temp</span><br /><span style=" font-weight: bold;color:#993333;">ORDER</span> <span style=" font-weight: bold;color:#993333;">BY</span> sort</div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-6934234378446241493?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-45749267336715091242008-09-04T14:57:00.005-05:002008-09-04T15:56:35.223-05:00Chrome Inspector - Dom Explorer - JS Console<div>To see it right click on, say, an image and choose "Inspect Element".</div><div><br />The console lets you run commands that interface with the elements on the page, so it works with the Jquery library, and it has autosuggest. Here I entered a jquerry command to edit the value attribute of the input variable thats it highlighted in yellow. You can dbl- click on the css to edit it and see the results live. </div><div>UPDATE: Try out firebug in Firefox, it does most of this and more!</div><div><br /></div><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/SMBCsOSnzSI/AAAAAAAAAKE/kMqHmt3K4BI/s1600-h/console.gif"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/SMBCsOSnzSI/AAAAAAAAAKE/kMqHmt3K4BI/s400/console.gif" border="0" alt="" id="BLOGGER_PHOTO_ID_5242263293777136930" /></a><span class="Apple-style-span" style="color: rgb(0, 0, 0);"><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_NP1V1twlVEU/SMBCpgp-tZI/AAAAAAAAAJ8/iJZFL71u9kA/s1600-h/highlight.gif" style="text-decoration: none;"></a></span><div><span class="Apple-style-span" style="color: rgb(0, 0, 0);"><span class="Apple-style-span" style="color: rgb(0, 0, 0);">Shreenshot of the element inspector.<br /></span></span><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/SMA-EbQpIuI/AAAAAAAAAJ0/kVrTsfDBJXg/s1600-h/inspect.gif"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/SMA-EbQpIuI/AAAAAAAAAJ0/kVrTsfDBJXg/s400/inspect.gif" border="0" alt="" id="BLOGGER_PHOTO_ID_5242258212017218274" /></a><br />Shreenshot of another cool Chrome Feature. To see it right click on, say, an image and choose "Inspect Element"<div><br /></div><div><br /></div></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-4574926733671509124?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com2tag:blogger.com,1999:blog-14939153.post-78657421414912168522008-06-05T12:06:00.006-05:002008-06-05T12:20:51.480-05:00JSON by - Jquery - C#First i tried consuming web services that serialized structs into XML but now I got it spewing JSON which means no more escaping strings for javascript. When dumping large bits of content into a page XML made sense to me since it was already HTML escaped, but if i wanted to send commands in the same message i would have to make sure it was JS safe too, Having an un-escaped string will kill the JS but a pooly formatted HTML will probably survive (nat that its then a an excuse for pooly format HTML), in fact it may make sense to return an XML type in the struct, i'll have to look into that. So here is how to make it workie:<br /><br />in the .asmx<br /><blockquote><br />using System;<br /><span style="font-weight: bold;">using System.Web.Script.Services;</span><br />using System.Web.Script.Serialization;<br /><br />namespace mcpV2<br />{<blockquote> /// <summary><br /> /// Summary description for WebService2<br /> /// </summary><br /> [WebService(Namespace = "http://tempuri.org/")]<br /> [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]<br /> [ToolboxItem(false)]<br /> [<span style="font-weight: bold;">ScriptService</span>]<br /> // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line.<br /> // [System.Web.Script.Services.ScriptService]<br /> public class WebService2 : System.Web.Services.WebService<br /> {<blockquote> public struct tests<br /> {<blockquote> public string thestr;<br /> public int theint; </blockquote>}<br /><br /> [WebMethod]<br /> [<span style="font-weight: bold;">ScriptMethod</span>]<br /> public tests HelloWorld()<br /> {<blockquote> tests ttt = new tests();<br /> ttt.theint = 9;<br /> ttt.thestr ="hello worls";<br /><br /> return ttt; </blockquote>} </blockquote> } </blockquote>}</blockquote><br /><br />This will spit out:<br /><blockquote>{"d":{"__type":"mcpV2.WebService2+tests","thestr":"hello worls","theint":9}}</blockquote>I called it with the JQUERY .ajax method :<br /><blockquote>$.ajax({<br /> type: "POST",<br /> url: "webservice2.asmx/HelloWorld",<br /> beforeSend: function(xhr) {<br /> xhr.setRequestHeader("Content-type",<br /> "application/json; charset=utf-8");<br /> },<br /> dataType: "json",<br /> success: function(msg) {<br /> // Insert the returned HTML into the .<br /> $('#Div1').text(msg.d.thestr);<br /> }<br /> });<br /></blockquote>I added some other stuff for error catching but you get the idea. I had some trouble with Web services making huge memory leaks with the XMLserializer, hopefully the .NET AJAX serializer is not a memory hog...<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-7865742141491216852?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-91275913175110350452008-05-29T12:02:00.003-05:002008-05-29T12:30:13.684-05:00Rendered uselessTo render, or not to render. So for some reason i have a stigma against having HTML in my c# code, i still do it all the time, but i get a bit ashamed and hope no one is looking over my shoulder. It stinks because to make changes the application will have to be recompiled , but since the web is stateless it's not a huge issue to replace the DLL every now and then, it's still clunky. There is the alternative of putting the HTML in a Database. <span style="font-size:85%;"><br /><br />Note for a large section of HTML I always put it in a file and simply read it from file.<br /><br />There is another alternative for HTML, using the .net HTMLControl.RenderControl, in which HTML is at least guaranteed to be valid and it looks better in the code. I tried it out and you have to do this to get the HTMLControl into text:<br /><br /><blockquote>public static string RenderWebControl(HtmlControl html)<br /> {<br /> <blockquote>string htmlContent;<br /><br /> using (MemoryStream dataStream = new MemoryStream())<br /> {<br /> <blockquote>using (StreamWriter textWriter = new StreamWriter(dataStream, Encoding.UTF8))<br /> {<br /> <blockquote>using (HtmlTextWriter htmlWriter = new HtmlTextWriter(textWriter))<br /> {<br /> <blockquote>html.RenderControl(htmlWriter);<br /> textWriter.Flush();<br /> dataStream.Seek(0, SeekOrigin.Begin);<br /><br /> using (StreamReader dataReader = new StreamReader(dataStream))<br /> {<br /> htmlContent = dataReader.ReadToEnd();<br /> </blockquote> }<br /> </blockquote> }<br /> </blockquote> }<br /> </blockquote> }<br /><br /> return htmlContent;</blockquote><br /> }<br />Not terrible but still a quite a few loops to jump though, way more than using string builder to build a table.<br /><br />So what about the database option, i guess it's ok, it's a performance hit compared to having it in the code, but it allows for changes to be made to a live system, i guess it depends on how many string your going to need and what the focus of the system is. But after trying to render the controls i feel a bit better about poisoning my code with some foreign matter.<br /><br /><br /></span><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-9127591317511035045?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-85684245490207109922008-05-13T17:05:00.003-05:002008-05-13T17:18:44.121-05:00Model for sending XML to jquery in C#.net web services can return structs of any simple datatypes as nicely serialized XML and jquery can consume that like this<br /><br />struct usefullStuff {<br /> string[] commands;<br /> string content;<br />}<br /><br />$("commands string", returnedXML).each(function() { eval($(this).text()); });<br />$("content", returnedXML).each(function() { $("body").append($(this).text()) ; });<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-8568424549020710992?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-79157513751726745552008-04-09T15:13:00.003-05:002008-04-09T15:18:08.948-05:00Nascar Fans vs Steve Jobs<span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1g9a">while(vista !=crashed)</span><div dir="f" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1g99">not everyone OS can run on steve jobs majical farts</span></div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1gau">heh</span></div><div id="1gat" class="h8iICe">you're so right</div></div><div dir="f" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1gas">while(appleuse=<wbr>stoned)</span></div><div id="1gaj" class="h8iICe">appleuser</div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1gai">lol</span></div><div id="1gar" class="h8iICe">while(vistauser<wbr>=virgin)</div></div><div dir="f" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1g2f">"this os is so cool man look at all the rounded corners"</span></div><div id="1g2e" class="h8iICe">while(appleuser<wbr>=hiv)</div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1g2d">lol</span></div><div id="1g2c" class="h8iICe">while(vistauser<wbr>=liveswithparen<wbr>ts)</div><div id="1gaf" class="h8iICe">while(vistauser<wbr>=watchingnascar<wbr>)</div><div id="1ga5" class="h8iICe">while(vistaboug<wbr>htat=walmart)</div><div id="1ga4" class="h8iICe">muayahah</div><div id="1g2v" class="h8iICe">i win!</div></div><div dir="f" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1g2g">windows95 user watches nascar</span></div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1gad">heh</span></div></div><div dir="f" class="RNCQof"><div class="Q2bXSc"> <span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1gac">vista bought at costso</span></div><div id="1gab" class="h8iICe">and lets face it, apple user is WAY more likely to live with parents</div><div id="1gaa" class="h8iICe">"my dad bought me my macbook and pink nano"</div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"> <span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1ga9">yeah cause they're under 18</span></div><div id="1ga8" class="h8iICe">heh</div></div><div dir="f" class="RNCQof"><div class="Q2bXSc"> <span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1ga7">touche</span></div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span style="font-weight: bold;" class="ej8B8e">Amir: </span><span id="1g2u">and for vista it'd be like "my babies daddy bought me my brand new HP"</span></div></div><div dir="f" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">me:</span> </span><span id="1gae">ok i have to go back to work</span></div><div id="1gbe" class="h8iICe">hah "bought" = lifted</div></div><div dir="t" class="RNCQof"><div class="Q2bXSc"><span style="font-weight: bold;"> </span><span class="ej8B8e"><span style="font-weight: bold;">Amir:</span> </span><span id="1gbd">lol</span></div><div id="1gbc" class="h8iICe">so right, back to work</div> </div><div id="1g2p" class="tsqbec"> </div><div class="eu8o9"><textarea dir="ltr" style="overflow-y: hidden; height: 36px;" id="1g4t" class="Gr0sfc"></textarea></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-7915751375172674555?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-79132183789769691622008-02-21T21:42:00.006-06:002008-03-24T15:22:18.111-05:00Jokes<div> </div>Read this list with an expression of comic disdain, pshhh.<br /><br /><br /><div>Broadband in the US is a joke,<br /></div><div>Voting in the US is a joke (it's rigged),<br /></div><div>Windows Media Player is a joke,<br /></div><div>the {FDA, FCC } is a joke,<br /></div><div>TSA is a joke (i t would have been with the array above but it deserved it's own line),<br /></div><div>higher learning is a joke,<br /></div><div>the Dentist is a joke,<br /></div><div>insurance is a joke,<br /></div><div>farming subsidy is a joke,<br /></div><div>all doctors except surgeons is a joke,<br /></div><div>medicine is a joke (except Ibuprofin),<br /></div><div>30 year mortgage is joke,<br /></div><div>the political delegate system is a joke,<br /></div><div>the Police are joke,<br /></div><div>US 'news' media is a joke,<br /></div><div>Homeland Security is a joke,<br /></div><div>9/11 is a conspiracy (along with the '69 landing on the moon), i'm doubtful about area 51 i think aliens are smarter,<br /></div><div>spelling is a joke,<br /></div><div> </div><br /><div>This blog is joke,</div><br />In the spirit of the joke please add your own in the comments. (comments are not a joke)<br /><div> </div><br />-updates:<br /><br />bluffs are a joke (hello mountains)<br /><br /><div> </div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-7913218378976969162?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-44695493406348121192008-02-21T14:23:00.008-06:002008-08-04T12:16:25.744-05:00Lens ReviewsI've become a bit of a lens dealer lately, sometime owning a lens for as short as 1 day. In most cases i break even and in a few cases i've made a profit, the only case where i lose money is in buying new lenses and eating the new-> used depreciation.<br /><span style="font-size:130%;"><br />On D70 </span>(Paid 750, sold $500):<br /><span style="font-weight: bold;">50mm f1.8 AF D</span> (paid $125 new, sold $100), Noisy AF, distortion free, very neutral lens, not really sharp or soft.<br /><br /><span style="font-weight: bold;">70-300mm</span> (paid $80 sold $120) Decent bokeh, but other wise a cheap plastic lens with a ton of chromatic abberation and very poor contrast, blurry at 300.<br /><br /><span style="font-weight: bold;">24mm 2.8</span> (bought and sold twice $275 - $270) prime, sharp, distortion free. contrasty, fast, sharp. light solid metal build.<br /><br /><span style="font-size:130%;">on D80 </span>(paid new 900 with 18-135 which sold for 200 bringing price of d80 to 700)<br /><span style="font-weight: bold;">18-135</span> OK lens, medium build, AFS zoom was ok, shap, medium distortion, contrasty, medium bokeh.<br /><br /><span style="font-weight: bold;">18-200</span> (paid 725 new sold 600) decent build, zoom creep, AFS accurate, VR effective but adds unnatural quality to images, terrible bokeh, very convenient, all round one of the most useful lenses, it doesn't do anything bad but it doesn't do anything great, just does Everything ok. Longest owned lens.<br /><br /><span style="font-weight: bold;">24mm 2.8</span> ( $180 - $180 ) prime, Second time owning this lens, i bought it and a 50mm again becasue i was tired of the poor quality of 18-200mm images so i went the opposite route and got 2 primes. They are both great, but changing lenses on the job it a pain.<br /><br /><span style="font-weight: bold;">50mm AF</span> (non d) ($65, 70), better construction that the D model but optically identical.<br /><br /><span style="font-weight: bold;">80-200mm AF-D ED</span> ($650 - $700) Sharpest bloody lens I've ever used, insanely sharp, focus was always spot on beautiful bokeh, no, the best bokeyh i have ever seen. I worked with this lens and 24mm prime and loved it. it was almost perfect. It's just too big and heavy and a bit tele for a digital sized sensor. It also only focuses down to like 3 feet which is useless when kids are climbing on you. I will buy this lens again someday, it so sharp and yet natural.<br /><br /><span style="font-weight: bold;">17-50mm Tamron Di II</span>. (paid $300-$30 sold 270) i bought this on ebay and it had some crap between the internal two elements so i got a discount, cleaned it, which fixed it, then sold it. It was actually a perfect lens for digital, close focus, creamy bokeh, decent focus speed, sharp. Build was junky. I guess it get really soft at higher apertures, but who cares. I almost bought another one, but after using the 80-200 i couldn't bring my self to use another non pro lens. I might have made a mistake.<br /><br /><span style="font-weight: bold;">28-85 3.5-45 AF Macro</span> (paid $95, on sale now), optically great lens, but the AF is inaccurate in low light, ruins otherwise great shots) close focus is a bit to far, i need to be able to shoot someone accross the table, about .5m.<br /><br /><span style="font-weight: bold;">28-70mm f2.8 AFS</span> (paid $900, unsold (possible keeper (update sold for $900 becasue it was hit or miss AF)) I was able to live with the focal length of 28-85 but i needed it in a better package so this is what i got, i would have gone for the 24-70 but it was too expensive. Anyway i find most of my photos are between 30mm and 70mm anyway so it should be perfect. I still need a like 17mm prime and a 180mm prime or something similar for those occasional landscape or close candid.<br /><br /><span style="font-weight: bold;">17-50mm Tamron Di II</span>. (yup i got another one for around 200, on my D80 now) So this lens is actually perfect for DX, at 17mm no one really noticies the distortion anyway. It focuses REALY close which is perfect for kids and at 50mm on DX it's basically a portrait lens. 2.8 is sharp enough but has very poor exposure accuracy, which on digital is easy to correct with visual feedback from the LCD. At F4 the exposre error is gone. The lens has issues at small apertures, but that not what i ever use this lens for so i don't care. So basically it's perfect for what i use it for but sucks at everything else. All i need now is for my 70-200 F4 to have VR. The color is a bit strange at f2.8, makes skin kind of peachy.<br /><br /><span style="font-weight: bold;">70-200mm F4 AF</span>. Paid ($180) This is a pro quality lens that doesn't weigh as much as the 2.8 but has 99% of the quality. The bokeh, sharpness and AF are not quite as amaizing but they are not distracting at all either so it's a good middle ground for now. I really like it now that i got a 35mm camera too. I got it from a Japanese guy on Craigslist, he bought it when he lived in Japan, it is in absolute mint shape, the zoom ring is so smooth it's ahead of it's time, it's a really well crafted lens.)<br /><br /><span style="font-weight: bold;">Rented: 12-24</span>: great lens image quality is great, weight and size are good, close focus is great, i just hate to spend a grand on it when canon has a 10-20 thats so much better. It's also not as good investment since FX is out now, but i see the price has dropped to 800 used now that FX is out. I may get this someday if I'm still using aps-c.<br /><br /><span style="font-weight: bold;">N80</span> (paid $60 from Ebay). My previous experience with film cameras has been with manual focus ones or disposable, so compared to my DSLR they seemd like a step down. Boy was i wrong, the camea is every bit as good as my D80 the main difference is that you trade a large LCD for a large viewfinder and a larger image (35mm)<br /><br /><span style="font-weight: bold;font-size:130%;" >Tested:</span><br /><br /><span style="font-weight: bold;">70-30mm AFS VR</span>: Someone at the Como zoo had this and let me try it on my camera. MUCH better than the cheap g version. creamy bokeh, i almost got this lens but I've learned that i need 2.8 and a pro lens.<br /><br /><span style="font-weight: bold;">17-55 2.8 AFS</span>. Great lens but i cant handle the poor distorion performance or the $ for a lens that won't work on FX.<br /><br /><span style="font-weight: bold;">55-200mm VR </span>(Paid 225, returned 30min later) AF to0 slow, close focus sucked, plasticly, useless lens. the 18-200 was miles better, faster. Even bokeh was better on 18-200 because you could focus closer.<br /><br /><span style="font-weight: bold;">34mm PC</span>, i wouldn't mount on my D80 but it tried it on a f100 it was really cool, i need one. I tried making one out of a 24mm prime but had focus trouble. I will need one of these lenses, need. The new 24mm PC looks sweet.<br /><br />I just got the 28-70 2.8 and really like it so far, i think it may be a keeper. So we'll see. I though it would be heavier and bigger but it's not too bad.<br /><span style="font-size:130%;"><br /><span style="font-weight: bold;">Flashes:</span></span><br /><span style="font-weight: bold;">sb-600</span> (gift, retuned) optical TTL rocks. It's a cool flash to accompany and DSLR that can control it you get instant seamless bi-directional light by putting this thing ona tripod on the the otherside of the room, works perfectly. I only traded for becasue i could get 2 sb-28 for it's price.<br /><br /><span style="font-weight: bold;">sb-800</span>, rented twice, when i need another flash i rent them.<br /><br /><span style="font-size:130%;"><span style="font-weight: bold;font-size:100%;" >sb-400</span> </span>(paid 125) best on camera flash ever, tiny, fast, quiet, cheap, TTL works perfectly. Doesn't work with my wireless ebay triggers, boo.<br /><br /><span style="font-weight: bold;">sb-28</span> paid $90 for each of my three. Work horses, I'll buy more when i break them, powerful no nonsense light.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-4469549340634812119?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-40246755283498206022008-01-22T17:35:00.000-06:002008-12-09T02:12:46.413-06:00Truffle Gels<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R5Z-2CMMuuI/AAAAAAAAAIo/k9Mq5Rh8zvU/s1600-h/truffles.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R5Z-2CMMuuI/AAAAAAAAAIo/k9Mq5Rh8zvU/s400/truffles.jpg" alt="" id="BLOGGER_PHOTO_ID_5158449889965554402" border="0" /></a><br />Unable to find some colored cellophane anywhere I had an aha moment over Christmas while playing with the wrapper of a delicious lindt truffle, while playing with it the fail backing came off to reveal an almost perfect CTO gel.<br /><br />Total Cost $2.99, and you can eat the leftovers. Go on, get your SO some chocolates!<br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/R5Z-6SMMuvI/AAAAAAAAAIw/g38woT93-lM/s1600-h/trufflesunwrapped.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R5Z-6SMMuvI/AAAAAAAAAIw/g38woT93-lM/s400/trufflesunwrapped.jpg" alt="" id="BLOGGER_PHOTO_ID_5158449962979998450" border="0" /></a>unwrapping</div><br /><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R5aD4CMMuwI/AAAAAAAAAI4/LZIkQQMPf9o/s1600-h/on-the-flash.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R5aD4CMMuwI/AAAAAAAAAI4/LZIkQQMPf9o/s400/on-the-flash.jpg" alt="" id="BLOGGER_PHOTO_ID_5158455421883431682" border="0" /></a>'Gel' on the flash<br /><br /></div><div style="text-align: center;"><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R5aD9CMMuxI/AAAAAAAAAJA/f1qEOtzb2_o/s1600-h/molly.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R5aD9CMMuxI/AAAAAAAAAJA/f1qEOtzb2_o/s400/molly.jpg" alt="" id="BLOGGER_PHOTO_ID_5158455507782777618" border="0" /></a>Molly<br /></div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-4024675528349820602?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-64509061380577188512008-01-10T13:19:00.000-06:002008-01-10T13:34:11.993-06:00Raw FoodieSo ever the seeker of a clearer mind i saw <a href="http://www.stevepavlina.com/blog/2007/12/raw-foods/">steve pavlina go raw </a>and i have to give it a shot ( i tried <a href="http://lactose.blogspot.com/2006/03/polyphasic-polystarting.html">poliphasic sleep</a> a while back becasue of steve too). Raw has been MUCH easier than i thought. I'm only on day 2 but already loving it. Yesterday i ate 6 banana, 10 clemetines, halve a bunch of celery, half a pack of grape tomatoes, 1/4 a cucumber and some nuts and (cheated on some grains) today i have been faithful, 2 bananas, 2 clemetines, and large naval orange. I'm not hungry at all and the fruit are delicious. I think that eating all that salty oily food that i normaly eat makes me forget how delicious plain fruit is. It kind of reminided me of that movie <em>Rattatoulle</em> where the mouse tries to teach taste by comparing the taste of eating two items seperatly or together, tomato and orange are really good together.<br /><br />Amir pointed out to me that a my consumption of bananas is unsustainable for the environment, that is if everyone ate 8 bannanas a day we would run out. I think he may be right since the current allocation of farm land is too arid for bananas but great for grains, I'll have to do some research on that. Anyway I'm not totally doing for the environment, It's mostly for me. So keep eating your grains becasue i don't want the bananas to run out.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-6450906138057718851?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-7821270887146857942007-12-12T15:36:00.000-06:002008-12-09T02:12:46.551-06:00Beat RSI / Carpel Tunnel with 1 simple adjustment<a href="http://2.bp.blogspot.com/_NP1V1twlVEU/R2BYZN6TSLI/AAAAAAAAAIg/QR3-iDoREXU/s1600-h/mouse.gif"><img id="BLOGGER_PHOTO_ID_5143207964711274674" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R2BYZN6TSLI/AAAAAAAAAIg/QR3-iDoREXU/s400/mouse.gif" border="0" /></a><br /><div>By definition to get a Repetitive Stress Injury (RSI) you have to make be doing some repetitive motion, like using a computer mouse. I've tried mouse pad wrist support, but those just forced me to bend my wrist more because my arm was anchored to the support. I've tried switching hands for a few days and it helps but it's very distracting. Then I had an aha moment that addresses the root cause and changes the motions that you make with your arm/wrist:<br /><br /><strong><span style="font-size:180%;">Change the mouse speed, every now and then.</span></strong><br /><br />The speed difference forces you to have to either move your whole arm or just move the mouse with your finger tips (i find this is easiest with a small form factor wireless mouse like this one <a href="http://www.amazon.com/Microsoft-Notebook-Optical-Mouse-B2P-00006/dp/B000A6NUUQ/lithemama-20">Microsoft Optical Wireless 4000</a> and a nice mouse pad, like the pro gamer ones <a href="http://www.amazon.com/Ideazon-ZFM-1000-Fragmat-Mouse-Pad/dp/B000HDJLVO/lithemama-20">Fragmat</a>.</div><div></div><div>Oh and for the love of god don't enable pointer trails, its soooo Win 3.11</div><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-782127088714685794?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-60155225993757968412007-11-27T00:05:00.007-06:002009-01-06T18:53:48.345-06:00Ikea Photography - Tent Softbox<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_NP1V1twlVEU/R0z0YNi9uiI/AAAAAAAAAHI/nQQp-IZRlfM/s1600-h/nassim,+ikea+softbox+tent+008.JPG"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://4.bp.blogspot.com/_NP1V1twlVEU/R0z0YNi9uiI/AAAAAAAAAHI/nQQp-IZRlfM/s320/nassim,+ikea+softbox+tent+008.JPG" alt="" id="BLOGGER_PHOTO_ID_5137749971713243682" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R0z2Udi9uoI/AAAAAAAAAH4/JL40rsTnKxI/s1600-h/Ikea+Softbox+II+051.JPG" style="text-decoration: none;"><br /><img style="margin: 0pt 0pt 10px 10px; float: right; clear:right; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R0z2Udi9uoI/AAAAAAAAAH4/JL40rsTnKxI/s400/Ikea+Softbox+II+051.JPG" alt="" id="Img1" border="0" /></a><b>Try </b><b><a href="http://nizzote.com/">NizzOTE</a></b><br /><small>Web based napkin / post it</small><br /><br /><b>Use <a href="http://notifyurl.com/">NotifyURL</a></b><br /><small>track your links</small><br /><script type="text/javascript">reddit_url='http://lactose.blogspot.com/2007/11/ikea-photography-tent-softbox.html'</script><br /><script type="text/javascript" src="http://www.reddit.com/r/photography/button.js?t=2"></script><br /><br /><span class="Apple-style-span" style="font-weight: bold;">Materials:</span><br /><ul><li>Ikea Tent $9<br /></li><li>Bit of wood,<br /></li><li>Ikea Shower Curtain Liner $3<br /></li><li> Mylar/ Foil $5<br /></li><li> Spray Adhesive $5<br /></li></ul>Store bought equivalent cost +$500<br /><br /><a href="http://lactose.blogspot.com/2007/03/hobo-diy-softbox-for-perfect-portraits.html">Last time i made a softbox out of tinfoil and card board,</a> the result worked (and got front page of digg.com) but it was a little small for anything larger than a face so i wanted a bigger one, but these things don't scale as well as expected (think a second about a 5' cardboard box.<br /><br />My kids have this tent from Ikea which is very basic since it's not meant for sleeping in, but perfect for re-purposing! I didn't have the heart to take away their tent so i splurged on a new one for less than 10 bucks. They got really excited when they saw me getting interested in their toy, so we played a bit while i built my plan of attack.<br /><br />The execution was simple, i cut out the blue stuff from the bottom and sewed it over the 'door' way on the side. Then i turned it inside out and used spay adhesive to glue down the mylar foil (from ax-man surplus). Then i placed 4 bits of velcroe to the edges and placed the shower curtain liner over it to trim to size. The bracket i made is a bit flimsy but consists of some squares clamping the cross of the tent poles and a ball bunjee to hold the flash in place.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R0z0kdi9ujI/AAAAAAAAAHQ/22ZtU4fP91c/s1600-h/nassim,+ikea+softbox+tent+010.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R0z0kdi9ujI/AAAAAAAAAHQ/22ZtU4fP91c/s400/nassim,+ikea+softbox+tent+010.JPG" alt="" id="BLOGGER_PHOTO_ID_5137750182166641202" border="0" /></a>Here i am cutting up the sheets of mylar to be spay adhered to the inside of the tent, while wathing some videos. Libby is playing classic gameboy Tetris on a gameboy that has a backlight. The cats being lazy.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_NP1V1twlVEU/R0z1RNi9ukI/AAAAAAAAAHY/qDUpjYQRAW8/s1600-h/Ikea+Softbox+II+053.JPG"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_NP1V1twlVEU/R0z1RNi9ukI/AAAAAAAAAHY/qDUpjYQRAW8/s400/Ikea+Softbox+II+053.JPG" alt="" id="BLOGGER_PHOTO_ID_5137750950965787202" border="0" /></a>I used little bits of Velcro to stick the the front diffuser on. This way i can remove the cover for whatever bizare reason, i haven't thought of yet.<br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_NP1V1twlVEU/R0z1t9i9ulI/AAAAAAAAAHg/GfSnjyrpucI/s1600-h/Ikea+Softbox+II+055.JPG"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_NP1V1twlVEU/R0z1t9i9ulI/AAAAAAAAAHg/GfSnjyrpucI/s200/Ikea+Softbox+II+055.JPG" alt="" id="BLOGGER_PHOTO_ID_5137751444887026258" border="0" /></a><br /><br /><br /><br /><br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_NP1V1twlVEU/R0z18Ni9umI/AAAAAAAAAHo/EDVshRQrqE8/s1600-h/Ikea+Softbox+II+059.JPG"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_NP1V1twlVEU/R0z18Ni9umI/AAAAAAAAAHo/EDVshRQrqE8/s200/Ikea+Softbox+II+059.JPG" alt="" id="BLOGGER_PHOTO_ID_5137751689700162146" border="0" /></a><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R0z2Idi9unI/AAAAAAAAAHw/Yx4Xgp0F7bE/s1600-h/Ikea+Softbox+II+063.JPG"><img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R0z2Idi9unI/AAAAAAAAAHw/Yx4Xgp0F7bE/s200/Ikea+Softbox+II+063.JPG" alt="" id="BLOGGER_PHOTO_ID_5137751900153559666" border="0" /></a><br /><span style=""><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /></span><span class="Apple-style-span" style="color: rgb(0, 0, 0);"><br /></span><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_NP1V1twlVEU/R0z2d9i9upI/AAAAAAAAAIA/nvojw5F9SDs/s1600-h/Ikea+Softbox+II+047.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_NP1V1twlVEU/R0z2d9i9upI/AAAAAAAAAIA/nvojw5F9SDs/s400/Ikea+Softbox+II+047.JPG" alt="" id="BLOGGER_PHOTO_ID_5137752269520747154" border="0" /></a><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_NP1V1twlVEU/R0z649i9urI/AAAAAAAAAIQ/dMV6uAdc0SY/s1600-h/Ikea-Softbox-II-029.JPG"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_NP1V1twlVEU/R0z649i9urI/AAAAAAAAAIQ/dMV6uAdc0SY/s400/Ikea-Softbox-II-029.JPG" alt="" id="BLOGGER_PHOTO_ID_5137757131423726258" border="0" /></a><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-6015522599375796841?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com9tag:blogger.com,1999:blog-14939153.post-5692462409314858512007-11-26T23:48:00.000-06:002008-12-09T02:12:49.649-06:00Ring Flash Classic<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zyTti9ufI/AAAAAAAAAGw/BS3aC7Fe6Eo/s1600-h/kat+ring+flash+003.JPG"><img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zyTti9ufI/AAAAAAAAAGw/BS3aC7Fe6Eo/s400/kat+ring+flash+003.JPG" alt="" id="BLOGGER_PHOTO_ID_5137747695380576754" border="0" /></a><div style="width: 55px; height: 80px; float: left;"><script> var digg_url = 'http://lactose.blogspot.com/2007/11/ring-flash-classic.html'; </script><script src="http://digg.com/api/diggthis.js"></script></div><br /> So i distilled the the elements of my first <a href="http://lactose.blogspot.com/2007/11/ring-flash.html"><br /> DIY ring flash</a> (cardboard and duct tape hobo version) into a more compact version that not only gets the cool catch light but also does the shadow halo effect (the large ring flash didn't do the shadow because the light source was larger than the subject, making the shadow hidden behind the subject). I also removed the diffuser material which was unnecessary in the first place and was only diminishing efficiency. This version is very similar to other models with one major distinction, this has a non-concentric construction which is responsible for a perfectly uniform light distribution without the use of diffusers or fancy prisms, just mylar, plastic, tape, and glue. Here is the construction sequence:<br /> <div style="clear: both;"> </div><br /> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zspti9ubI/AAAAAAAAAGQ/gQ-4X337i7w/s1600-h/zoo,+ringlight+002.JPG"><br /> <img style="margin: 10pt 10px 10px 10pt; float: left; cursor: pointer;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zspti9ubI/AAAAAAAAAGQ/gQ-4X337i7w/s320/zoo,+ringlight+002.JPG" alt="" id="Img1" border="0" /></a>First I cut a strip from a sheet of acrylic,<br /> i first cut with a scissor but found it easier to just score with a blade then snap<br /> from behind. The thickness should be the thickness of the flash head that you'll<br /> be using. Cut a similar strip of foil then use spay adhesive to join the two.<br /> <div style="clear: both;"> </div><br /> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_NP1V1twlVEU/R0ztINi9ucI/AAAAAAAAAGY/KW42H8Wj-Lw/s1600-h/zoo,+ringlight+003.JPG"><br /> <img style="margin: 10px; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_NP1V1twlVEU/R0ztINi9ucI/AAAAAAAAAGY/KW42H8Wj-Lw/s320/zoo,+ringlight+003.JPG" alt="" id="Img2" border="0" /></a>2. Cut to a length that when rolled<br /> up will fit around your lens. Then use some super glue to syick it in place as seen<br /> on the right.<br /> <div style="clear: both;"> </div><br /> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_NP1V1twlVEU/R0ztwNi9udI/AAAAAAAAAGg/nOQit6915m8/s1600-h/zoo,+ringlight+004.JPG"><br /> <img style="margin: 10px; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_NP1V1twlVEU/R0ztwNi9udI/AAAAAAAAAGg/nOQit6915m8/s320/zoo,+ringlight+004.JPG" alt="" id="Img3" border="0" /></a> 3. Now place it on a sheet of foam core<br /> and draw a circle thats the diameter of you ring plus 7.5" that way if you have<br /> the inner ring 1.5" from one side it will be 4x that distance from the other side.<br /> This is non-concentric placement of the inner ring is what makes this ringflash<br /> give a uniform light distribution, that sounds good to me.<br /> <div style="clear: both;"> </div><br /> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_NP1V1twlVEU/R0zu7di9ueI/AAAAAAAAAGo/tcWYahVtD8s/s1600-h/zoo,+ringlight+010.JPG"><br /> <img style="margin: 10px; float: left; cursor: pointer;" src="http://1.bp.blogspot.com/_NP1V1twlVEU/R0zu7di9ueI/AAAAAAAAAGo/tcWYahVtD8s/s320/zoo,+ringlight+010.JPG" alt="" id="Img4" border="0" /></a> 4. Cut out the panels and cover with<br /> foil. Then cut a hole for the ring an a larger hole in the other panel that .5"<br /> larger. 5. Cut out another strip as in the first step but make this one long enough<br /> to wrap around the outside. Then tape it all together.<br /> <div style="clear: both;"> </div><br /> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zy9ti9uhI/AAAAAAAAAHA/5LCt-tCpxBA/s1600-h/zoo,+ringlight+017.JPG"><br /> <img style="margin: 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zy9ti9uhI/AAAAAAAAAHA/5LCt-tCpxBA/s400/zoo,+ringlight+017.JPG" alt="" id="Img5" border="0" /></a> Here you see the classic halo shadow.<br /> NEXT UP: Make a giant softbox from an Ikea tent. <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/R0z7Gti9usI/AAAAAAAAAIY/lK-dJ10fzu4/s1600-h/zoo,-ringlight-036.JPG"><br /> <br /><br /> <br /> <img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R0z7Gti9usI/AAAAAAAAAIY/lK-dJ10fzu4/s400/zoo,-ringlight-036.JPG" alt="" id="Img6" border="0" /></a> <a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zyuti9ugI/AAAAAAAAAG4/B__Y0apxtkY/s1600-h/ringflah+final+004.JPG"><br /> <img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/R0zyuti9ugI/AAAAAAAAAG4/B__Y0apxtkY/s400/ringflah+final+004.JPG" alt="" id="Img7" border="0" /></a><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-569246240931485851?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-47772721809406497982007-11-20T13:17:00.000-06:002008-12-09T02:12:49.826-06:00Develop An Artistic EyeI saw an article<sup>1</sup> that compared the way several experienced artists eyes tracked an image vs the eyes of self proclaimed 'non-artists'. The difference was striking, the difference was compounded when the groups were asked to draw the images that they had looked at. <br /><br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://scienceblogs.com/cognitivedaily/2007/03/artists_look_different.php"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_NP1V1twlVEU/R0M1KNi9uaI/AAAAAAAAAGI/CVzYWHkcSxM/s400/vart2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5135006449683773858" /></a><br /><br />The non artists eyes focussed on the center and the details, eyes, lips, nose, sun, moon and when asked to draw a duplicate there rendering had disproportional details like large eyes, lips sun, moon and were poorly aligned.<br /><br />The artists eyes uniformly tracked the image with a random tracking pattern, seeing the 'big picture'.<br /><br />So for me I'm always trying to re-learn to look at something not for the details but for the larger shapes and proportions and when looking through a viewfinder I "frame for the edges", I practice by looking quickly at an image then close my eyes and try to rebuild that image in my head.(Ken Rockwell?) With photography it's easy to just try and just compose to get everything in the shot, but removing items is what makes the shot interesting, keep you guessing. In your head re-framing objects becomes effortless and you have to think about whole objects not just the details. Oh and skip rule of thirds!<br /><br />1. Eye tracking article <a href="http://scienceblogs.com/cognitivedaily/2007/03/artists_look_different.php">scienceblogs.com/cognitivedaily/2007/03/artists_look_diff...</a><br /><br />Also Check out this <a href="http://www.flickr.com/groups/strobist/discuss/72157603236084472/">Flickr discussion</a> on the topic, some Great tips!<br /><br /><i>"Choose a single subject and shoot it every day. Flowers, building, your kid... it doesn't matter, but you gotta come up with 60 different shots of the same thing."</i><br /><i>"Get <a href="http://www.amazon.com/exec/obidos/ASIN/0817441816/lithemama-20">Learning to See Creatively: Design, Color & Composition in Photography</a></i><br /><br /><script> var digg_url = 'http://lactose.blogspot.com/2007/11/develop-artistic-eye.html'; </script><script src="http://digg.com/api/diggthis.js"></script><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-4777272180940649798?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-39834679080519613442007-11-12T16:22:00.000-06:002007-11-14T10:57:07.647-06:00Ring Flash, Around the Lens Or Around The Subject :)<img src="http://riazmissaghi.com/riaz/lactose/riaz.jpg" />Get the flash off the camera, even a ring flash!!!<br /><br />The Ring Flash / Ring Light is a unique light source since it gives you a hard light but because the light comes from all around the lens the only shadow is a darkened halo around a subject, but the subject it self is uniformly lit.<br /><br />My favorite effect of a ring light is the ring in the eyes and the topographical effect of the highlights it creates on the face, normally a head on light source would flatten a face but the ring flash makes highlights on relief areas of the subject. I fell in love with the effect in this image by <a href="http://photo.net/photodb/photo?photo_id=3459536&amp;size=lg" target="_blank">Janosch Simon<img border="0" style="display:inline;" src="http://www.riazmissaghi.com/riaz/lactose/js.jpg" /></a> <small>(this images is SFW but his full portfolio may not be if you live in the US)</small><br /><br />Creating a ring flash can either be done with expensive flash units that are actually capable of a circular arc in a circular flash tube/bulb, or by modifying the straight round beam of a hot shoe flash unit.<br /><br />There seems to be two ways to go about it, diffuse the source then mask it, or use precise reflections to redirect the beam. The second would result in higher efficiency and a higher "focal length" of the flash since there would be more direct light.<br /><br />In order to control the size of the ring on the face you have to change the distance of the ring or the size of the ring. Having it off camera would allow you to take telephoto shots and still have large ring in the eyes ( a telephoto shot with a tradition on camera ring flash would be far away enough to reduce the reflection of the flash in the eyes to a bright dot)<br /><br />What i did was adapt this great design by <a href="http://blog.tommyimages.com/2007/05/pocket-ringlight.html" target="_blank"><img border="0" style="display:inline;" src="http://www.riazmissaghi.com/riaz/lactose/pocket-ring-flash.jpg" />The Feral Photographer</a> and made the following changes.<br /><br />1:made the circles NOT concentric, the light escaping from the diffuser causes the light level to get dimmer at the end opposite the flash, similar to , here it comes, the <b><a href="http://hyperphysics.phy-astr.gsu.edu/hbase/forces/isq.html" target="_blank">inverse square law</a></b>. So i sized and located the inner circle to so that the distance at the far end was four times less than the flash end this would result in a uniform distribution of the light.<br /><a href="http://www.riazmissaghi.com/riaz/lactose/ring-flash-top.jpg"><br /><img border="1" src="http://www.riazmissaghi.com/riaz/lactose/ring-flash-front-small.jpg" /></a><br /><br />2: Made it larger, this means that i could use longer zoom.<br /><br /><a href="http://www.riazmissaghi.com/riaz/lactose/ring-flash-back.jpg"><br /><img border="1" src="http://www.riazmissaghi.com/riaz/lactose/ring-flash-back-small.jpg" /></a><br /><br />Materials:<br />2 sheets of cardboard<br />mylar/tin foil<br />Tape, Knife<br />Diffuser material is a Target plastic bag<br /><br />Final Effect:<br /><br /><a href="http://riazmissaghi.com/riaz/lactose/jmweb.jpg"><img src="http://riazmissaghi.com/riaz/lactose/jmsmall.jpg" alt="" /></a><small>click image for super hi-res image (copyright yo)</small> <br /><br />So Alexander Johnson took my image and had is skilled way with it creating this image:<a href="http://riazmissaghi.com/riaz/lactose/alex-jmweb.jpg"><img src="http://riazmissaghi.com/riaz/lactose/alex-jmwebsmall.jpg" alt="" /></a><small>Post Processing by <a href="http://www.flickr.com/photos/apjohnson">Alexander Johnson</a> - Thanks!</small><br /><br /><a href="http://www.riazmissaghi.com/riaz/lactose/ring-flash-top.jpg"><br /><img border="1" src="http://www.riazmissaghi.com/riaz/lactose/ring-flash-top-small.jpg" /></a><br /><br /><a target="_blank" href="http://strobist.blogspot.com/">learn to light on strobist</a><br /><br /><script type="text/javascript">digg_url = 'http://lactose.blogspot.com/2007/11/ring-flash.html';</script><br /><script src="http://digg.com/tools/diggthis.js" type="text/javascript"></script><br /><br /><script type="text/javascript"><!-- google_ad_client = "pub-0408250782995330"; google_ad_width = 200; google_ad_height = 200; google_ad_format = "200x200_as"; google_ad_type = "image"; //2007-03-21: first google_ad_channel = "5353398210"; //--> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-3983467908051961344?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com7tag:blogger.com,1999:blog-14939153.post-81258951129417195392007-11-05T13:15:00.000-06:002008-12-09T02:12:50.024-06:00Apple TV in a USB stick!!!<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_NP1V1twlVEU/Ry9uGMaFuFI/AAAAAAAAAFU/PXqWTCf1UlY/s1600-h/sandisk-taketv-big.jpg"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_NP1V1twlVEU/Ry9uGMaFuFI/AAAAAAAAAFU/PXqWTCf1UlY/s400/sandisk-taketv-big.jpg" alt="" id="BLOGGER_PHOTO_ID_5129439553287206994" border="0" /></a><br /><br />the <a href="http://www.amazon.com/gp/product/B000XB2TXW/?tag=lithemama-20">Take TV</a> is a flash drive that decodes a xVid, Divx, mpeg4 and outputs to a s-video under $100! And it's controllable by remote.<br /><br />It's made by the folks who made my Sansa Express which has proven to be my favorite mp3 ever becasue its nononsense bright OLED Screen, cableless useage, ans seamless Rhapsody support. If the Take TV works this well i will be very pleased.<br /><br />Right now every time i have a video that i want to watch on TV i have to haul my computer next to the TV to connect the video and audio. The take TV come in 4/8gb flash stick shape and has a remote and TV dock, this totally rocks because it doesn't require a full blown HTPC but delivers 99% of what i would use a HTPC for. 4gb is about 5hours which is about double my usual tv episode serving.<br /><br />I could see this working great with those 'second car monitors' made to extend a portable dvd players screen. You would be able to load a few movies on the device and not have to burn them to DVD. If i'm not mistaken an iPod that has video would be able to do most of this except remote control, and of course would require a proprietary cable and iTunes to download from the PC. A nano video is only $149 and has a screen, but doesn't support xVid and Divx or have a remote, so if all you do is use it play stuff on your TV (oh hate iTunes) then get the take TV, other wise get a player that also has a screen.<br /><br />http://take.tv<br /><br /><script>reddit_url='http://lactose.blogspot.com/2007/11/apple-tv-in-usb-stick.html'</script><br /><script>reddit_title='Apple TV in a USB stick!!!'</script><br /><script language="javascript" src="http://reddit.com/button.js?t=1"></script><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-8125895112941719539?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com1tag:blogger.com,1999:blog-14939153.post-49830432997981152892007-10-15T23:14:00.001-05:002008-08-15T11:32:07.217-05:00Fix Reddit RSS Feed especially on NetVibes in FireFox<span style="font-style: italic;">** update ** looks like reddit has fixed this now, oh well it was fun to make.</span><br /><br />New Reddit seems to have mucked up the links in their feed which means i cant right click on a title to go straight to it on a new tab which is annoying enough for me to scrape the feed and generate a new one here:<br /><br /><strike>http://www.truthfulness.net/reddit/reddit.ashx</strike>[they have fixed it now so i killed this]<br /><br />Enjoy!<br /><br /><pre><span class="optional"><script>reddit_url='http://lactose.blogspot.com/2007/10/fix-reddit-rss-feed-especially-on.html'</script><br /><script>reddit_title='Fix Reddit RSS Feed especially on NetVibes in FireFox'</script></span><br /><script language="javascript" src="http://reddit.com/button.js?t=1"></script></pre><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-4983043299798115289?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-77645946869160409312007-10-15T15:54:00.001-05:002007-10-15T16:19:55.381-05:00"if you haven't done it by the time your 17 you'll never do it"This line haunts me to this day, uttered by my 7th grade math teacher who's teaching style made him the only teacher that i ever respected. (He did things like throw kids out of class, via the window; pretend to take 'pills' (mints); threw my slide rule back at me; pitched a cricket ball at top spin at the black board to wake everyone up; held a kid over the garbage can to make him pickup and eat his the lunch he wastefully chucked; gave me the day off when i aced tests; and finally called other teachers philistines) , hmm those things don't really give him much credibility do they? It wasn't a big deal to me when my 17 b-day passed but as time goes i on i get more and more worried that my time is out, especially when i see kids do amazing things like this, things i still dream of doing but never imagined were possible at 17:<br /><br />joey(17) - world traveling commercial photog, with people skills and business smarts (sells a $300 training book)<br />http://strobist.blogspot.com/2007/10/young-blood-chat-with-photographer-joey.html<br /><br />and this 17 girl making $70k/month on myspace<br />http://www.fastcompany.com/magazine/118/girl-power.html<br /><br />I feel like i am totally capable of doing these things but as time goes on i haven't made them happen ( sounds like i need an infomercial or something ) at 17 i had the time and drive but i didn't have the business sense or the people skills, over time I've rounded out my people and business ability but now i have precious little time.<br /><br />Polyphasic sleep is looking good again, I've quit caffeine addiction (including chocolate) and aiming at minimizing meat, i exercise every day and would be able to nap at work, but while taking naps every 4 hours would give me 6 more hours of waking time a day it's cost is 2 hours of time i usually spend awake with other people, and that is the hardest thing to overcome.<br /><br />I'm sure that I'll figure something out, so here's to proving my math teacher wrong while still putting my people connections first.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-7764594686916040931?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-6201369376198530142007-10-15T15:43:00.000-05:002007-10-15T15:53:00.904-05:00Flywheels are cool<a href="http://en.wikipedia.org/wiki/Flywheel_energy_storage">dont take my word for it</a><br /><br />Gyroscopes are like little anchors in the universe, screw the road: steer your car with relative inertia! driving on ice just got wayy better. Imagine doing donuts in a car with a central axis flywheel, just hit the brakes and drop the clutch on the flywheel for instant spinning action.<br /><br />It just so happens that these dynamics already come into play in existing cars, there's lots of stuff thats spinning wheels, engine flywheel, steering wheel (when I'm driving). In fact a large engine needs to have balanced piston action to keep from twisting the car.<br /><br />(next post: how your HDD iPod can screw up your balance)<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-620136937619853014?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-59485830511903845302007-09-10T14:48:00.000-05:002007-09-12T11:06:31.322-05:00Day 3 - caffinelessMood: Elevated.<br />Stress: Reduced<br />Digestive System: Happy<br /><br />I'm far less stressed out since quitting but i have a MONSTER headache. The substitution of caffeine for theobromine (chocolate) hasn't abated the headaches, but has certainly been a tasty.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-5948583051190384530?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com0tag:blogger.com,1999:blog-14939153.post-27318360879141936572007-09-07T17:10:00.000-05:002008-12-09T02:12:50.261-06:00How to quit coffee: Theobromine<div style="float:left; width:100px;"><br /><script>reddit_url='http://lactose.blogspot.com/2007/09/how-to-quit-coffee-theobromine.html'</script><br /><script>reddit_title='How to quit coffee: Theobromine'</script><br /><script language="javascript" src="http://reddit.com/button.js?t=2"></script><br /></div><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.chocolatesimports.com/LINDT-Lindt_Excellence_Dark_99_Cocoa_Ca"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://2.bp.blogspot.com/_NP1V1twlVEU/RuIGFUhUuZI/AAAAAAAAAFM/7duMJKfY1fc/s200/28587032.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5107651615869155730" /></a><br /><br />So, i do my best to avoid unhealthy things, for my general well being, and it just seems logical. I've quit artificial sweeteners, High Fructose Corn Syrup, Hydrogenated Oils (it's even in laffy taffy), and coffee. Ive relapsed on the coffee, which is strange because its the one drug that goes against everything i try to do (be alert more) in that it causes progressive sleep deprivation resulting in being awake more but being groggy during that wakefulness, and it makes reprogramming my circadian rhythm to adapt to poly-phasic sleep impossible because I don't fall asleep for the nessesary naps. Finally it contributes negatively to my only heath concern: high blood pressure.<br /><br />It is more addictive than nicotine because the social barriers for consumption are lower (i obviously don't smoke), but the withdrawal headaches and reduced focus in the morning seem overwhelmingly counter productive. My problem is that I'd rather be alert than alive.<br /><br />So i've noticed that cocoa has similar effects on me as coffee (actually i only drink espresso) but i always assumed that there was caffeine in cocoa, until an article on Reddit surfaced about the true chemical composition of the "caffeine" in cocoa. It's not caffeine it's Theobromine which is <a href="http://www.xocoatl.org/caffeine.htm">structurally similar methylxanthine</a> but has very different effects on the body: (quoted from above link)<br /><a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.xocoatl.org/img/the-caf.gif"><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px;" src="http://www.xocoatl.org/img/the-caf.gif" alt="" border="0" /></a><br /><br /><b>Theobromine</b><br />gentle<br />mild effect<br />very slow onset<br />long lasting<br />50% in bloodstream after 6 to 10 hrs<br />increases feeling of <b>well being</b><br />mild antidepressant<br />gentle, smooth, sensual stimulation<br />stimulates cardiovascular<br />system<br />stimulates muscular system<br />mild effect on central nervous system<br />almost no one is allergic<br />not addictive<br />no withdrawal symptoms<br />mild diuretic<br />stimulates the the kidneys<br /><br /><br /><b>CAFFEINE</b><br />intense<br />strong effect<br />fast acting<br />rapid dissipation<br />50% in bloodstream after 2 to 5 hrs<br />increases <b>alertness</b><br />increases emotional stress<br />jagged, nervous stimulation<br />stimulates cardiovascular system<br />stimulates respiratory system<br />strong effect on central nervous system<br />many people allergic<br />physically addictive<br />many proven withdrawal symptoms<br />extreme diuretic<br />requires large intake of fluids to balance the diuretic effect<br /><br />So today I had no caffeine, i had a lot of chocolate though(I'm to embarrassed to say exactly how much) but lets say more than one bar, this is dark chocolate though, it has much less fat and suguar than milk chocolate. When i say dark i mean at least 85%, really the rest is just something to stick the cocoa powder together so that its practical to eat. I'll eat 99% as soon as i get some more from Lindt it only has like 100cal per bar as opposed to 240 in milk chocolate. The result, lets call it<br />Day1: a work day (workdays include 7miles of intense cycling, i basically push my pedals until my legs go numb, or i get to work)<br /><br />I had some chocolate with my breakfast cereal, lunch and a snack(2 dove bars). The effects were intresting, on the one hand i suffered no headaches and i wasn't narcolepic at any point in the day, on the other i had no super clarity or rapid speech that i'm used to in the mornings. I feel no "withdrawl" or cravings but i am noticibly less alert. I'll try this out for as long as it takes to get a better idea of the effects, i may even invest in a blood pressure cuff.<br /><br />Chochcolate is supposed to have lots of other benefits:<br /><a href="http://www.sciencenews.org/articles/20040529/food.asp">relaxing</a><br /><a href="http://www.sciencenews.org/articles/20050813/food.asp">fight diabetes</a><br /><a href="http://biosingularity.wordpress.com/2007/02/25/flavanols-in-cocoa-may-offer-benefits-to-the-brain/">benefit the brain</a><br /><br />and Coffee has these problems:<br /><a href="http://www.blood-glucose-meter.org/blood-glucose-meter/caffeine_health_blood_sugar.html">blood sugar</a><br /><br />*i obviously have no major medical proof of shiz, but what to most people look like obvious connections the medical establishment calls <a href="http://www.nytimes.com/2007/09/05/us/05popcorn.html?em&ex=1189310400&amp;amp;amp;amp;amp;en=d4c8775e9c496393&amp;ei=5087%0A">"Not a definitive causal correlation"</a> (translation: "I'm too scared to say anything i wasn't taught in school")<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/14939153-2731836087914193657?l=lactose.blogspot.com'/></div>easymovethttp://www.blogger.com/profile/15095191791616791519easymovet@gmail.com2