<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/atom10full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" gd:etag="W/&quot;Ak4AQXg_fyp7ImA9WhRaEko.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192</id><updated>2012-02-15T05:09:00.647+01:00</updated><category term="curses" /><category term="linux" /><category term="subjective" /><category term="telefon" /><category term="snippet" /><category term="in English" /><category term="photoshop" /><category term="blip" /><category term="startup" /><category term="zus" /><category term="społeczeństwo" /><category term="acer-aspire-one" /><category term="django" /><category term="in Polish" /><category term="time machine" /><category term="workspace" /><category term="programowanie" /><category term="blipfiltr" /><category term="sf" /><category term="interview" /><category term="android" /><category term="opowiadanie" /><category term="blipcurses" /><category term="whatmakesmemad" /><category term="python" /><category term="software" /><category term="g1" /><category term="netbook" /><category term="mac" /><category term="advices" /><category term="film" /><category term="dating" /><category term="usability" /><category term="pomysł" /><category term="laptop" /><category term="rant" /><title>blog[.]codingslut[.]com</title><subtitle type="html" /><link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="http://blog.codingslut.com/feeds/posts/default" /><link rel="alternate" type="text/html" href="http://blog.codingslut.com/" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><generator version="7.00" uri="http://www.blogger.com">Blogger</generator><openSearch:totalResults>22</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/atom+xml" href="http://feeds.feedburner.com/Blogcodingslutcom" /><feedburner:info uri="blogcodingslutcom" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><entry gd:etag="W/&quot;DkcHQ3c9eSp7ImA9WhdREkU.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-7711888447218407397</id><published>2011-08-02T13:20:00.000+02:00</published><updated>2011-08-02T13:20:32.961+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2011-08-02T13:20:32.961+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in English" /><category scheme="http://www.blogger.com/atom/ns#" term="time machine" /><category scheme="http://www.blogger.com/atom/ns#" term="mac" /><category scheme="http://www.blogger.com/atom/ns#" term="advices" /><title>What folders do I exclude from my TimeMachine backups?</title><content type="html">TimeMachine is ment to be a one-for-all solution for backups on Mac. You can backup your entire hard drive (to an external storage, like TimeCapsule device or a USB-drive) and in case of a crash restore your system in an instant. This, however, requires lots of free space on the external drive.&lt;br /&gt;
&lt;br /&gt;
You can also backup only the important folders, then in case of a crash you have to do a reinstall of your system from your installation CD, then restore the backed up folders. This allows you to save some space on the drive you use for backups (hence, you can keep more backups or backup more then one Mac to the same drive).&lt;br /&gt;
&lt;br /&gt;
With some experimentation I found out a few folders that are good to exclude from the backups. The usual ones are:&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;b&gt;~/Downloads&lt;/b&gt; - this is where stuff downloaded from the Internet goes. Usually you can just re-download it when needed.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/Movies&lt;/b&gt; - well, I can re-download or re-rip the movies I have as well. Huge space saver.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/.Trash&lt;/b&gt; and &lt;b&gt;/.Trashes&lt;/b&gt; - who needs a trash backed up? Especially those folders change a lot.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/Applications&lt;/b&gt; and &lt;b&gt;/Applications&lt;/b&gt; - you can back those up, but also you can just reinstall the apps (especially if you installed them via Mac AppStore).&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;/Library/Audio&lt;/b&gt; - this is large folder, where I think GarageBand keeps its stuff. I don't use GB, so I don't need it backed up.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;/Library/Caches&lt;/b&gt; and &lt;b&gt;~/Library/Caches&lt;/b&gt; - caches. I don't want them backed up and they change often.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/Dropbox&lt;/b&gt; - it's where I have my Dropbox files. They're already backed up on Dropbox so, unless you don't trust them, you can exclude them. In case of a crash just resync your new installation.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/Library/Mail Downloads&lt;/b&gt; - Mail.app downloads attachments here. You can redownload it, can't you?&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/Music/iTunes/iTunes Media/Podcasts&lt;/b&gt; - podcasts can be downloaded again in case I'll want to listen to them again.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;/usr&lt;/b&gt;, &lt;b&gt;/sbin&lt;/b&gt;, &lt;b&gt;/bin&lt;/b&gt;, &lt;b&gt;/private/var&lt;/b&gt; - system directories, you'll get them with reinstallation of the OSX anyway.&lt;/li&gt;
&lt;/ul&gt;&lt;div&gt;Now, some my specific stuff:&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;If you're a Steam user, you can easily exclude the &lt;b&gt;~/Library/Application Support/Steam&lt;/b&gt; folder. With some games in here you can save some gigs of storage. Also it changes after every game...&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;If you're doing iPhone development, like I do, there are some more things to exclude:&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;/Developer&lt;/b&gt; is where the Xcode installation sits. You can redownload Xcode like any other app and reinstall it.&amp;nbsp;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;~/Library/Application Support/iPhone Simulator&lt;/b&gt; - exclude this if you don't need your installed on the simulator apps backed up. I don't.&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;However, you want to keep your ~/Library/Developer folder backed up, I think. This is where the application archives go. And also here you can find the .DSYM files that you will need in order to symbolicate crash reports (if your apps crash sometimes. mine do). So in case of a Mac drive crashing, you might need it at some point. So I keep it backed up, even it takes some serious space (an app of 700MBs I'm working on now generates some real storage needs. But I don't want to risk loosing it).&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;If you're interested to see which files take how much space (and possibly add something to the excludes list) you can use one of the solutions found here:&amp;nbsp;&lt;a href="http://www.macgurulounge.com/see-which-files-time-machine-backed-up/"&gt;See Which Files Time Machine Backed Up&lt;/a&gt;. I use Time Tracker. And it works.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;There are some important files I back up offsite, in case my home gets burned or hit by an asteroid. In the next post I describe some of the solutions available here and my experiences with them.&amp;nbsp;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-7711888447218407397?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/PU98G6b2JmWaStxwxPCSg8ppXNo/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PU98G6b2JmWaStxwxPCSg8ppXNo/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/PU98G6b2JmWaStxwxPCSg8ppXNo/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/PU98G6b2JmWaStxwxPCSg8ppXNo/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/qS71ivMuN8Q" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/7711888447218407397/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=7711888447218407397" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7711888447218407397?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7711888447218407397?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/qS71ivMuN8Q/what-folders-do-i-exclude-from-my.html" title="What folders do I exclude from my TimeMachine backups?" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2011/08/what-folders-do-i-exclude-from-my.html</feedburner:origLink></entry><entry gd:etag="W/&quot;C0IER3kyfip7ImA9WxFXGUw.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-2562129705478620509</id><published>2010-05-27T00:05:00.000+02:00</published><updated>2010-05-27T00:05:06.796+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-27T00:05:06.796+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="snippet" /><category scheme="http://www.blogger.com/atom/ns#" term="in English" /><category scheme="http://www.blogger.com/atom/ns#" term="django" /><title>Custom filtering in django admin</title><content type="html">Just today I needed to add a filtering to a Django-based site that was using the admin interface for the backend job (I'm really lazy, so this is best I could do... and, django's admin is one of those great things in Django you just love as soon as you realise it's customizable).&lt;br /&gt;
Adding filter to django's list-view is simple: you just add a small line of code like this:&lt;br /&gt;
&lt;blockquote style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;list_filter = ('location', )&lt;/blockquote&gt;to your ModelAdmin class.&lt;br /&gt;
Now if your model has a location field, you get this tiny, cute filter on the right side of the admin screen where you can select a location, and then you get only the objects that have this location. Easy, fast, ellegant.&lt;br /&gt;
My requirement was a bit different though. I can have many, many locations that none object is assigned to (in my case it's even a M2M relation, but it doesn't matter really), so selecting it for the filter would give me zero results. Zero, 0, null.&lt;br /&gt;
That'd be silly.&lt;br /&gt;
I didn't want the filter like this.&lt;br /&gt;
So my first try was to put a callable in the list_filter, not a field. Exception, it has to be a field.&lt;br /&gt;
A bit of googling and stackoverflowing showed me a hidden treasure: &lt;a href="http://djangosnippets.org/snippets/1051/"&gt;this snippet&lt;/a&gt;, an example of using not-documented FilterSpec in django.&lt;br /&gt;
Well, this snippet is even more complicated that what I needed. It appears that all I need is to create a FilterSpec class and insert it into the FilterSpec.filter_specs table (in front of any other, that's important!). Then tell the model to use this filter for the location field. Then - magic happens.&lt;br /&gt;
&lt;br /&gt;
So, my class looks like this:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;class RelatedFilterSpecWithResults(RelatedFilterSpec):&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def __init__(self, f, request, params, model, model_admin):&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; super(RelatedFilterSpecWithResults, self).__init__(f, request, params, model, model_admin)&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; self.lookup_choices = [(x.id, x) for x in models.Location.objects.exclude(inquiries = None)]&lt;/span&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;br style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;" /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;FilterSpec.filter_specs.insert(0, (lambda f: getattr(f, 'with_results', False), RelatedFilterSpecWithResults))&lt;/span&gt;&lt;/blockquote&gt;and then I only needed to add this:&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;location.with_results = True&lt;/span&gt;&lt;/blockquote&gt;to my model definition, where I had my location field defined.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-2562129705478620509?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/qrMbdUftgZlfBnksHN-cXPfAf4A/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qrMbdUftgZlfBnksHN-cXPfAf4A/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/qrMbdUftgZlfBnksHN-cXPfAf4A/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/qrMbdUftgZlfBnksHN-cXPfAf4A/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/Y2FoZNd7bAc" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/2562129705478620509/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=2562129705478620509" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/2562129705478620509?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/2562129705478620509?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/Y2FoZNd7bAc/custom-filtering-in-django-admin.html" title="Custom filtering in django admin" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.codingslut.com/2010/05/custom-filtering-in-django-admin.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0MDQ3k6fCp7ImA9WxFQEk4.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-824877957339429487</id><published>2010-05-07T14:31:00.000+02:00</published><updated>2010-05-07T14:31:12.714+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-07T14:31:12.714+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="rant" /><category scheme="http://www.blogger.com/atom/ns#" term="dating" /><category scheme="http://www.blogger.com/atom/ns#" term="in English" /><title>The problem of online dates</title><content type="html">In my &lt;a href="http://blog.codingslut.com/2010/05/online-vs-offline-dating.html"&gt;last post&lt;/a&gt; I pointed out some problems with both online and offline dating. Now I'll try to focus on getting rid of them (well, that's what I do, get rid of problems, and you can try &lt;a href="http://codingslut.com/"&gt;to hire me&lt;/a&gt;). So, the problem, in my very humble opinion, are the &lt;b&gt;tables&lt;/b&gt; you need to fill on those dating sites as well as the fact that the workflow is really different there then the 'traditional' one, we're used to (thanks to our genetic memory, you know, and being raised up by people who didn't have Internet to date online).&lt;br /&gt;
How should the online dating look like to work, then? Because, you know, that's the point. To make it work.&lt;br /&gt;
First, you need to tell something about yourself. Something that can't be completed in 3 minutes, you need to invest some time, damnit, don't push all the effort on the dating site, after all you're the one that gets laid.&lt;br /&gt;
And something that &lt;b&gt;won't&lt;/b&gt; be public. Noone would see this, trust me.&lt;br /&gt;
At least noone who'd be interested in you, or you'd be interested dating him/her.&lt;br /&gt;
The idea is to focus on &lt;b&gt;matching&lt;/b&gt; rather then &lt;b&gt;searching&lt;/b&gt;. The Internet doesn't really need more search engines, if you wanna search rather go &lt;a href="http://www.google.com/#hl=en&amp;amp;q=cute+boys"&gt;here&lt;/a&gt; or &lt;a href="http://www.google.com/#hl=en&amp;amp;q=hot+girls"&gt;here&lt;/a&gt;.&lt;br /&gt;
Ok, let's do matching. Some kind of machine should take all the information you've filled in, all information others filled in, and find a best-matching pairs. Don't ask me about this machine - I believe it should be human-powered (&lt;i&gt;actually, if you're reading this post, and are interested in dating [either offline or online] with human... you should trust them; if you'd prefer a computer to match you, why the heck don't you date computers? they're great, smart and won't cheat on you&lt;/i&gt;).&lt;br /&gt;
So, the implementation of &lt;i&gt;matching&lt;/i&gt; is out of topic for this post. What isn't is the process of &lt;i&gt;fitting the matches&lt;/i&gt;. Because, you know, the date you'd have based on this match would suck. Believe me. They always do.&lt;br /&gt;
But knowing that your date sucked, the &lt;i&gt;matching machine&lt;/i&gt; can propose you another possible date, better then the last one.&lt;br /&gt;
And that's the key to moving successful offline dating (which is also iterations-based) to online ones.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;...to be continued. &lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-824877957339429487?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/CnqRyDrfuo2DBNdFIpr5sVAlDVU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CnqRyDrfuo2DBNdFIpr5sVAlDVU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/CnqRyDrfuo2DBNdFIpr5sVAlDVU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/CnqRyDrfuo2DBNdFIpr5sVAlDVU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/Jk7wmM1YkSE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/824877957339429487/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=824877957339429487" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/824877957339429487?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/824877957339429487?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/Jk7wmM1YkSE/problem-of-online-dates.html" title="The problem of online dates" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2010/05/problem-of-online-dates.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUEDSH88eCp7ImA9WxFQEk8.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-7539290009360276914</id><published>2010-05-07T11:14:00.000+02:00</published><updated>2010-05-07T11:14:39.170+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2010-05-07T11:14:39.170+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="rant" /><category scheme="http://www.blogger.com/atom/ns#" term="dating" /><category scheme="http://www.blogger.com/atom/ns#" term="in English" /><title>Online vs offline dating</title><content type="html">So, in today's world if you're single (or you're not, but you're an ass) you can either date online or offline.&lt;br /&gt;
Lets look into the differences between those 2.&lt;br /&gt;
Offline dating (some call it a 'traditional' dating, but traditionally you should just wait until your parents talk to the girl's parents and agree on the price...) is all about going out and meeting people. Then, when met, you talk to each other (usually), get to know each other, get obsessed with each other, fall in love, get married, get kids, get old and get grandchildren.&lt;br /&gt;
But, stop reading this and go out for 5 minutes. You'll see hundreds of people (if you don't, consider moving to NYC or some place like this, for the sake of reading this post). You don't expect to ask all them out, do you? The gotta be some way to decide which people you'd ask out and which you wouldn't even if your life depended on that.&lt;br /&gt;
There comes the 'first impression'. Or so they call it. It's basically the &lt;b&gt;thing&lt;/b&gt; you can tell by looking at dozens of people and suddenly you think "oh my GOD, she's so hot. BOOM". Then you'd probably just run away because you'd know with such a hot girl you don't stand a chance, she's already taken and got this really cute boyfriend, who used to be a high-school football star and now he's a banker, makes lots of lots of money, so you just run away.&lt;br /&gt;
&lt;b&gt;But&lt;/b&gt; if you actually come to her and try to talk you can find out this wonderful boyfriend of hers was just a jerk who left her for her best friend, so you can try... So you talk to this &lt;b&gt;hot, really hot &lt;/b&gt;girl. And ask her out. And again. Only to find out that's she's so, so stupid you would have left her for her best friend too, but this best friend is already taken by the banker, damn.&lt;br /&gt;
So yeah. Here's the problem of first impressions: they usually are used to distinguish those worth talking to from all the rest - but also usually they fade away as soon as you know this person better; and they usually leave you stupid, standing there and bumping your head against the wall screaming "how could've I been so stupid, how, how, how?".&lt;br /&gt;
When it comes to &lt;b&gt;online dating&lt;/b&gt;, the workflow is a bit of different.&lt;br /&gt;
You find the person on one of those stupid websites where you gotta fill &lt;b&gt;tables&lt;/b&gt; with data like "5 things you like", "5 things you dislike", "how do you look like?". How do you fill those form? Put in some stupid stuff that would attract some other users to you - so there's virtually no way to think it's an honest description.&lt;br /&gt;
But OK, lets assume you've found someone who's just great online. You chat with her for days and nights, you get the actual impression of knowing her well. You know her sense of humour, her interests, what books she likes, how many times she saw Star Trek TOS, all that stuff that really matters. You both know your looks too, because you emailed your photos to each other. Then you decide to meet in person. And &lt;b&gt;BOOM&lt;/b&gt; - you both get very disappointed. &lt;b&gt;Why the heck&lt;/b&gt;? &lt;b&gt;What just happened&lt;/b&gt;? This should be sooo great.&lt;br /&gt;
Well, admit it. You are visual. So is she. While you two were talking over the net, even &lt;b&gt;before&lt;/b&gt; exchanging &lt;i&gt;pics&lt;/i&gt;, you had her imagination based on her online profile. So had she. And remember, &lt;i&gt;online profiles are never true&lt;/i&gt;. Or almost never.&lt;br /&gt;
The problem with &lt;i&gt;online dating&lt;/i&gt; is, it's based on completely different workflow then offline ones.&lt;br /&gt;
Everything you know is based on those stupid tables/questionnaires everyone fills out. And never update. And never tells the truth there.&lt;br /&gt;
So what's the solution? Because, believe me, there is one... Well, the solution will come in the next post.&amp;nbsp;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-7539290009360276914?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/_5P7VSeTLcHdsGDKhT-cL4XfzH8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_5P7VSeTLcHdsGDKhT-cL4XfzH8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/_5P7VSeTLcHdsGDKhT-cL4XfzH8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/_5P7VSeTLcHdsGDKhT-cL4XfzH8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/DKDpo30WYa0" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/7539290009360276914/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=7539290009360276914" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7539290009360276914?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7539290009360276914?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/DKDpo30WYa0/online-vs-offline-dating.html" title="Online vs offline dating" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2010/05/online-vs-offline-dating.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUIDQH0-eyp7ImA9WxBTGUs.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-8832147405040006408</id><published>2009-12-16T12:39:00.000+01:00</published><updated>2009-12-16T12:39:31.353+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-16T12:39:31.353+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="społeczeństwo" /><category scheme="http://www.blogger.com/atom/ns#" term="rant" /><category scheme="http://www.blogger.com/atom/ns#" term="zus" /><category scheme="http://www.blogger.com/atom/ns#" term="blip" /><title>rozmowa z ZUSem</title><content type="html">Dziś zostałem na &lt;a href="http://www.blip.pl/"&gt;blipie&lt;/a&gt; zagadnięty przez &lt;a href="http://blip.pl/users/zus/dashboard"&gt;^zus&lt;/a&gt;. Zaczęło się niewinnie...&lt;br /&gt;
O, tak: &lt;a href="http://blip.pl/dm/26910836"&gt;http://blip.pl/dm/26910836&lt;/a&gt;. Naprawdę miło...&lt;br /&gt;
&lt;br /&gt;
Żeby się lepiej czytało, wrzucam to tutaj.&lt;br /&gt;
Można też użyć &lt;a href="http://blipfiltr.codingslut.com/"&gt;blipFiltra &lt;/a&gt;do prześledzenia wiadomości między mną z ZUSem: &lt;a href="http://blipfiltr.codingslut.com/blip/kender/dm/zus/"&gt;http://blipfiltr.codingslut.com/blip/kender/dm/zus/&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
A oto dyskusja. &lt;i&gt;&lt;b&gt;Przypisy&lt;/b&gt;&lt;/i&gt; - moje...&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;zus: &lt;/b&gt;Po zdjęciu poznaję, że Pan jeszcze młody. Jak lata przyjdą, trzeba będzie starać się o rentę, to zapewne zmieni Pan zdanie. &lt;i&gt;&lt;b&gt;no jakże mi miło. kilka filtrów w&amp;nbsp; &lt;a href="http://www.gimp.org/"&gt;gimpie&lt;/a&gt; i już młody.&lt;/b&gt;&lt;/i&gt;&lt;a href="http://www.gimp.org/"&gt;&lt;/a&gt;&lt;br /&gt;
&lt;b&gt;ja: &lt;/b&gt;Och, a a propos czego to? I skąd stwierdzenie, że będę się starać o rentę?&lt;br /&gt;
&lt;b&gt;ja: &lt;/b&gt;Oraz skąd wniosek, że na starość zostanę złodziejem? Czuję się tym osobiście urażony, Drogi ZUSie (naprawdę drogi, sic!)&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; Ależ proszę powstrzymać emocje. Po prostu młodzi nie rozumieją do czego służy ZUS, bo nie jest im do niczego potrzebny...&lt;br /&gt;
&lt;b&gt;zus: &lt;/b&gt;...ale starsi zaczynają to rozumieć, kiedy przychodzą choroby i nie można pracować. I wtedy właśnie przychodzi się do ZUS&lt;br /&gt;
&lt;b&gt;ja:&amp;nbsp;&lt;/b&gt;Ależ ja doskonale rozumiem. Rozumiem też, że równie dobrze mógłbym SWOJE pieniądze trzymać pod poduszką i na starość wydać, czyż nie?&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;ZUS, z tego co mi wiadomo, nie *produkuje* pieniędzy. Oraz ma mniejsze stopy zwrotu inwestycji niż, dajmy na to, zwykła lokata bankowa. Czy się mylę?&lt;br /&gt;
&lt;b&gt;zus: &lt;/b&gt;Oj to dopiero wtedy poczułby Pan ile kosztuje "prywatne ubezpieczenie". Ile by Pan musiał uzbierać pod tą poduszką, żeby starczyło Panu na lata życia? &lt;i&gt;&lt;b&gt;właśnie, zastanówmy się, ile...&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; załóżmy, że miesięcznie oddaję do ZUSu 1000zł. Bezpieczne założenie, czyż nie?&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; ZUS nie ma żadnych stóp zwrotu z inwestycji, bo nie został powołany do inwestowania... &lt;b&gt;&lt;i&gt;szkoda...&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; rocznie: 12k pln. Pracuję od, bezpiecznie zakładając, 25 roku życia do 60. 35 lat razy 12k pln = 420 tysięcy&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; po tym 60 roku pożyję sobie, powiedzmy, do 80-ki. czyli, 20 lat. czyli, 21 tysięcy rocznie. czyli 1750zł miesięcznie.&lt;br /&gt;
&lt;b&gt;ja: &lt;/b&gt;to przy założeniu, że odkładam sobie sam te pieniądze i trzymam je na rachunku niwelującym inflację. I że przestaję pracować w wieku 20 lat.&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; ZUS mi tego nie zagwarantuje, prawda? W szczególności tego, że *nie ulegnie zmianie* moment przejścia na emeryturę&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; Kłopot w tym drogi Panie, że ZUS to nie tylko emerytura. Przez całe życie pobiera pan z ZUS także zasiłki, renty itp. &lt;b&gt;&lt;i&gt;tu mi dowalił&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; Ale Pan tego jeszcze nie wie, bo każdemu młodemu wydaje się, że będzie zawsze piękny i zdrowy &lt;i&gt;&lt;b&gt;no ba! ja miałbym nie być piękny? &lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; do tego - jeśli moje pieniądze idą do ZUSu, ja umieram w rok po przejściu na emeryturę, to czy te moje pieniądze podlegają postępowaniu spadkowemu?&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; "Przez całe życie pobieram"? o.O Nie pobrałem jak dotąd ani grosza, naprawdę.&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; A słyszał pan o rencie rodzinnej? Pańska żona i dzieci mogą dostawać świadczenie z pańskich składek... &lt;b&gt;&lt;i&gt;moja żona i dzieci też płacą/będą płacić... &lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; ja nie pytam o rentę, ja pytam o odłożone przeze mnie pieniądze i postępowanie spadkowe&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; czy na przykład mogę zdecydować, żeby trafiły one nie do żony, a do kochanki? Chyba nie...&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; Widzę, że lubi się pan zadowalać plotkami, zamiast spróbować zdobyć rzetelną wiedzę na temat systemu ubezpieczeniowego&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; Wobec tego proszę mnie oświecić. Podać podstawę prawną. Bo rozumiem, że pieniądze, które wpłaciłem przez okres pracy są w jakiś sposób kontrolowane&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; System jest znacznie bardziej skomplikowany, niż jest to w stanie pojąć większość tzw. internetowych publicystów &lt;b&gt;&lt;i&gt;blogerzy - jesteście głupi&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; i, w przypadku mojej śmierci, zostaną *zwrócone* spadkobiercom w kwocie wpłat powiększonej o wskaźnik inflacji&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; A dlaczego mają być zwracane? Czy jak pan ubezpiecza mieszkanie i pożaru nie ma, to PZU zwraca Panu składkę?&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; Nie. Ale 1) nie dyskutujemy o porównaniu różnych ubezpieczeń, tylko o porównaniu ubezp. w ZUS z trzymaniem pieniędzy pod poduszką&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; 2) ubezpieczenie od pożaru NIE JEST obowiązkowe&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; 3) jeśli ubezpieczam się od pożaru na, na przykład, okres 2 lat i wybuchnie pożar, to dostanę pieniądze.&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; W ZUS ubezpiecza się pan od pewnego rodzaju ryzyka (a nawet kilku) które jest kwestią społeczną - proszę zajrzeć na mój blog &lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; jeśli zostanie podniesiony wiek emerytalny, to pomimo ubezpieczenia mogę nie dostać pieniędzy&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; Pańskie mieszkanie jest pańską sprawą, ale pańska starość, czy choroba jest problemem społecznym &lt;i&gt;&lt;b&gt;biedne społeczeństwo. myślę jednak, że mieszkanie jest w takim samym stopniu problemem społecznym&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; co jest zmianą treści umowy (bo przecież się ubezpieczam, więc umowa jakaś jest) w trakcie jej trwania.&lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; O Mój Boże. "Problemem Społecznym"? To raczej Pański pracodawca jest problemem społecznym.&lt;br /&gt;
&lt;b&gt;zus:&lt;/b&gt; Ale o czym Pan mówi? Czy zmiana wieku emerytalnego ma wejść w życie już w przyszły poniedziałek?&lt;br /&gt;
&lt;b&gt;zus: &lt;/b&gt;Drogi Panie, miałem nadzieję sprowokować pana do myślenia, ale skoro jest pan odporny - to życzę dużo zdrowia i się pożegnam &lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; proszę mi powiedzieć, kiedy miała miejsce ostatnia zmiana przepisów dotyczących wieku emerytalnego. &lt;br /&gt;
&lt;b&gt;ja:&lt;/b&gt; Do tego nie musi Pan nawet myśleć, więc powinno się udać... jakoś...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;Kurtyna. &lt;/b&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-8832147405040006408?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/0AmIkagPUTghfrSu26B67lnU1RE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0AmIkagPUTghfrSu26B67lnU1RE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/0AmIkagPUTghfrSu26B67lnU1RE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/0AmIkagPUTghfrSu26B67lnU1RE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/NtRrOOJ5BzM" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/8832147405040006408/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=8832147405040006408" title="Komentarze (4)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8832147405040006408?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8832147405040006408?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/NtRrOOJ5BzM/rozmowa-z-zusem.html" title="rozmowa z ZUSem" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>4</thr:total><feedburner:origLink>http://blog.codingslut.com/2009/12/rozmowa-z-zusem.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkQHQH0-eSp7ImA9WxNUEUg.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-1096997235221519705</id><published>2009-11-02T09:17:00.001+01:00</published><updated>2009-11-02T09:25:31.351+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-02T09:25:31.351+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="społeczeństwo" /><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><title>refleksje cmentarne, cz. 1.</title><content type="html">&lt;em&gt;1 Listopada.&lt;/em&gt;&lt;br /&gt;W zeszłym roku popełniłem &lt;a href="http://blog.codingslut.com/2008/11/cmentarze.html"&gt;cmentarną refleksję&lt;/a&gt;. To już chyba tradycja będzie (1 wpis na blogu rocznie, my goal).&lt;br /&gt;&lt;br /&gt;Święto Wszystkich Świętych w kalendarzu kościelnym. W niekościelnym - dzień odsypiania kaca po imprezie &lt;a href="http://pl.wikipedia.org/wiki/Halloween"&gt;Halloween&lt;/a&gt;, czasem odwiedzania grobów. Na cmentarzach. I ja odwiedziłem parę, stąd kilka przemyśleń natury tyleż nudnej co ogólnej.&lt;br /&gt;&lt;h4&gt;Cmentarze&lt;/h4&gt;&lt;br /&gt;Mam wrażenie, że cmentarze są zabijane przez urbanizację. Tworzone, kiedyś, w miastach (lub na ich obrzeżach), dziś otoczone są ze wszystkich stron przez ulice, budynki mieszkalne... co w naturalny sposób ogranicza ich możliwości rozrostu.&lt;br /&gt;A, bądźmy szczerzy, martwych będzie przybywać.&lt;br /&gt;Nie wiem, jakie są u nas przepisy dotyczące pochówku, dalszej eksploatacji zwłok oraz miejsc cmentarnych, ale już teraz widać, że miejsc będzie brakować. Ceny rosną, znaczy że popyt zaczyna przeważać nad podażą.&lt;br /&gt;Rozwiązań jest kilka. Oczywiście, można swoje szczątki zapisać jakiejś uczelni, ale, jak pokazuje praktyka, &lt;a href="http://www.rynekzdrowia.pl/Listy,Aktualnosci/donacja-zwlok,1275.html"&gt;nie jest to takie proste&lt;/a&gt;.&lt;br /&gt;Można się spalić (bynajmniej nie ze wstydu), czyli skremować. Jeśli chodzi o oszczędność miejsca na pewno jest to FTW. Od 1960 roku Kościół Katolicki zezwala na kremację (pod pewnymi &lt;a href="http://pl.wikipedia.org/wiki/Kremacja#Katolicyzm"&gt;warunkami&lt;/a&gt;). Jeśli chodzi o koszta takiej imprezy, wychodzi pewnie taniej o ile mamy szczęście być chowani w sporej miejscowości (gdzie egzystuje firma spalarska). Jeśli nie, finansowo mogą nas (a w zasadzie już-nie-nas) wykończyć koszta transportu zwłok (do spalenia) i prochów (do miejsca pochówku).&lt;br /&gt;Zastanawia mnie natomiast, dlaczego nie mogę się pochować na swoim własnym terenie. Dlaczego muszę płacić haracz właścicielowi ziemi, na której stoi sobie uznany przez państwo cmentarz (dla katolików istotne jest pochowanie w &lt;em&gt;ziemi poświęconej&lt;/em&gt;. Ale poświęcić może każde miejsce pochówku probosz parafii lub osoba przezeń upoważniona).&lt;br /&gt;Dlaczego, przy takiej ilości nieużytków na wsiach w Polsce, nie ma instytucji prywatnych cmentarzy? Kto za to bierze i jak dużą kasę?&lt;br /&gt;Zniknęła tradycja chowania rodziny na ich własnym terenie (może dlatego, że zniknęły ogrody pałacowe, chlip chlip).&lt;br /&gt;&lt;br /&gt;Oddajcie mi wolność umierania kiedy chcę i wolność leżenia po śmierci gdzie chcę!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-1096997235221519705?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/iI1jfLNVpZ5bnZscVazjMSx4RvA/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iI1jfLNVpZ5bnZscVazjMSx4RvA/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/iI1jfLNVpZ5bnZscVazjMSx4RvA/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/iI1jfLNVpZ5bnZscVazjMSx4RvA/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/ytRAyPHVvQk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/1096997235221519705/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=1096997235221519705" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/1096997235221519705?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/1096997235221519705?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/ytRAyPHVvQk/refleksje-cmentarne-cz-1.html" title="refleksje cmentarne, cz. 1." /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.codingslut.com/2009/11/refleksje-cmentarne-cz-1.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEYCSX4_cSp7ImA9WxVWFEQ.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-6446065991160915199</id><published>2009-02-24T08:35:00.004+01:00</published><updated>2009-02-24T18:22:48.049+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-02-24T18:22:48.049+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="rant" /><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="g1" /><category scheme="http://www.blogger.com/atom/ns#" term="telefon" /><category scheme="http://www.blogger.com/atom/ns#" term="android" /><category scheme="http://www.blogger.com/atom/ns#" term="subjective" /><title>Moje pierwsze wrażenia z G1 Android</title><content type="html">G1 to telefon, &lt;a href="http://www.androidg1.org/"&gt;o ten&lt;/a&gt;.&lt;div&gt;Moje pierwsze wrażenia z jego używania, na początek trochę narzekania:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Dość gruby, ale to chyba normalne, w końcu mieści wysuwaną klawiaturę QWERTY.&lt;/li&gt;&lt;li&gt;Przez to wysuwanie robi wrażenie mało solidnego - rusza się jego tylna część. Nie wiem, czy to tylko ja, czy co. Pewnie z czasem się przyzwyczaję.&lt;/li&gt;&lt;li&gt;Bateria nie robi specjalnie dobrego wrażenia, ale w końcu molestuję go w ramach testów dość mocno - WiFi, GPS, odtwarzanie muzyki z głośniczka... Poza tym - bateria zachowuje się dziwnie IMHO. Najpierw wskazuje &lt; 15% naładowania, telefon sam się wyłącza, tylko po to, żeby po włączeniu go po 10 minutach (bez ładowania) wskazywać 45% naładowania. Czy to normalne?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-weight: bold;"&gt;Poważny&lt;/span&gt; jak dla mnie zarzut, dotyczący samego telefonu - słuchawki podłączamy przez złącze miniUSB. Dlaczego nie można było dołożyć minijacka, dla wszystkich, którzy, jak ja, mają swoje ulubione słuchawki?&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Teraz trochę wazeliny:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Dobra jakość dźwięku, z wbudowanego głośnika oraz słuchawek&lt;/li&gt;&lt;li&gt;Wygodna, naprawdę, klawiatura QWERTY. Trochę wkurza konieczność jej rozkładania, jak chcemy coś napisać (przydałaby się ekranowa klawiatura w momencie, gdy telefon jest złożony), ale ogólnie - ok.&lt;/li&gt;&lt;li&gt;Całkiem sporo przydatnych (i masa nieprzydatnych) aplikacji w Android Store. Choćby ta, dzięki której można wyłączyć sieć 3G (mimo, że formalnie to niemożliwe). Dwa skróty obok siebie na pulpicie - &lt;span style="font-style: italic;"&gt;ToggleWiFi&lt;/span&gt; i to - i można jechać ;) &lt;/li&gt;&lt;li&gt;Synchronizacja &lt;span style="font-style: italic;"&gt;stuffów &lt;/span&gt;(mail, google talk, kontakty, kalendarz) z Googlem jest fajna. Coś jak synchronizacja z  &lt;span style="font-style: italic;"&gt;Exchange&lt;/span&gt; dla ubogich :) Mi to wystarcza, brakuje tylko jednego feature'a (ale to w aplikacjach Google'a, a nie w androidzie) - łączenia kontaktu z eventem w kalendarzu (urodziny, rocznica, a choćby zwykłe spotkanie).&lt;/li&gt;&lt;li&gt;Google Maps jest dobre, chodzi szybko, i, zdaje się, zużywa zauważalnie mniej łącza niż wersja na Symbiana. A może to tylko moje wrażenie?&lt;/li&gt;&lt;/ul&gt;Ogólnie - podsumowując - system Android wygląda bardzo zachęcająco. Pozostaje mieć nadzieję, że zbierze się w'okół niego community niezależnych developerów, którzy będą tworzyć aplikacje. Może jakieś poważniejsze, niż tylko wyświetlające info, &lt;span style="font-style: italic;"&gt;czy dziś jest poniedziałek, czy nie&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Telefon G1 - ciężko wydać jednoznaczną opinię, po tak krótkim używaniu. Jest spory (jeśli chodzi o rozmiary) i, jak pisałem, robi wrażenie niesolidnego. Coś mu się rusza i tyle...&lt;br /&gt;Ale może to kwestia przyzwyczajenia? Może tak musi być (Nokia Communicator też była wielgachna, nie?)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-6446065991160915199?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/gEZyIqoZsFYpji2ULUFK4TizwcU/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gEZyIqoZsFYpji2ULUFK4TizwcU/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/gEZyIqoZsFYpji2ULUFK4TizwcU/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/gEZyIqoZsFYpji2ULUFK4TizwcU/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/_jSH2gkvU_o" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/6446065991160915199/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=6446065991160915199" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/6446065991160915199?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/6446065991160915199?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/_jSH2gkvU_o/moje-pierwsze-wrazenia-z-g1-android.html" title="Moje pierwsze wrażenia z G1 Android" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2009/02/moje-pierwsze-wrazenia-z-g1-android.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIDSHo-eyp7ImA9WxVRE0g.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-2957474689768817717</id><published>2009-01-19T10:31:00.001+01:00</published><updated>2009-01-19T10:32:59.453+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-19T10:32:59.453+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="startup" /><category scheme="http://www.blogger.com/atom/ns#" term="interview" /><title>Jak znaleźć programistę? [część druga, czyli jak znaleźć kogoś dobrego?]</title><content type="html">Seria rozmów, o których &lt;a title="wspominałem" href="http://blog.codingslut.com/2009/01/jak-znale-programist-cz-pierwsza-czyli.html" id="lxcv"&gt;wspominałem&lt;/a&gt; dość szybko może doprowadzić do frustracji. Zapytałem się więc - co zrobić, żeby zatrudnić programistów? Nie ważne, na użytek tego startupu o którym pisałem, &lt;a title="czegoś swojego" href="http://blog.codingslut.com/2008/11/pomys-nie-ma-mniepl.html" id="ob.i"&gt;czegoś swojego&lt;/a&gt;, czy czegokolwiek?&lt;br /&gt;Najpierw - kogo chcemy zatrudnić. Kogokolwiek? Kogoś, na kogo nas stać? Najlepszych na rynku? To zależy, co chcemy robić, ale jeśli nie chcemy wpaść w pułapkę &lt;a title="zarządzania" href="http://www.codinghorror.com/blog/archives/001205.html" id="dadh"&gt;zarządzania&lt;/a&gt;, powinniśmy celować w tych najlepszych. Którzy sami są w stanie robić co do nich należy, takim na przykład PM-om zostawiając izolowanie ich od złego otoczenia.&lt;br /&gt;Żeby przyciągnąć najlepszych będziemy musieli ich jakoś przekonać.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;niektórzy przyjdą pracować, bo pomysł im się spodoba&lt;/li&gt;&lt;li&gt;niektórzy, bo zapłacimy dobrze&lt;/li&gt;&lt;li&gt;niektórzy, bo mamy ładny &lt;a title="ekspres do kawy" href="http://coffeegeek.com/guides/howtobuyanespressomachine" id="tnt3"&gt;ekspres do kawy&lt;/a&gt;, &lt;a title="wygodne krzesło" href="http://www.codinghorror.com/blog/archives/000240.html" id="rhxw"&gt;wygodne krzesło&lt;/a&gt; i w ogóle &lt;a title="spełniamy jakieś-tam standardy" href="http://www.codinghorror.com/blog/archives/000666.html" id="xjbh"&gt;spełniamy jakieś-tam standardy&lt;/a&gt;; czyli bo może być miło.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;ktoś może przyjść, bo zna tylko &lt;a title="ektremalnie niszową technologię" href="http://www.python.org/" id="shf9"&gt;ektremalnie niszową technologię&lt;/a&gt;, podczas gdy wszyscy chcą tylko-li &lt;a title="javowców i .NETowców" href="http://www.infopraca.pl/" id="lpok"&gt;javowców i .NETowców&lt;/a&gt;.&lt;br /&gt;  &lt;/li&gt;&lt;/ul&gt;Jak już wiemy, &lt;b&gt;czym&lt;/b&gt; przyciągnąć najlepszych, pozostaje ich znaleźć. Jak to się robi w &lt;span style="font-weight: bold;"&gt;.pl&lt;/span&gt;, poza pytaniem znajomych?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-2957474689768817717?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/EwaSVmIIahQ0nwjqbV061o1J_3c/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EwaSVmIIahQ0nwjqbV061o1J_3c/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/EwaSVmIIahQ0nwjqbV061o1J_3c/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/EwaSVmIIahQ0nwjqbV061o1J_3c/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/_Q91rItRup8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/2957474689768817717/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=2957474689768817717" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/2957474689768817717?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/2957474689768817717?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/_Q91rItRup8/jak-znale-programist-cz-druga-czyli-jak.html" title="Jak znaleźć programistę? [część druga, czyli jak znaleźć kogoś dobrego?]" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2009/01/jak-znale-programist-cz-druga-czyli-jak.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEYBQHg6cSp7ImA9WxVREEQ.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-7426871834968881604</id><published>2009-01-16T08:38:00.003+01:00</published><updated>2009-01-16T08:49:11.619+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-01-16T08:49:11.619+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="rant" /><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="startup" /><category scheme="http://www.blogger.com/atom/ns#" term="interview" /><category scheme="http://www.blogger.com/atom/ns#" term="programowanie" /><title>Jak znaleźć programistę? [cz. pierwsza, czyli Moje Własne Daily WTF?]</title><content type="html">Ostatnio tak się złożyło, że szukałem programistów. Kilku, do quasi-startupu. Inwestor oferował na starcie niezłe pieniądze, oczekiwał pewnego poziomu &lt;i&gt;skilla&lt;/i&gt;, umiejętności myślenia... Żadnych z góry narzuconych wymagań dotyczących wybranej technologii, za to możliwości (i chęci) pracy w czymś, na co pomysł przyjdzie później.&lt;br /&gt;Ogólnie, oczekiwania wobec programisty były: &lt;a href="http://www.joelonsoftware.com/articles/GuerrillaInterviewing3.html" id="tgai" title="Smart, and gets things done"&gt;Smart, and gets things done&lt;/a&gt;.&lt;h2&gt;&lt;br /&gt;&lt;/h2&gt;&lt;h2&gt;rekrutacja &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://farm2.static.flickr.com/1196/3166276470_e2fa0c4670.jpg?v=0"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 306px; height: 193px;" src="http://farm2.static.flickr.com/1196/3166276470_e2fa0c4670.jpg?v=0" alt="" border="0" /&gt;&lt;/a&gt;&lt;/h2&gt; Przed przeprowadzeniem &lt;i&gt;interviews&lt;/i&gt; posiłkowałem się tym poradnikiem zresztą, a też zajrzałem na bloga &lt;a href="http://interwiu.from.hell.pl/" id="ryvn" title="interview"&gt;interview&lt;/a&gt; (gdzie nowsze odcinki, no gdzie?).&lt;br /&gt;Okazało się, niestety, że niepotrzebnie aż tak się wysilałem.&lt;br /&gt;CV, które podrzucał mi inwestor, nie były rewelacyjne. Nie wiem, skąd on je brał - chodził na zaplecza agencji rekrutacyjnych i przeglądał kosze z papierami?&lt;br /&gt;Serio...&lt;br /&gt;Wszyscy mieli &lt;b&gt;wyższe wykształcenie&lt;/b&gt;. Co z tego, że mamy poważną nadprodukcję tegoż, teraz na własnej skórze przekonałem się, że to nic nie znaczy. Ludzie z wyższym technicznym / informatycznym wykształceniem nie nieli pojęcia o niczym. Na przykład:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;     nie potrafili mentalnie sparsować 5 linii pseudokodu.   &lt;/li&gt;&lt;li&gt;     Nie rozumieli rekurencji   &lt;/li&gt;&lt;li&gt;     że o wskaźnikach i zarządzaniu pamięcią nie wspomnę   &lt;/li&gt;&lt;/ul&gt; Jeden z Panów zapytanych o metodę wyznaczania kolejnych liczb pierwszych zaproponował coś takiego:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;// N - liczba badana&lt;br /&gt;for (i=2; i&amp;lt;N; i++) {&lt;br /&gt;if (N mod i == 0) {&lt;br /&gt;  dzielisie = 1;&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;if (dzielisie == 1) {&lt;br /&gt;return 0;&lt;br /&gt;} else {&lt;br /&gt;return 1&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;czym mnie zaskoczył, bo w miarę rozwiązywało to problem (nie chodziło o optymalizację oczywiście).&lt;br /&gt;Zapytałem o modyfikację powyższego algorytmu tak, aby podawał liczby &lt;i&gt;pierwsze&lt;/i&gt; takie, które są &lt;i&gt;podzielne przez trzy&lt;/i&gt;. Zaproponował modyfikację ostatniego bloku &lt;i&gt;else {}&lt;/i&gt; taką, żeby:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;     zamienić liczbę N na stringa   &lt;/li&gt;&lt;li&gt;     brać kolejne litery tego stringa (a więc cyfry), zamieniać je na liczby i sumować w zmiennej tymczasowej   &lt;/li&gt;&lt;li&gt;     jeśli suma cyfr będzie podzielna przez 3 (tu wchodzi rekurencja, a jakże!) zwrócić 1, w przeciwnym wypadku 0.&lt;/li&gt;&lt;/ul&gt;Suabo, no?&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-7426871834968881604?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/rhSL_b9DD8EZzJ8rr2wnimRgWW4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rhSL_b9DD8EZzJ8rr2wnimRgWW4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/rhSL_b9DD8EZzJ8rr2wnimRgWW4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/rhSL_b9DD8EZzJ8rr2wnimRgWW4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/dXhC5Cb00Ek" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/7426871834968881604/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=7426871834968881604" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7426871834968881604?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7426871834968881604?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/dXhC5Cb00Ek/jak-znale-programist-cz-pierwsza-czyli.html" title="Jak znaleźć programistę? [cz. pierwsza, czyli Moje Własne Daily WTF?]" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.codingslut.com/2009/01/jak-znale-programist-cz-pierwsza-czyli.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUEAQHw4fSp7ImA9WxRaEEo.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-1266769955873221754</id><published>2008-12-12T11:23:00.002+01:00</published><updated>2008-12-12T11:27:21.235+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-12-12T11:27:21.235+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="opowiadanie" /><title>Team is falling apart - Criminal Minds fanfik</title><content type="html">&lt;span style="font-style: italic;"&gt;Opisane wydarzenia mają miejsce jakoś po odcinku 03x01.&lt;br /&gt;Tekst napisany rok temu, wieczorem, 03.12.2007 w &lt;a href="http://www.jazzcafe.com.pl/o_nas.php"&gt;"Jazz Cafe"&lt;/a&gt; w Łomiankach przy piwie Guiness i soczystym steku.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Doktor Spencer Reid wpadł do domu. Teczka – na sofę. Kopnięciem zamknął drzwi. Rzut oka na zegarek. Została godzina. Powinien zdążyć. Skierował szybkie kroki w stronę lodówki, jednocześnie odgarniając niesforny kosmyk włosów znad oczu. Wyjął duży, krwisty kawałek mięsa i zaczął go pieczołowicie nacierać mieszanką przypraw, której zawsze używała jego mama. Skończył ze stekiem, wrzucił frytki do mikrofali. Wyjął wino, nastawił wodę na kawę. Zajrzał do lodówki. Jest lód. Przygotował i rozgrzał patelnię.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Dzwonek u drzwi. Reid zakręcił się na pięcie, mało nie wyciągając się jak długi przy okazji. W drzwiach stała wysoka blondynka z prostymi włosami. Jennifer Jareau.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Umm, witaj. Wejdź.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Dziękuję za zaproszenie. - Powiedziała JJ wchodząc. - Pozostałych jeszcze nie ma?&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Pozostałych... zaprosiłem tylko ciebie. - Doktor Reid miał wyraźne problemy z płynnym mówieniem, gdy przebywał w obecności kobiet.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Och... Tak... Rozumiem. - JJ uśmiechnęła się.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Reid zaprowadził ją do stołu.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Napijesz się czegoś? Sok, wino, kawa?&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Kawa może być, dziękuję.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Juuuż podaję. Usiądź, zaraz przyniosę.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Dziewczyna patrzyła, jak Reid uwija się w kuchni. Na patelnię wrzucił płaty mięsa, wyjął frytki. &lt;/span&gt; &lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Świetnie pachnie. - Zauważyła JJ. - Co to takiego?&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Steki. Według przepisu mojej mamy. &lt;/span&gt; &lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Nie znała go takim... Nikt nie znał go takim. “Chłopak bardzo się zmienił od wypadku na farmie i od odejścia Gideona” - pomyślała. “Do tego teraz śmierć jego matki”. Uświadomiła sobie, że tak naprawdę nikt poza Jasonem Gideonem nie znał tego młodego geniusza. &lt;/span&gt; &lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Chwilę później na stole pojawił się półmisek z parującym, krwistym stekiem i frytki. Dzbanek z kawą, białe wino. Naczynia i sztućce. “On się naprawdę zmienił.”&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Usiedli przy stole, rozluźniająca rozmowa potoczyła się bardziej gładko. Wspominali początek swojej pracy w BAU, w końcu oczywiście zeszli na temat byłego szefa. &lt;/span&gt; &lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Jak tak o nim rozmawiamy, czuję jakby był z nami, w tym pokoju.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Wiesz, że 78% wykształconych osób przyznaje się, że wyczuwa obecność zmarłych bliskich sobie osób. Zabawne, jak nieracjonalny może być umysł człowieka, który na co dzień posługuje się nim bez zarzutu. - Reid spojrzał w oczy JJ.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Taaak, pewnie masz rację. Więc, co robiłeś ostatnio? Nie widziałam cię u nas.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Wiesz, miałem trochę spraw do uporządkowania, po śmierci mamy. Nie zdawałem sobie sprawy ile dla mnie znaczyła. Ale... Ponad połowa dorosłych Amerykanów, mimo że mieszka sama, odwiedza rodziców co najmniej dwa razy do roku. W Europie ta liczba sięga...&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Reid, rozumiem, że jest ci ciężko. Ale może jesteś w stanie powiedzieć, kiedy wrócisz? Potrzebujemy cię – zawsze potrzebowaliśmy – ale teraz, gdy dodatkowo Hotch nie odzywa się od tygodnia... Ja muszę być na miejscu, Morgan sam z Elle sobie nie radzi.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Morgan nigdy sobie nie radził. Nigdy nie był w stanie pojąć różnicy pomiędzy przestępstwem popełnionym pod wpływem psychozy a seryjnym. Musisz zdawać sobie sprawę, że gdyby to on kierował BAU, do tej pory nie rozwiązalibyśmy żadnej sprawy, a wszyscy aresztowani byliby niewinni. Wiesz o tym, praw...&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Reid, nie wiem o czym mówisz. Morgan wykonuje swoje obowiązki dobrze, Gideon zawsze był z niego zadowolony, Hotch też. - Tym słowom odpowiedziało tylko pogardliwe parsknięcie Reida. - Wiesz, naprawdę muszę już chyba iść. Nie chcę sprawiać więcej kłopotów i w ogóle... - Jennifer Jareau była wyraźnie zakłopotana. Naprawdę, nie znała takiego Reida. - Dziękuję za zaproszenie i obiad. - Skierowała się do drzwi zostawiając doktora samego przy stole.&lt;/span&gt;&lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Reid wstał, zostawił naczynia na stole i udał się do sąsiedniego pokoju. Komputer, kilka zdjęć przyczepionych do ścian pinezkami. Masa wycinków prasowych. Odsunął rustykalny fotel, na którym zwykła siadać jego mama i który był jedynym, poza fortepianem, co mu po niej pozostało. &lt;/span&gt; &lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;Otworzył klapę w podłodze koło lodówki i zszedł na dół, do spiżarni. Jego ciałem wstrząsnął dreszcz zimna. Podszedł do dużego stołu przy ścianie, zapalił silną lampę. Podniósł sporych rozmiarów tasak i zaczął metodycznie kroić długi, gruby kawał mięsa. Ludzka kość udowa jest jedną z najbardziej wytrzymałych, ale i ona w końcu ustąpiła pod naporem stalowego ostrza. &lt;/span&gt; &lt;/p&gt; &lt;p class="western" style="margin-bottom: 0in;" align="justify"&gt; &lt;span style="font-size:100%;"&gt;- Hotcha też już więcej nie zobaczysz, JJ. - Mruknął do siebie doktor Reid.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-1266769955873221754?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/oFZBPKR9MQxX3mVFTwEnBhNEr9o/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oFZBPKR9MQxX3mVFTwEnBhNEr9o/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/oFZBPKR9MQxX3mVFTwEnBhNEr9o/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/oFZBPKR9MQxX3mVFTwEnBhNEr9o/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/mWPLAtnkNGk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/1266769955873221754/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=1266769955873221754" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/1266769955873221754?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/1266769955873221754?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/mWPLAtnkNGk/team-is-falling-apart-criminal-minds.html" title="Team is falling apart - Criminal Minds fanfik" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/12/team-is-falling-apart-criminal-minds.html</feedburner:origLink></entry><entry gd:etag="W/&quot;D0cERXc_fSp7ImA9WxRbEEg.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-6177927532604804557</id><published>2008-11-30T14:55:00.010+01:00</published><updated>2008-11-30T15:23:24.945+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-30T15:23:24.945+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="curses" /><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="software" /><category scheme="http://www.blogger.com/atom/ns#" term="python" /><category scheme="http://www.blogger.com/atom/ns#" term="blip" /><category scheme="http://www.blogger.com/atom/ns#" term="blipcurses" /><title>blip, curses i dynamiczna podmiana kodu w pythonie</title><content type="html">W związku z poniedziałkiem zacząłem się zastanawiać, czy nie lepiej poszukać konsolowej metody na &lt;a href="http://www.blip.pl/"&gt;blip&lt;/a&gt;anie. Coby blipa odpalić pod konsolą w domu, połączenie via ssh, coby mi nikt w pakiety nie zaglądał.&lt;br /&gt;Ponieważ &lt;a href="http://leafnode.blip.pl/"&gt;^leafnode&lt;/a&gt; powiedział, że napisać klienta blipa w curses to dwie godziny, a za mną od dawna chodziło poprawienie mojej innej cursesowej aplikacyjki (&lt;a href="http://ao.codingslut.com/aochat/"&gt;tej&lt;/a&gt;), aka zobaczenie co w curses możnaby nowego poznać, zakasałem rękawy i napisałem &lt;b&gt;coś&lt;/b&gt;.&lt;br /&gt;Owo coś miało bugi, nie umiało czytać polskich literek w obiekcie &lt;tt&gt;curses.textpad.Textbox&lt;/tt&gt;, więc trzeba było coś poprawić. Skończyło się na zajrzeniu do źródełem modułów &lt;tt&gt;curses.textpad&lt;/tt&gt; i &lt;tt&gt;curses.ascii&lt;/tt&gt; i dynamicznej podmianie dwóch funkcji w moim kodzie. A oto co zrobiłem:&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;wyświetlanie polskich liter w Textboksie&lt;/h4&gt;&lt;br /&gt;&lt;tt&gt;Textbox&lt;/tt&gt; korzysta z funkcji zdefiniowanych w module &lt;tt&gt;curses.ascii&lt;/tt&gt; żeby rozpoznać, co za znak mu wklepaliśmy. Wyświetlane są znaki, dla których funkcja &lt;tt&gt;isprint(c)&lt;/tt&gt; zwraca &lt;tt&gt;True&lt;/tt&gt;. A jak to sprawdza?&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;def isprint(c): return _ctoi(c) &gt;= 32 and _ctoi(c) &lt;= 126 &lt;br /&gt;&lt;/tt&gt;&lt;br /&gt;Bóóó.&lt;br /&gt;Polskie literki, jako nienależące do podstawowych znaków ascii nie nadały się do tego.&lt;br /&gt;&lt;a href="http://stackoverflow.com/questions/328793/python-cursesascii-depending-on-locale"&gt;Zapytałem&lt;/a&gt; o radę na stackoverflow.com. Zgodnie z sugestią tam w moim kodzie zdefiniowałem funkcję:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;def isprint(ch):&lt;br /&gt;    try:&lt;br /&gt;        x = unicodedata.category(chr(ch).decode('iso-8859-2'))[0] in 'LNPS'&lt;br /&gt;        if x or (curses.ascii._ctoi(ch) &gt;= 32 and curses.ascii._ctoi(ch) &lt;= 126):&lt;br /&gt;            return True&lt;br /&gt;    except:        &lt;br /&gt;        pass    &lt;br /&gt;    return False &lt;br /&gt;curses.ascii.isprint = isprint       # WOW!! &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Ostatnia linijka dynamicznie podmienia fukcję zdefiniowaną zupełnie gdzie indziej na moją. Dzięki czemu, bez ingerencji w źródło oryginalnego modułu (bo &lt;i&gt;naprawdę&lt;/i&gt; nie wiem co moje rozwiązanie może popsuć na dłuższą metę) możemy modyfikować zachowanie tegoż.&lt;br /&gt;Teraz już wpisywanie polskich literek zaczęło działać.&lt;br /&gt;&lt;h4&gt;odczyt z pola Textbox&lt;/h4&gt;&lt;br /&gt;mnie trochę zaskoczył. W trakcie wołana jest fukcja &lt;tt&gt;curses.ascii.ascii&lt;/tt&gt;, która w oryginale wygląda tak:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;def ascii(c):&lt;br /&gt;   if type(c) == type(""):&lt;br /&gt;       return chr(_ctoi(c) &amp;amp; 0x7f)&lt;br /&gt;   else:&lt;br /&gt;       return _ctoi(c) &amp;amp; 0x7f&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;W jej wyniku moje wpisane w pole tekstowe 'ą' było zwracane jako '1'.&lt;br /&gt;Bóó again.&lt;br /&gt;No ale wystarczyło znów dokonać podmiany w moim kodzie na coś prostszego:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;def asci(ch):&lt;br /&gt;   if type(ch) == type(""):&lt;br /&gt;       return chr(curses.ascii._ctoi(ch))&lt;br /&gt;   else:&lt;br /&gt;       return curses.ascii._ctoi(ch)&lt;br /&gt;curses.ascii.ascii = asci&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;...i naprawdę nie wiem co w ten sposób popsułem, ale wolę nie myśleć. W każdym razie teraz 'ą' jest zwracane jako 'ą'.&lt;br /&gt;&lt;br /&gt;I tym samym&lt;br /&gt;&lt;h4&gt;blipCurses pozwala wysyłać polskie literki:)&lt;/h4&gt;&lt;br /&gt;To tytułem ogłoszenia.&lt;br /&gt;&lt;a href="http://www.codingslut.com/blipcurses/"&gt;Tutaj&lt;/a&gt; można pobrać blipcursesa i nawet zobaczyć screena!&lt;br /&gt;&lt;br /&gt;Enjoy it as I do.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-6177927532604804557?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/AMIALV0PJvoN9XteAWl3P1I_ONY/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AMIALV0PJvoN9XteAWl3P1I_ONY/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/AMIALV0PJvoN9XteAWl3P1I_ONY/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/AMIALV0PJvoN9XteAWl3P1I_ONY/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/hZx_gi7N_Z4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/6177927532604804557/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=6177927532604804557" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/6177927532604804557?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/6177927532604804557?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/hZx_gi7N_Z4/blip-curses-i-dynamiczna-podmiana-kodu.html" title="blip, curses i dynamiczna podmiana kodu w pythonie" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/11/blip-curses-i-dynamiczna-podmiana-kodu.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkMCRn87eSp7ImA9WxRUF0U.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-525413407681880933</id><published>2008-11-27T11:04:00.002+01:00</published><updated>2008-11-27T11:07:47.101+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-27T11:07:47.101+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="startup" /><category scheme="http://www.blogger.com/atom/ns#" term="pomysł" /><category scheme="http://www.blogger.com/atom/ns#" term="software" /><title>[pomysł] nie-ma-mnie.pl</title><content type="html">&lt;span style="font-weight: bold;"&gt;nie-ma-mnie.pl&lt;/span&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Osochozi?&lt;br /&gt;prosta idea - jak np wyjezdzamy na urlop / zaszywamy sie pod stertą liści i nie mamy ochoty sprawdzać i odpowiadac na kretyńskie maile - ustawiamy autoresponder że nas nie ma. Do autorespondera wrzucamy linka "żeby skontaktowac sie ze mna naprawde pilnie, kliknij &lt;tu&gt;".&lt;br /&gt;Ten link prowadzi do strony z formularzem kontaktowy, gdzie gosc wpisuje kto on i co chce (maks np 100 znakow) i klika "wyślij". Ta wiadomość trafia do nas via sms i już decydujemy co robić dalej (bo może to byc wiadomosć naprawde pilna, ktorej nie chcielbysmy przegapic).&lt;/tu&gt;&lt;/li&gt;&lt;li&gt;Jak?&lt;br /&gt;Uzytkownik sie rejestruje, podaje w szczególności imie, numer telefonu oraz podaje godziny w jakich chce dostawac smsy (jako zakres, whatever). Dostaje link do swojego formularza kontaktowego, na przyklad /kontakt/kender.&lt;/li&gt;&lt;li&gt;I co dalej?&lt;br /&gt;Jak ktos kliknie w linka, dostaje formularz (pewnie zabezpieczony jakims captcha i z limitem ilosci wysylanych wiadomosci per cookie per dzień). Chodzi o to, żeby wysyłający wiadomosc nie musial się rejestrować ani nic.&lt;br /&gt;Wysyłane wiadomości trzeba logować naturalnie. I ostrzec o tym (ale nie czytać po godzinach, bo nie wypada).&lt;/li&gt;&lt;li&gt;Co potrzeba?&lt;br /&gt;serwer, który potrafi wysyłać smsy, trochę kodowania, trochę dizajnu i jakiś pomysł na monetyzację tego. Część z tych "zasobów" mam, części nie...&lt;/li&gt;&lt;li&gt;Jest analogiczny serwis zagramaniczny, awayfind.com, pewnie bardziej zaawansowany niż to co opisałem. To tutaj to tylko podstawowa funkcjonalność, na start. Moim zdaniem są ludzie, którzy byliby tym zainteresowani.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Co o tym sądzicie?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-525413407681880933?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/22XFFr6luKwlYvJiaCGAcC3FwYI/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/22XFFr6luKwlYvJiaCGAcC3FwYI/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/22XFFr6luKwlYvJiaCGAcC3FwYI/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/22XFFr6luKwlYvJiaCGAcC3FwYI/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/czw9bpv0IHw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/525413407681880933/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=525413407681880933" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/525413407681880933?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/525413407681880933?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/czw9bpv0IHw/pomys-nie-ma-mniepl.html" title="[pomysł] nie-ma-mnie.pl" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/11/pomys-nie-ma-mniepl.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEMHRX4_cCp7ImA9WxNaEUo.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-3018148196011297369</id><published>2008-11-23T18:23:00.008+01:00</published><updated>2009-11-25T19:07:14.048+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-25T19:07:14.048+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="netbook" /><category scheme="http://www.blogger.com/atom/ns#" term="laptop" /><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="linux" /><category scheme="http://www.blogger.com/atom/ns#" term="acer-aspire-one" /><title>Acer Aspire One i debian</title><content type="html">&lt;div style="font-family: georgia;" xmlns="http://www.w3.org/1999/xhtml"&gt;&lt;div&gt;Od jakiegoś czasu jestem szczęśliwym posiadaczem &lt;i&gt;netbooka&lt;/i&gt; Acer Aspire One. Ten model dość mi pasuje – waga około kilograma, 9-calowy wyświetlacz (działający w rozdzielczości 1024x600) i dość wygodna klawiatura (wydaje się, że większa niż w EeePC Asusa).&lt;br /&gt;
&lt;h4&gt;1. Acer Aspire One&lt;/h4&gt;&lt;br /&gt;
&lt;div class="western"&gt;Co dostajemy „w środku”? Procesor Atom 1.6GHz. W zależności od opcji 512MB lub 1GB RAMu. Kartę ethernet 100Mbit, WiFi, 3 porty USB, 2 czytniki kart (jeden używany jako „storage extension”), wyjście VGA do monitora oraz wyjście na miktofon i słuchawki. Poza tym – wbudowany głośnik, mikrofon i kamerkę.&lt;br /&gt;
&lt;/div&gt;Dysk twardy – znów, zależnie od wybranej opcji, 8GB SSD lub tradycyjny dysk, rzędu 120GB.&lt;br /&gt;
&lt;div class="western"&gt;W porównaniu z Eee PC 901 brakuje mu Bluetootha. Jestem w stanie to strawić, choć nie próbowałem korzystać z telefonu jako modemu – wówczas pewnie by się przydał BT.&lt;br /&gt;
&lt;/div&gt;Ja mam wersję z 512MB ramu (wersja 1GB jest sporo droższa – zaś do AAO możemy dołożyć kość pamięci 1GB, rozszerzając pamięć do maksymalnej wielkości – 1,5G. Kość kosztuje obecnie ~50 zł, założenie wymaga jedynie śrubokrętu i rozkręcenia laptopa – można zobaczyć, jak wygląda proces zakładania baterii np. tutaj: &lt;a href="http://pl.youtube.com/watch?v=-EfzckyZMTk"&gt;http://pl.youtube.com/watch?v=-EfzckyZMTk&lt;/a&gt;).&lt;br /&gt;
&lt;div class="western"&gt;Dysk – SSD. Szybszy niż tradycyjny, poza tym odchodzi sporo elementów ruchomych, co stanowi dużą zaletę przy komputerze, którego główną cechą jest przenośność.&lt;br /&gt;
&lt;/div&gt;Z tego powodu w opisywanych tu działaniach skupię się przede wszystkim na tym, co ja robiłem z moim modelem.&lt;br /&gt;
&lt;h4&gt;2. System, z którym przyszedł&lt;/h4&gt;&lt;br /&gt;
AAO sprzedawany jest w dwóch wersjach, z preinstalowanym Win XP i preinstalowanym Linuksem. Mój był ten drugi.&lt;br /&gt;
&lt;div class="western"&gt;Ogólnie – śmieszny system. Widać, że zrobiony tak, żeby maksymalnie uprościć korzystanie z komputera osobom nieobeznanym z czymkolwiek innym niż Windows. Główny ekran to 4 „bloki”, w których pogrupowane są najczęściej (zdaniem twórców) używane aplikacje – przeglądarka, klient poczty, Office, gry, aplikacje do łączenia się z siecią...&lt;br /&gt;
&lt;/div&gt;&lt;div class="western"&gt;Ja jednak postanowiłem, korzystając z całej masy HOWTOs dostępnej w sieci, zainstalować na nim Debiana.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;h4&gt;3. Instalacja Debiana&lt;/h4&gt;&lt;br /&gt;
Prosta sprawa – potrzebujemy pendrive'a lub karty pamięci i czytnika, albo napędu CD na usb – czegokolwiek, z czego można będzie zbootować nasz komputer. Na ten napęd, zgodnie z instrukcjami na stronie wiki.debian.org - &lt;a href="http://wiki.debian.org/DebianAcerOne"&gt;http://wiki.debian.org/DebianAcerOne&lt;/a&gt; – wrzucamy &lt;b&gt;boot.img.gz &lt;/b&gt;i obraz iso „płytki” instalacyjnej netinst – ważne, żeby oba były stworzone dla tej samej wersji kernela.&lt;br /&gt;
&lt;div class="western"&gt;Proces instalacji powinien przebiegać jak zawsze. Postarajmy się tylko o kabelek ethernetowy, jako że obecna wersja testing nie widzi na etapie instalacji wifi...&lt;br /&gt;
&lt;/div&gt;W moim przypadku instalacja nie zakończyła się sukcesem – wyskakiwały jakieś błędy (nie zrobiłem fotki, niestety) na etapie instalacji pakietów. Na szczęście wyjście z instalatora, &lt;b&gt;chroot /target&lt;/b&gt; pod konsolą i instalacja tam czego potrzeba (przede wszystkim – &lt;b&gt;aptitude install grub&lt;/b&gt; i konfiguracja gruba tak, żeby komputer uruchomił się z dysku) pomogło. Po restarcie i zainstalowaniu reszty systemu musiałem tylko podmienić &lt;b&gt;/sbin/start-stop-daemon&lt;/b&gt; – na jego miejsce wrzucić wersję &lt;b&gt;/sbin/start-stop-daemon.REAL&lt;/b&gt;. Ten pierwszy jest takim oszukańczym na czas instalacji.&lt;br /&gt;
&lt;div class="western"&gt;Zaraz potem warto zainstalować dalsze pakiety, zresztą w większości wymienione na &lt;a href="http://wiki.debian.org/DebianAcerOne"&gt;http://wiki.debian.org/DebianAcerOne&lt;/a&gt;. W szeczególności przyda się moduł &lt;b&gt;madwifi&lt;/b&gt; do jądra, dający nam dostęp do wifi. Ja zainstalowałem go przez &lt;i&gt;module-assistanta&lt;/i&gt;, jak opisali na powyższej stronie.&lt;br /&gt;
&lt;/div&gt;&lt;br /&gt;
&lt;h4&gt;4. Tweaks&lt;/h4&gt;&lt;br /&gt;
&lt;div class="western"&gt;System, zaraz po zainstalowaniu, choć działa, może dzialać lepiej. To co ja chciałem osiągnąć to:&lt;br /&gt;
&lt;/div&gt;&lt;span style="font-size: 100%; font-weight: bold;"&gt;zmniejszenie obciążenia dysku SSD&lt;/span&gt;&lt;br /&gt;
Ogólnie chcę uzyskać mniejsze obciążenie zapisem dysku SSD (mimo, że według &lt;a href="http://www.storagesearch.com/ssdmyths-endurance.html"&gt;tego artykułu&lt;/a&gt; mój dysk powinien wytrzymać minimum 8 lat). W tym celu zrobiłem kilka rzeczy:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; do linijki &lt;b&gt;kernel&lt;/b&gt; w pliku konfiguracyjnym gruba (&lt;i&gt;/boot/grub/menu.lst&lt;/i&gt;) dopisalem&lt;span style="font-size: small;"&gt; &lt;b&gt;elevator=noop&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt; &lt;span style="font-size: small;"&gt;do opcji montowania dysku w &lt;i&gt;/etc/fstab &lt;/i&gt;dodałem &lt;b&gt;noatime,nodiratime&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li&gt; &lt;span style="font-size: small;"&gt;partycje &lt;b&gt;/var/log&lt;/b&gt;, &lt;b&gt;/var/tmp&lt;/b&gt; i &lt;b&gt;/tmp&lt;/b&gt; są montowane jako ramdyski (linijki w &lt;i&gt;/etc/fstab&lt;/i&gt;: &lt;b&gt;tmpfs /tmp tmpfs defaults 0 0&lt;/b&gt;)&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; miejsce, gdzie trafiają pakiety przy instalacji też wrzucam na ramdisk, ale już nie osobny. po prostu zrobiłem symlinka &lt;b&gt;/var/cache/apt/archives &lt;/b&gt;-&amp;gt; &lt;b&gt;/tmp&lt;/b&gt; (komendą &lt;tt&gt;rm -r /var/cache/apt/archives/ ; mkdir -p /tmp/partial/ ; ln -s /tmp/ /var/cache/apt/archives/&lt;/tt&gt;). Że mi zaśmiecają /tmp? co z tego? (nawet jeśli będzie używany swap, nie powinno to zwiększyć ilości zapisów na dysku).&lt;/li&gt;
&lt;li&gt; &lt;span style="font-size: small;"&gt;żeby wszystko działało jak należy, do pliku &lt;i&gt;/etc/rc.local&lt;/i&gt; dopisałem tworzenie katalogów na tym ramdyskach (&lt;i&gt;/var/log/apt&lt;/i&gt;,&lt;i&gt; /var/log/gdm&lt;/i&gt;,&lt;i&gt; /var/log/news&lt;/i&gt;,&lt;i&gt; /tmp/partial&lt;/i&gt;)&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;blockquote&gt;Zawartość mojego pliku /etc/rc.local po zmianach wygląda mniej więcej tak:&lt;br /&gt;
&lt;/blockquote&gt;&lt;code&gt;&lt;br /&gt;
if [ ! -d /var/log/apt ] &lt;br /&gt;
then&lt;br /&gt;
&amp;nbsp; mkdir -p /var/log/apt&lt;br /&gt;
fi&lt;br /&gt;
if [ ! -d /var/log/gdm ]&lt;br /&gt;
then&lt;br /&gt;
&amp;nbsp; mkdir -p /var/log/gdm&lt;br /&gt;
fi&lt;br /&gt;
if [ ! -d /tmp/partial ]&lt;br /&gt;
then&lt;br /&gt;
&amp;nbsp; mkdir -p /tmp/partial&lt;br /&gt;
fi&lt;br /&gt;
&lt;/code&gt;&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt; &lt;span style="font-size: small;"&gt;&lt;b&gt;/var/run &lt;/b&gt;i &lt;b&gt;/var/lock&lt;/b&gt; to też RAMDISKI - w pliku &lt;i&gt;/etc/default/rcS &lt;/i&gt;ustawiam &lt;b&gt;RAMRUN=yes &lt;/b&gt;i &lt;b&gt;RAMLOCK=yes&lt;/b&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;h2 style="font-family: Times New Roman; font-weight: bold;"&gt;&lt;span style="font-size: 100%;"&gt;konfiguracja X-ów&lt;/span&gt;&lt;/h2&gt;Jest kilka spraw, którymi należy się zająć: ustawienie odpowiedniej wielkości czcionek dla wyświetlacza, modyfikacja działania touchpada i ogólne poprawienie działania Xów.&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; z domyślnymi ustawieniami czcionki w niektórych programach będą wielkie. Naprawdę wielkie, prawie takie jak Wszechświat. Aby to naprawić, wystarczy do &lt;i&gt;/etc/X11/xorg.conf&lt;/i&gt; dopisać:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; w sekcji &lt;i&gt;Device &lt;/i&gt;linię &lt;b&gt;Option "NoDDC"&lt;/b&gt;&lt;/li&gt;
&lt;li&gt; w sekcji &lt;i&gt;Monitor - &lt;/i&gt;&lt;b&gt;DisplaySize 195 113&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt; dodatkowe opcje dla touchpada&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;&lt;li&gt; &lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;&lt;/blockquote&gt;musimy powiedzieć xorg, żeby używały sterownika &lt;i&gt;Synaptics. &lt;/i&gt;Poniżej cała moja sekcja &lt;i&gt;InputDevice &lt;/i&gt;dla myszki:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;Section "InputDevice"&lt;br /&gt;
Identifier  "Synaptics Touchpad"&lt;br /&gt;
Option "SHMConfig"  "on"&lt;br /&gt;
Driver "synaptics"&lt;br /&gt;
Option "SendCoreEvents" "true"&lt;br /&gt;
Option "Device" "/dev/psaux"&lt;br /&gt;
Option "Protocol" "auto-dev"&lt;br /&gt;
Option "HorizScrollDelta" "0&lt;br /&gt;
EndSection&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt; &lt;b&gt;syndaemon&lt;/b&gt; pozwala na zablokowanie działania touchpada gdy klawiatura jest używana. Powinno to zmniejszyć ilość przypadkowych kliknięć / przesunięć kursora myszy gdy piszemy. a więc: &lt;b&gt;aptitude install syndaemon&lt;/b&gt;. Następnie musimy odpalić syndeamona w naszym skrypcie startowym X-ów, na przykład: &lt;b&gt;syndaemon -d -i 0.8 -k&lt;/b&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;li&gt; aby poprawić wydajność karty graficznej w X-ach wystarczy dodać do sekcji &lt;i&gt;Device&lt;/i&gt; pliku &lt;i&gt;/etc/X11/xorg.conf&lt;/i&gt; następujące linie:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;blockquote&gt;Driver "intel"&lt;br /&gt;
Option "AccelMethod" "exa"&lt;br /&gt;
Option "MigrationHeuristic" "greedy"&lt;br /&gt;
&lt;/blockquote&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;h2 style="font-weight: bold;"&gt;&lt;span style="font-size: 100%;"&gt;dźwięk&lt;/span&gt;&lt;/h2&gt;Aby mieć sensowny dźwięk, trzeba zainstalować &lt;i&gt;alsę&lt;/i&gt; (pakiety &lt;i&gt;alsa-base &lt;/i&gt;i &lt;i&gt;alsa-utils&lt;/i&gt; się przydadzą). Następnie do pliku /etc/modprobe.d/alsa-base dodać linijkę &lt;b&gt;options snd-hda-intel model=acer&lt;/b&gt;. Niestety, nie udało mi się sprawić, żeby dźwięk działał po &lt;i&gt;suspendzie&lt;/i&gt;. Jeśli ktoś wie, jak do tego dojść, proszę o info. (Niektórzy radzą, żeby używać &lt;b&gt;model=toshiba&lt;/b&gt;, wówczas może nie działać wbudowany mikrofon, ale być może dźwięk po obudzeniu owszem - u mnie po obudzeniu dźwięk był, ale tak cichy, że i tak musiałem rebootować).&lt;br /&gt;
&lt;/div&gt;&lt;div&gt;&lt;h2 style="font-family: Times New Roman; font-weight: bold;"&gt;&lt;span style="font-size: 100%;"&gt;dobrze działający, wygodny na nietypowym ekranie Firefox&lt;/span&gt;&lt;/h2&gt;Ekran ma rozdzielczość 1024x600, więc ilość punktów w poziomie jest prawie dwa razy większa niż w pionie. Bardzo szeroka panorama. Wobec tego w Firefoksie chciałem usunąć jak najwięcej rzeczy zajmujących miejsce w pionie. Udało mi się dojść do takiego stanu:&lt;br /&gt;
&lt;div id="lz3g" style="padding: 1em 0pt; text-align: center;"&gt;&lt;img alt="" src="http://docs.google.com/File?id=df5bbvqz_10c29zvpg6_b" style="height: 375px; width: 640px;" /&gt;&lt;br /&gt;
&lt;/div&gt;&lt;ul&gt;&lt;li&gt; Zwinięcie całego menu do małego przycisku, pod którym są wszystkie opcje to zaleta addonu Tiny Menu: &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1455"&gt;https://addons.mozilla.org/en-US/firefox/addon/1455&lt;/a&gt;. Następnie, przy użyciu menu customizacji przeniosłem wszystkie potrzebne ikony (back, forward i home – zamiast stop używam Esc, zamiast reload – ctrl+r), pasek adresu i wyszukiwania na pasek menu, oraz ukryłem &lt;i&gt;Navigation Toolbar&lt;/i&gt;.&lt;/li&gt;
&lt;/ul&gt;&lt;ul&gt;&lt;li&gt; Są addony umieszczające zakładki po boku ekranu – celem oszczędzenia miejsca z jeszcze jednego paska – ale to już by była przesada. Chyba straciłbym więcej miejsca w efekcie niż zyskał (tym bardziej, że większość stron tworzona jest na określoną &lt;i&gt;szerokość&lt;/i&gt;, nie &lt;i&gt;wysokość&lt;/i&gt; okna).&lt;/li&gt;
&lt;/ul&gt;&lt;ul&gt;&lt;li&gt; Jest też addon &lt;a href="https://addons.mozilla.org/en-US/firefox/addon/1530"&gt;autoHideStatusbar&lt;/a&gt; - pozwala ukrywać Status Bar (to to coś na dole okna) poza sytuacjami, gdy jest potrzebny (np. najeżdżamy na linka i chcielibyśmy wiedzieć, dokąd nas zaprowadzi). Niestety, mam z tym addonem problem przy przenoszeniu okienka FF na inny pulpit - statusbar zostaje na starym. Być może to wina mojego winmanagera, whatever... Ten dodatek jest w fazie eksperymentalnej, będę monitorować jego status.&lt;/li&gt;
&lt;/ul&gt;Jeśli jesteśmy już przy Firefoksie – warto się wysilić i przenieść &lt;i&gt;cache&lt;/i&gt; przeglądarki do katalogu na ramdysku - jeśli nie chcemy z niego korzystać między bootami. Pozwoli to bardziej zmniejszyć obciążenie dysku SSD. Aby to zrobić, należy otworzyć stronę &lt;b&gt;about:config&lt;/b&gt; i dodać zmienną typu &lt;i&gt;String&lt;/i&gt; o nazwie &lt;b&gt;browser.cache.disk.parent_directory&lt;/b&gt;, o wartości wskazującej na katalog, w którym umieszczony będzie cache (w moim przypadku - &lt;b&gt;/tmp/firefox&lt;/b&gt;).&lt;br /&gt;
&lt;h2 style="font-weight: bold;"&gt;&lt;span style="font-size: 100%;"&gt;dodatkowe klawisze&lt;/span&gt;&lt;/h2&gt;Po pierwsze: klawiatura Aspire One daje nam trochę dodatkowych klawiszy. Jako, że nie używam go z zewnętrznymi monitorami, nie bawiłem się w konfiguracje klawisza &lt;i&gt;Fn+&lt;/i&gt;&lt;i&gt;F5&lt;/i&gt;. Przyciemnianie/pojaśnianie wyświetlacza (&lt;i&gt;Fn+left/right&lt;/i&gt;) działa bez żadnej dodatkowej konfiguracji. Interesowała mnie przede wszystkim kontrola nad dźwiękiem z klawiatury (&lt;i&gt;Fn+F8 &lt;/i&gt;włącza/wyłącza dźwięk, &lt;i&gt;Fn+up/down&lt;/i&gt; pogłaśnia i przycisza).&lt;br /&gt;
Dodatkową "sztuczką" związaną z klawiaturą było użycie kombinacji klawiszy &lt;i&gt;Shift+Menu&lt;/i&gt; jako symulacji &lt;b&gt;kliknięcia środkowym klawiszem&lt;/b&gt;. Jakoś nie wychodziło mi to dobrze z touchpada.&lt;br /&gt;
Zainstalowałem: &lt;b&gt;xmodmap&lt;/b&gt; i &lt;b&gt;xbindkeys&lt;/b&gt;. Mój plik &lt;i&gt;.Xmodmaprc&lt;/i&gt; wygląda tak:&lt;br /&gt;
&lt;blockquote&gt;&lt;sub&gt;&lt;/sub&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;&lt;sub&gt;keycode 160 = XF86AudioMute&lt;/sub&gt;&lt;br /&gt;
&lt;sub&gt;keycode 174 = XF86AudioLowerVolume&lt;/sub&gt;&lt;br /&gt;
&lt;sub&gt;keycode 176 = XF86AudioRaiseVolume&lt;/sub&gt;&lt;br /&gt;
&lt;sub&gt;keycode 223 = XF86Standby&lt;/sub&gt;&lt;br /&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;&lt;/blockquote&gt;Plik &lt;i&gt;.xbindkeysrc&lt;/i&gt;:&lt;br /&gt;
&lt;blockquote&gt;&lt;/blockquote&gt;&lt;blockquote&gt;&lt;blockquote&gt;"middleclick"&lt;br /&gt;
Shift + Menu&lt;br /&gt;
"amixer set Master toggle"&lt;br /&gt;
m:0x0 + c:160&lt;br /&gt;
"amixer set Master 2dB+ unmute"&lt;br /&gt;
m:0x0 + c:176&lt;br /&gt;
"amixer set Master 2dB- unmute"&lt;br /&gt;
m:0x0 + c:174&lt;br /&gt;
"sudo pm-suspend"&lt;br /&gt;
XF86Standby&lt;br /&gt;
&lt;/blockquote&gt;&lt;/blockquote&gt;&lt;div class="western" style="margin-bottom: 0pt;"&gt;&lt;b&gt;middleclick&lt;/b&gt; jest skryptem symulującym środkowe kliknięcie myszy (u mnie w &lt;i&gt;/usr/local/bin/middleclick&lt;/i&gt;):&lt;br /&gt;
&lt;/div&gt;&lt;blockquote&gt;#!/bin/sh&lt;br /&gt;
xevent -b 2 2&lt;br /&gt;
&lt;/blockquote&gt;Wykorzystuję program xevent (niestety, niedostępny w Debianie jako pakiet, skompilowałem ze źródeł - &lt;a href="http://www.isv.uu.se/%7Eziemann/xevent/"&gt;xevent&lt;/a&gt;).&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-3018148196011297369?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/4nykp3bUTWtK2DNlCLQSXhkO9So/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4nykp3bUTWtK2DNlCLQSXhkO9So/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/4nykp3bUTWtK2DNlCLQSXhkO9So/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/4nykp3bUTWtK2DNlCLQSXhkO9So/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/Z21wUaCuDVg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/3018148196011297369/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=3018148196011297369" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/3018148196011297369?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/3018148196011297369?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/Z21wUaCuDVg/acer-aspire-one-i-debian.html" title="Acer Aspire One i debian" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/11/acer-aspire-one-i-debian.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUIFR349eip7ImA9WxRUFUk.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-4510621347243461413</id><published>2008-11-19T18:23:00.000+01:00</published><updated>2008-11-24T18:25:16.062+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-24T18:25:16.062+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="film" /><title>Policyjny psychol w kolorowych gatkach?</title><content type="html">&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Rzadko zdarza się, żebym zachwycał się filmem ze względu na obsadę[1]. Zazwyczaj musi być dużo strzelania, jakieś cycki, najlepiej &lt;em&gt;nerd&lt;/em&gt; na koniec filmu zdobywający super-laskę, durny wątek romantyczny który wyciska mi łzy jak najlepsza cebula...&lt;br/&gt;&lt;br/&gt;[caption id="attachment_71" align="alignleft" width="274" caption="najbardziej dziewczęca rola w ostatnich latach?"]&lt;a href='http://kenders.wordpress.com/files/2008/11/2008-11-19-204956_1024x600_scrot_s1.png'&gt;&lt;img height='200' width='274' alt='najbardziej dziewczęca rola w ostatnich latach?' src='http://kenders.wordpress.com/files/2008/11/2008-11-19-204956_1024x600_scrot_s1.png' title='2008-11-19-204956_1024x600_scrot_s1' class='size-full wp-image-71'/&gt;&lt;/a&gt;[/caption]&lt;br/&gt;&lt;br/&gt;Ten rok zafundował mi dwa filmy, w których obsada wgniotła w fotel. Pierwszym z nich jest &lt;a href='http://www.imdb.com/title/tt0795421/' title='Mamma Mia' id='nnu6'&gt;Mamma Mia&lt;/a&gt;, z rewelacyjną rolą i głosem Meryl Streep oraz świetnie dobraną &lt;a href='http://www.imdb.com/name/nm1086543/'&gt;Amandą Seyfried&lt;/a&gt; (znana między innymi z sukowatej roli w pierwszym sezonie Veroniki Mars - tutaj świetnie gra rolę 20-latki, wchodzącej w życie, w przeddzień ślubu, która stara się odnaleźć samą siebie; tak &lt;em&gt;dziewczęco &lt;/em&gt;zagranej roli nie widziałem od dawna).&lt;br/&gt;&lt;br/&gt;[caption id="attachment_68" align="alignright" width="320" caption="De Niro, Pacino i randomalna laska"]&lt;a href='http://kenders.wordpress.com/files/2008/11/2008-11-19-195314_1024x600_scrot_s.png'&gt;&lt;img height='177' width='320' alt='De Niro, Pacino i randomalna laska' src='http://kenders.wordpress.com/files/2008/11/2008-11-19-195314_1024x600_scrot_s.png' title='2008-11-19-195314_1024x600_scrot_s' class='size-full wp-image-68'/&gt;&lt;/a&gt;[/caption]&lt;br/&gt;&lt;br/&gt;Drugi film jest całkiem inny - &lt;a href='http://www.imdb.com/title/tt1034331/' title='Righteous Kill' id='ivw1'&gt;Righteous Kill&lt;/a&gt;. Gra tu para aktorów, którą bardzo lubię - Robert De Niro i Al Pacino. Nie pamiętam ich razem w żadnym filmie od The Heat z roku 1995, ale może coś mnie ominęło...&lt;br/&gt;&lt;br/&gt;Obaj panowie mają już swoje lata, w filmie nie doświadczymy więc bardzo dużo typowej &lt;em&gt;akcji&lt;/em&gt;. Jest to raczej dramat psychologiczny o policjantach. Policjantach, którzy, jak to stróże prawa, związani procedurami, prawem i przekupnymi, bezradnymi sądami, nie mogą nic zrobić. Ale, &lt;em&gt;there's a new sheriff in town&lt;/em&gt;, ktoś zaczyna wykańczać najgorsze szumowiny w mieście, zostawiając (a jakże bez tego) rymowany nekrolog na miejscu zbrodni. Oczywiście, żeby było ciekawiej, śledztwo w sprawie tych morderst przypada naszym dwóm bohaterom - jednocześnie zaś jeden z nich opowiada o kolejnych &lt;em&gt;swoich&lt;/em&gt; zbrodniach (bo, jakby się ktoś nie domyślił, to to jego sprawka, o czym zresztą wiemy od początku).&lt;br/&gt;&lt;br/&gt;W kolejnych scenach możemy obserwować kolejne ofiary. Oraz, następujące wraz z nimi psychiczne napięcie mordercy - pogłębiające się, gdy ktoś sugeruje, że mordercą jest najprawdopodobniej policjant. Takie podwójne życie musi jednak być trudne, tym bardziej, że w domu czeka młoda (no, młoda jak na warunki panów De Niro i Pacino) dziewczyna, która wszak nie jest wprowadzona w sprawę.&lt;br/&gt;&lt;br/&gt;Ogólnie to ofiary mordercy przedstawione są na tyle negatywnie, że jego samego nie da się nie lubić. Poza tym, przecież walczy on o to, żeby &lt;em&gt;nam&lt;/em&gt; było na ulicach bezpiecznie, nie? Cel uświęca środki, o czym powie nam każdy superbohater ze stajni Marvela.&lt;br/&gt;&lt;br/&gt;[caption id="attachment_69" align="alignleft" width="320" caption="Robert De Niro"]&lt;a href='http://kenders.wordpress.com/files/2008/11/2008-11-19-195337_1024x600_scrot_s.png'&gt;&lt;img height='178' width='320' alt='2008-11-19-195337_1024x600_scrot_s' src='http://kenders.wordpress.com/files/2008/11/2008-11-19-195337_1024x600_scrot_s.png' title='2008-11-19-195337_1024x600_scrot_s' class='size-full wp-image-69'/&gt;&lt;/a&gt;[/caption]&lt;br/&gt;&lt;br/&gt;Pewien zgrzyt następuje, gdy pętla na szyi mordercy zaczyna się zaciskać, a on sam lekko traci nad sobą panowanie. Co z tego wyniknie - nie powiem, nie chcę spojlerować...&lt;br/&gt;&lt;br/&gt;Zakończenie filmu nie jest może najlepszym w historii kina, ale na pewno utrzymuje poziom.&lt;br/&gt;&lt;br/&gt;Na przykładzie tego filmu widać, co to znaczy klasa aktorska i ogromne doświadczenie. Sorry, ale pojedynczy grymas na twarzy De Niro znaczy więcej niż cała niesłychana kariera aktorska różnych Cichopek i innych polskich (i nie tylko) &lt;em&gt;gwiazd&lt;/em&gt; występujących w serialach, nawet najlepszych. Tak naprawdę film pozbawiony tej dwójki aktorów raczej nie wart byłby polecenia - za to z nimi zdecydowanie zasługuje na to, żeby się nim ponapawać.&lt;br/&gt;&lt;br/&gt;I, być może, nawet zastanowić, co może zrobić &lt;em&gt;superhero&lt;/em&gt;, żeby ciągle był bohaterem w kolorowych portkach a nie mrocznym psychopatą.&lt;br/&gt;&lt;br/&gt;[1] No dobra, było trochę tego. Ale zazwyczaj &lt;em&gt;obsada&lt;/em&gt;, ze względu na którą coś oglądałem, miała duże cycki.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-4510621347243461413?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/BGLn0hoVoR7DcvDeXJF98a51Jso/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BGLn0hoVoR7DcvDeXJF98a51Jso/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/BGLn0hoVoR7DcvDeXJF98a51Jso/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/BGLn0hoVoR7DcvDeXJF98a51Jso/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/2HCGyhuzbpk" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/4510621347243461413/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=4510621347243461413" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/4510621347243461413?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/4510621347243461413?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/2HCGyhuzbpk/policyjny-psychol-w-kolorowych-gatkach.html" title="Policyjny psychol w kolorowych gatkach?" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/11/policyjny-psychol-w-kolorowych-gatkach.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUQFQHc9eSp7ImA9WxRUFUk.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-1084154869122276050</id><published>2008-11-06T18:20:00.000+01:00</published><updated>2008-11-24T18:21:51.961+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-24T18:21:51.961+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="blipfiltr" /><category scheme="http://www.blogger.com/atom/ns#" term="blip" /><title>blipFiltr - zmiany</title><content type="html">&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Bardzo miłe było wspomnienie o blipFiltrze we wpisie na &lt;a href='http://www.bliplog.pl/listopadowe-newsy-wokolblipowe/129'&gt;bliplogu&lt;/a&gt;. Zanotowałem nawet trochę odwiedzin, i dostałem kilka wiadomości feedbackowych;)&lt;br/&gt;&lt;br/&gt;Ogólnie plan jest taki, aby stworzyć z tego potworka aplikację, która będzie miała sens :) Dlatego staram się, w ramach wolnego czasu, dodawać conieco, tudzież poprawiać to, co już jest. A co zostało dodane?&lt;br/&gt;&lt;h2&gt;co nowego?&lt;/h2&gt;&lt;br/&gt;Na początek - trochę poprawiłem wyświetlanie strony z wiadomościami i statusami. Można tam "z palca" wpisać teraz nazwę użytkownika, z którym chcemy śledzić konwersację. Poza tym oczywiście, na liście wiadomości, można kliknąć jego nick, uzyskując to samo. Jak komu wygodnie.&lt;br/&gt;&lt;br/&gt;Poza tym - wyświetlanie ładnych (DGCC) tooltipów z obrazkami posłanymi na blipa - można obejrzeć taki obrazek przeskalowany w dół (mam nadzieję;p) po najechaniu myszką na linka.&lt;br/&gt;&lt;br/&gt;Kolejną zmianą jest więcej regexpów - dzięki czemu mamy klikalne linki tam, gdzie coś wygląda jak link.&lt;br/&gt;&lt;br/&gt;Sposób ściągania statusów i wiadomości też się trochę zmienił - jeśli w takim updacie jest link do innego statusu/wiadomości blipowej, zostanie ona też scache'owana. Na stronie z wiadomościami wyświetli się natomiast ona w tooltipie nad linkiem do tej wiadomości w blipie.&lt;br/&gt;&lt;br/&gt;Oraz, last but not least, oczywiście... zawsze zazdrościłem &lt;em&gt;dużym chłopcom &lt;/em&gt;(serwisom) tych ich "ponad 11 milionów użytkowników..." i innych bla bla. Ponieważ blipfiltr nie ma użytkowników jako takich (nie ma logowania, i nie będzie...), jedyne czym mogę się pochwalić to zawartość cache'a :) Więc jest ona wyświetlana na głównej stronie (ilość wiadomości, nie cała zawartość...).&lt;br/&gt;&lt;h2&gt;co w przyszłości?&lt;/h2&gt;&lt;br/&gt;O ile będzie jakaś przyszłość... aka ktoś będzie zaglądał (a mam nadzieję, że będzie) zamierzam pomyśleć nad dalszymi funkcjami:&lt;br/&gt;&lt;ul&gt;&lt;br/&gt; &lt;li&gt;linki do "powiązanych updatów" - czyli takich, które są cytowane w tej wiadomości / same ją cytują&lt;/li&gt;&lt;br/&gt; &lt;li&gt;śledzenie odpowiedzi - czasem ktoś coś pisze w statusie, ktoś mu odpowiada DM-ką (direct message) - &lt;em&gt;what a mess!&lt;/em&gt;. Chciałbym móc to śledzić jakoś inteligentnie.&lt;/li&gt;&lt;br/&gt; &lt;li&gt;wyszukiwanie w wiadomościach (czy jest sens full-text search?)&lt;/li&gt;&lt;br/&gt; &lt;li&gt;stronicowanie. chyba się może przydać...&lt;/li&gt;&lt;br/&gt; &lt;li&gt;&lt;strong&gt;wygląd! &lt;/strong&gt;To, jak teraz blipfiltr wygląda, jest efektem tego, co pisał Jeff Atwood na blogu &lt;a href='http://blog.stackoverflow.com/2008/07/stack-overflow-beta-design/'&gt;stackoverflow.com&lt;/a&gt; - &lt;em&gt;Trust me, you do not want to see the “programmer” design we had before this.&lt;/em&gt; Tjaaa...&lt;/li&gt;&lt;br/&gt; &lt;li&gt;Ktoś umie zrobić jakieś logo? :) Oczywiście, pro publico bono :)&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-1084154869122276050?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/6OYgbfUprRrPBtTpTo5x5AlUDO8/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6OYgbfUprRrPBtTpTo5x5AlUDO8/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/6OYgbfUprRrPBtTpTo5x5AlUDO8/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/6OYgbfUprRrPBtTpTo5x5AlUDO8/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/fTB-wAIJTFo" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/1084154869122276050/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=1084154869122276050" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/1084154869122276050?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/1084154869122276050?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/fTB-wAIJTFo/blipfiltr-zmiany.html" title="blipFiltr - zmiany" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/11/blipfiltr-zmiany.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DUINSHc9cSp7ImA9WxRUFUk.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-7445121705864369740</id><published>2008-11-03T18:22:00.000+01:00</published><updated>2008-11-24T18:26:39.969+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-11-24T18:26:39.969+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="django" /><category scheme="http://www.blogger.com/atom/ns#" term="software" /><title>denormalizować</title><content type="html">&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Zapewne to, co napiszę tutaj będzie trywialne - ale może ktoś z tego skorzysta...&lt;br/&gt;&lt;br/&gt;Jakoś niedawno bawiłem się w walidację formularzy w django - a chwilę później &lt;a href='http://alex.blip.pl'&gt;^alex&lt;/a&gt; zetknął się z takim problemem i &lt;a href='http://blip.pl/s/4536545'&gt;zapytał&lt;/a&gt; na blipie. Miałem to na świeżo, więc nawet dostałem ++ do lansu (&lt;a href='http://blip.pl/s/4537588'&gt;tutaj&lt;/a&gt;).&lt;br/&gt;&lt;br/&gt;Dziś znów, podczas pisania swojego nowego cudeńka (o którym tutaj, mam nadzieję, więcej wkrótce napiszę) zetknąłem się z problemem w modelu, który sprowadził się do tego - normalizować czy denormalizować bazę?&lt;br/&gt;&lt;br/&gt;Nad problemem normalizacja czy nie zastanawiał się też Jeff Atwood na &lt;a href='http://www.codinghorror.com/blog/archives/001152.html'&gt;swoim blogu&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;Sytuacja jest taka: dwie tabele, jedna z nich zawiera dane transakcji - nazwijmy ją tabelą A. Druga - tabela B, połączona z tabelką A przez ForeignKey.&lt;br/&gt;&lt;br/&gt;Mamy więc &lt;strong&gt;many B&lt;/strong&gt; - &lt;strong&gt;one A&lt;/strong&gt;.&lt;br/&gt;&lt;br/&gt;&lt;img height='384' width='288' alt='' src='http://lh4.ggpht.com/_psXljHkNj4s/SPXDXfuNikI/AAAAAAAAA6Q/qQWINoFhZc0/s640/IMG_1856.JPG' class='alignright'/&gt;&lt;br/&gt;&lt;br/&gt;Teraz, chcę wybrać te obiekty &lt;strong&gt;A&lt;/strong&gt;, które mają jeden (lub zero) powiązanych &lt;strong&gt;B&lt;/strong&gt;.&lt;br/&gt;&lt;br/&gt;Po kilku próbach zrobienia tego przez normalne filtrowanie, zapytałem na &lt;a href='http://stackoverflow.com/questions/258296/django-models-how-to-filter-number-of-foreignkey-objects'&gt;stackoverflow&lt;/a&gt;. Jedna z odpowiedzi sugeruje użycie składni &lt;strong&gt;.extra&lt;/strong&gt; obiektu &lt;strong&gt;QuerySet&lt;/strong&gt;. Wolałem tego uniknąć...&lt;br/&gt;&lt;br/&gt;Druga - każe się zastanowić nad denormalizacją bazy - i dodaniem do modelu &lt;strong&gt;A &lt;/strong&gt;dodatkowego elemrntu, albo wskazującego na ilość linkujących do niego &lt;strong&gt;B&lt;/strong&gt;, albo zawierających po prostu boolowską zmienną mówiącą &lt;em&gt;czy jest zero lub jeden takich &lt;strong&gt;B&lt;/strong&gt;, że b.a_id = a.id.&lt;/em&gt;&lt;br/&gt;&lt;br/&gt;No i mamy denormalizację. Podręcznikowy przykład, przy którym należy sobie zadać pytanie o dwie sprawy:&lt;br/&gt;&lt;ul&gt;&lt;br/&gt; &lt;li&gt;&lt;strong&gt;wydajność&lt;/strong&gt; - czy aktualizacja obiektów jest częsta? Czy narzut związany z dodatkowym parametrem i każdorazowym jego przeliczaniem rekompensuje trochę szybsze wykonanie zapytania wyświetlającego nasze dane? Jest to więc pytanie o to, która z operacji wykonywana jest częściej.&lt;/li&gt;&lt;br/&gt; &lt;li&gt;&lt;strong&gt;zachowanie spójności bazy &lt;/strong&gt;- jeśli skasuję obiekt &lt;strong&gt;b&lt;/strong&gt;, wskazujący na obiekt &lt;strong&gt;a&lt;/strong&gt;, muszę mieć pewność, że &lt;em&gt;licznik&lt;/em&gt; &lt;strong&gt;a&lt;/strong&gt; zmieni się odpowiednio. Podobnie - przy dodawaniu nowego obiektu.&lt;/li&gt;&lt;br/&gt;&lt;/ul&gt;&lt;br/&gt;Pierwszy przypadek jest bardzo zależny od tego, gdzie i w jakich okolicznościach używane jest to zapytanie, od obciążenia serwera i, jestem pewien, może być różny dla różnych silników bazodanowych. Dlatego najprostszą analizą jest zapytanie - czy wyświetlanie jest &lt;em&gt;częstsze&lt;/em&gt; niż aktualizacja? W moim przypadku jest. &lt;strong&gt;score&lt;/strong&gt;.&lt;br/&gt;&lt;br/&gt;Druga sprawa jest na szczęście dość dobrze obsługiwana przez modele w &lt;em&gt;Django&lt;/em&gt;.&lt;br/&gt;&lt;br/&gt;Po chwili poszukiwań znalazłem sporo materiałów na temat możliwości dawanych przez nadpisanie domyślnej funkcji &lt;strong&gt;models.Model.save()&lt;/strong&gt; dostarczonej przez django. Jedną z lepszych jest wyszukane przez Google (i już niestety nieistniejące poza światem cache'a googla) &lt;a href='http://64.233.183.104/search?q=cache:z7W1uyPt0kkJ:www.martin-geber.com/weblog/2007/10/29/django-signals-vs-custom-save-method/+pre_save+django&amp;amp;hl=pl&amp;amp;ct=clnk&amp;amp;cd=6&amp;amp;gl=pl&amp;amp;client=firefox-a'&gt;Django Signals vs. Custom Save()-Method&lt;/a&gt;.&lt;br/&gt;&lt;br/&gt;W moim wypadku to przesądza. Zrobię składny, szybszy model, co z tego, że nieznormalizowany?&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-7445121705864369740?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/5AqcyrdMJ-9xLwCh4DbLfDtngSE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5AqcyrdMJ-9xLwCh4DbLfDtngSE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/5AqcyrdMJ-9xLwCh4DbLfDtngSE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/5AqcyrdMJ-9xLwCh4DbLfDtngSE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/w5JSBoSaKMA" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/7445121705864369740/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=7445121705864369740" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7445121705864369740?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/7445121705864369740?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/w5JSBoSaKMA/denormalizowa.html" title="denormalizować" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh4.ggpht.com/_psXljHkNj4s/SPXDXfuNikI/AAAAAAAAA6Q/qQWINoFhZc0/s72-c/IMG_1856.JPG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/11/denormalizowa.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CUQBQX07eip7ImA9WxRWEUw.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-8256243506904274149</id><published>2008-10-27T14:06:00.005+01:00</published><updated>2008-10-27T14:15:50.302+01:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-27T14:15:50.302+01:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="blipfiltr" /><category scheme="http://www.blogger.com/atom/ns#" term="blip" /><title>blipFiltr wersja Alfa</title><content type="html">Czasem &lt;span style="font-weight:bold;"&gt;irytowało mnie&lt;/span&gt; poszukiwanie czegoś na &lt;a href="http://blip.pl"&gt;blipie&lt;/a&gt;, albo choćby śledzenie mojej (czy podglądanie czyjejś) rozmowy blipowej przez kokpity. Nie było możliwości ukrycia tam na przykład statusów, a pokazania tylko wiadomości...&lt;br /&gt;Chciał Kender, musiał sam :) &lt;br /&gt;Więc przysiadłem w weekend, odpaliłem stare dobre &lt;a href="http://www.djangoproject.com"&gt;Django&lt;/a&gt; i napisałem &lt;a href="http://blipfiltr.codingslut.com/"&gt;blipFiltra&lt;/a&gt;. Jego zadaniem jest umożliwić użytkownikowi wyfiltrowanie tego, co go interesuje - statusów danego użytkownika, jego wiadomości od/do innych czy konwersjacji (&lt;span style="font-style:italic;"&gt;przez konwersację rozumiem wiadomości od użytkownika1 do użytkownika2 i spowrotem&lt;/span&gt;:). &lt;br /&gt;Blipfiltr nie pyta o hasło ani Twoją nazwę blipusera. Tylko o to, co chcesz widzieć.&lt;br /&gt;Dlatego nie ma się co obawiać wycieku jakichś danych (mam nadzieję). Z zrugiej strony - jeśli chcesz sprawdzać swoje prywatne wiadomości(te wysyłane przez &lt;span style="font-weight:bold;"&gt;&gt;&gt;użytkownik&lt;/span&gt;), to nie tutaj...&lt;br /&gt;Odpaliłem dla blipFiltra też projekt na moim koncie w &lt;a href="www.fogbugz.com"&gt;FogBugz&lt;/a&gt; - link do niego, oraz mail akceptujący zgłoszenia błędów / requestów jest na stronie aplikacji.&lt;br /&gt;Mam nadzieję, że ktoś tego poużywa i będę mógł dodać jakieś bajery :)&lt;br /&gt;A teraz - zapraszam na  &lt;a href="http://blipfiltr.codingslut.com/"&gt;blipFiltr&lt;/a&gt; :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-8256243506904274149?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/b9MtT8MXzOZenLLxt08z8pnLG0Q/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b9MtT8MXzOZenLLxt08z8pnLG0Q/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/b9MtT8MXzOZenLLxt08z8pnLG0Q/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/b9MtT8MXzOZenLLxt08z8pnLG0Q/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/Yu9VjWsqvRw" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/8256243506904274149/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=8256243506904274149" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8256243506904274149?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8256243506904274149?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/Yu9VjWsqvRw/blipfiltr-wersja-alfa.html" title="blipFiltr wersja Alfa" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/10/blipfiltr-wersja-alfa.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CEUDRXo5fCp7ImA9WxRXFk8.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-3196261184771327109</id><published>2008-10-21T22:15:00.005+02:00</published><updated>2008-10-21T22:51:14.424+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-10-21T22:51:14.424+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="film" /><category scheme="http://www.blogger.com/atom/ns#" term="subjective" /><title>Eagle's Eye (czego boi się Amerykanin?)</title><content type="html">Odwiedziliśmy dziś kino, żeby zobaczyć hit kina akcji tej jesieni - &lt;span style="font-style:italic;"&gt;"Eagle Eye"&lt;/span&gt;. To, co napiszę poniżej jest czysto subiektywną opinią, co więcej - może zawierać spoilery. Jako, że nie znam się na &lt;span style="font-weight:bold;"&gt;ambitnym&lt;/span&gt; kinie, piszę to z perspktywy zwyczajnego konsumenta, odbiorcy masówki produkowanej przez Hollywood.&lt;br /&gt;Film zaczyna się od przyjemnej, potencjalnie trzymającej w napięciu, sceny militarnej. Lubię takie, lubię widzieć jak Dobrzy Faceci oglądają Złych Facetów na ekranach, zastanawiają się, czy im dojebać już czy za chwilę... Po prostu to lubię, za ten początek film ma &lt;span style="font-weight:bold;"&gt;plusa&lt;/span&gt;.&lt;br /&gt;Potem akcja próbuje się rozkręcić. Pokazane jest &lt;span style="font-style:italic;"&gt;codzienne&lt;/span&gt; życie bohaterów... ale po co? Dla dalszej fabuły filmu naprawdę nieistotne jest, że szczyl pierwszoplanowy pracuje tam i tam, że ma kiepskie kontakty z ojcem... Że lasia pierwszoplanowa jest rozwiedziona...&lt;br /&gt;Te wątki mogłyby posłużyć stworzeniu wrażenia osamotnienia bohaterów, zagobienia... ale tak się nie dzieje. Przez dalszą część filmu bowiem bohaterowie zbyt zajęci są wyczynianiem akrobacji, rozbijaniem samochodów i wywoływaniem różnych ładnie wyglądających wybuchów, żeby czuć cokolwiek poza spalenizną.&lt;br /&gt;Efekty specjalne w filmie - dobre. Acz z nimi trochę tak jak z pikantnym sosem kebabowym. Dodaje smaku, ale jak go za dużo[1], to łzy wyciska[2].&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Teraz będzie, być może, spoiler.&lt;/span&gt;&lt;br /&gt;Od wspaniałych &lt;span style="font-style:italic;"&gt;"War Games"&lt;/span&gt; przez &lt;span style="font-style:italic;"&gt;"Bladerunnera"&lt;/span&gt;, &lt;span style="font-style:italic;"&gt;"Matrixa"&lt;/span&gt; i &lt;span style="font-style:italic;"&gt;"Animatrixa"&lt;/span&gt; aż do &lt;span style="font-style:italic;"&gt;"Eagle Eye"&lt;/span&gt; - widzimy strach przed czasem wkurzoną, czasem otumanioną, a czasem (po prostu) źle zaprogramowaną &lt;span style="font-weight:bold;"&gt;AI&lt;/span&gt;. &lt;br /&gt;Dodatkowo, w tym filmie, mamy wątek walki z terroryzmem (komunizm w swojej brunatnej [zielono-czerwonej postępowo-gejowskiej] formie panoszy się wszędzie poza Chińską Republiką Ludową, więc potrzebny był inny Wróg Numer Jeden - terroryści, korporacje, Kościół, &lt;span style="font-style:italic;"&gt;you name it&lt;/span&gt;), wątek a'la &lt;span style="font-style:italic;"&gt;Big Brother&lt;/span&gt; (ten co patrzy i mówi: ty odpadasz; i pierdut rozpędzoną ciężarówką w słup). &lt;br /&gt;Wydaje mi się, że w Ameryce, gdzie strach o swobody obywatelskie sięga zenitu[3] ten temat jest chwytliwy. Pomijając kwestię absurdów w filmie, niesłychanych zbiegów okoliczności, głupot technicznych i takich tam (to można wybaczyć - wszak to &lt;span style="font-weight:bold;"&gt;film akcji&lt;/span&gt; a nie dokument, na Boga!), dość wyraźnie widać czego boi się taki Amerykanin - obecność elektroniki wszędzie, kamery, komórki, mikrofony, skanowanie danych biometrycznych... Myślę, że nie tyle należy się obawiać jakiegoś Jednego Wielkiego Złego AI, które nas zacznie zabijać, co raczej bandy robiących "swoje" dla "naszego własnego dobra", durnych urzędników, którzy nagle poczują, że w swoich rękach mają władzę i wiedzę, jakiej dotąd nie mieli.&lt;br /&gt;&lt;br /&gt;[1] - film, w którym trzeba doszukiwać się fabuły spomiędzy kolejnych sekwencji generowanych komputerowo wybuchów - to naprawdę przesada, IMHO. Mimo, że nie jestem fanem Polskich Filmów[4]&lt;br /&gt;[2] - raz zamówiłem kebab przy Politechnice Warszawskiej prosząc o "tyle sosu pikantnego ile się wleje". Kebab zjadłem do jakiejś 1/3, potem niestety nie mogłem powstrzymać łzawienia i bólu gardła i kebab wywaliłem. A smaczny był. &lt;br /&gt;W ten sam sposób film czasem potrafi wycisnąć łzy żalu - wtedy najczęściej przysypiam, by obudzić się akurat na następną sekwencję głośnych efektów spec.&lt;br /&gt;[3] - oni się burzą, że chcą im wprowadzić dokumenty tożsamości - a my z tym żyjemy. Inna sprawa, jak żyjemy... &lt;br /&gt;[4] - wchodzi aktor, patrzy w lewo, patrzy w prawo, patrzy w lewo, zapali papierosa. nic się nie dzieje. nuda.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-3196261184771327109?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/KYDv0wWwL1aEhjmOqfFnCmi4sv4/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KYDv0wWwL1aEhjmOqfFnCmi4sv4/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/KYDv0wWwL1aEhjmOqfFnCmi4sv4/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/KYDv0wWwL1aEhjmOqfFnCmi4sv4/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/UuG9KrjRpHE" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/3196261184771327109/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=3196261184771327109" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/3196261184771327109?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/3196261184771327109?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/UuG9KrjRpHE/eagles-eye-czego-boi-si-amerykanin.html" title="Eagle's Eye (czego boi się Amerykanin?)" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/10/eagles-eye-czego-boi-si-amerykanin.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkYNQ3czfip7ImA9WxdRFUQ.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-5724443634497798916</id><published>2008-06-04T16:22:00.002+02:00</published><updated>2008-06-04T16:36:32.986+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-04T16:36:32.986+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="laptop" /><category scheme="http://www.blogger.com/atom/ns#" term="in English" /><category scheme="http://www.blogger.com/atom/ns#" term="workspace" /><title>Why do laptops suck?</title><content type="html">More and more companies in Poland include in their offers "a laptop to work on". This should sound like an additional benefit, huh? I know there are laptop freaks, but hey, lets face it. If you're a developer and you work on place, at your office or home and don't have to go to your client every now and then, the laptop as a workstation &lt;span style="font-weight: bold;"&gt;will suck&lt;/span&gt;.&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;With a laptop your screen is physicly connected to your keyboard. This means you can only have your screen as far away as your keyboard. And the orientation modifications of your screen are also very minited. No real way to move it to the side of your desk, just because you got this huge coffee cup.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Even with new laptops having larger and larger screens they're still smaller then new desktop displays. That's not that important though.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;With this touchpad in front of your keyboard and trachpoint located somewhere in between the keys, you'll find yourself bumping your mouse cursor from time to time. If you use mouse cursor focus in your window manager (either it be Linux, Mac or Windows, whereever it's possible) it hurts to type your code into the browser address bar, or your credit card number into an email to your boss.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Keyboard layout in laptops is designed to take as little space as possible. This means all your useful keys are probably positioned in a place you wouldn't except them. And you'd loose your keypad. And some people use it for really important tasks (like moving your windows around without mouse).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Keeping your hands ontop of laptop's keyboard makes you feel really uncomfortable. Because of all the heat. At summers it can be a serious disadvantage.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Sure, all those issues can be fixed with using external mouse/keyboard/monitor combo. But then, why to buy a laptop and all those? At same price, I'm quite sure, you can get a decent desktop PC or Mac and be happy to use all it's potential.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-5724443634497798916?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/njJSQQKzlVMW7sXwK7mEFuunF40/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/njJSQQKzlVMW7sXwK7mEFuunF40/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/njJSQQKzlVMW7sXwK7mEFuunF40/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/njJSQQKzlVMW7sXwK7mEFuunF40/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/hv7xmn641z8" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/5724443634497798916/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=5724443634497798916" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/5724443634497798916?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/5724443634497798916?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/hv7xmn641z8/why-do-laptops-suck.html" title="Why do laptops suck?" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/06/why-do-laptops-suck.html</feedburner:origLink></entry><entry gd:etag="W/&quot;CkUCQXo4eyp7ImA9WxdRFUQ.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-8055894298497498239</id><published>2008-05-20T12:25:00.005+02:00</published><updated>2008-06-04T16:37:40.433+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-04T16:37:40.433+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="usability" /><category scheme="http://www.blogger.com/atom/ns#" term="photoshop" /><category scheme="http://www.blogger.com/atom/ns#" term="whatmakesmemad" /><title>usability by Adobe</title><content type="html">Zostałem posadzony przed (czapki z głów) Adobe Photoshopem CS3 wersja 10-cośtam PL trial 30-dniowy. DLACZEGO, ja się pytam:&lt;br /&gt; * Bawię się warstwami. Mam kilka zgrupowanych razem (mają taką słiitaśną sczałeczke przed nazwą, i można toto rozwinąć). Klikam prawym klawiszem na takiej, widzę opcję "Pokaż/ukryj wszystkie pozostałe warstwy". Czego się spodziewam? Otóż, na mój prosty chłopski rozum, powinno mi ukryć wszystko prócz tej jednej (i jej dzieci...). A tu, bzzzzz, ukryło wszystko &lt;span style="font-weight:bold;"&gt;wraz&lt;/span&gt; z dziećmi. Zostaje tylko ta nadrzędna widoczna - a to nie to, czego bym się spodziewał...&lt;br /&gt;&lt;br /&gt;To tyle. Na razie. Bo krótko się przyglądałem temu Wiodącemu Programowi. Google, ja Was proszę, zrobiliście GoogleDocs, zróbcie GoogleGraphicsSuite.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-8055894298497498239?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/9IfkaZwibnBuvi9kb1M0fAKpBmw/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9IfkaZwibnBuvi9kb1M0fAKpBmw/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/9IfkaZwibnBuvi9kb1M0fAKpBmw/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/9IfkaZwibnBuvi9kb1M0fAKpBmw/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/H03hxEgF0v4" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/8055894298497498239/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=8055894298497498239" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8055894298497498239?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8055894298497498239?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/H03hxEgF0v4/usability-by-adobe.html" title="usability by Adobe" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2008/05/usability-by-adobe.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEAFRH84fip7ImA9WxdQEE0.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-4639006877248031419</id><published>2002-06-17T11:43:00.001+02:00</published><updated>2008-06-09T12:18:35.136+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-09T12:18:35.136+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="opowiadanie" /><title>Czat</title><content type="html">&lt;p&gt;Alicja Żak powolnym krokiem podeszła do oświetłonego przez latarnię kręgu. Stanęła koło niej i spojrzała na kwarcowy zegarek marki CASIO. 20:15.&lt;/p&gt;&lt;p&gt;Widział ją na tle latarni. W jej bladoniebieskim świetle wyraźnie odcinały się włosy dziewczyny. Blond. Prawie do pasa. Proste. Obcisłe jeansy siegające połowy łydek. Buty na kilkucentymetrowym obcasie. Twarz skryta w cieniu kaptura, który miał chronić przed zimnym, jesiennym wiatrem. Granatowa kurtka. Nie wygladała na 17 lat, dałby jej minimum 20.&lt;/p&gt;&lt;p&gt;Alicja rozejrzała się. Nigdzie ani śladu chłopaka, z którym się umówiła. Przebiegła w pamięci cechy charakterystyczne. Krótkie włosy, wysoki, ciemny brunet. Szczupły i wysportowany. Niebieskie oczy. Przawie jej ideał.&lt;/p&gt;&lt;p&gt;Jeszcze raz upewnił się czy to właściwa osoba. Spojrzał na wydruk z komputera, porównał zdjęcie z tym co mógł zobaczyć tutaj. To prawie na pewno ona, choć nie widział dokładnie. Rozpiął kurtkę i spokojnym krokiem zaczał iść w jej kierunku.&lt;/p&gt;&lt;p&gt;Odwróciła się gdy usłyszała za sobą kroki. Dość długo patrzyła się na światło, dlatego jedyne co widziała to przysadzista sylwetka jakiegoś mężczyzny średniego wzrostu. To nie on. Zrezygnowana odróciła nieco głowę i spojrzała ponownie w stronę światła. Nikogo nie widać. Ponownie zerknęła na zegarek. Była godzina...&lt;/p&gt;&lt;p&gt;Gdy był o metr od niej odwróciła się do niego plecami. Zignorowała go. Straciła szansę. Sięgnął pod szarą zamszową kurtkę.&lt;/p&gt;&lt;p&gt;Alicja nie zdołała przyswoić sobie która godzina. Poczuła nagle otulającą ją ciemność, zimną i wrogą. Chwilę później już leżała na chodniku zaś mężczyzna stojący nad nią sięgał po jej zegarek. Zdjął go. Była godzina 20:27. Zerwał jej z szyi wisiorek z piorunem, po czym schował ciężką pałkę spowrotem pod kurtkę. Już odchodząc stanął nad nią i odcisnął jej na twarzy podeszwę swego buta. Usłyszał delikatny trzask łamagej chrząstki nosowej, chwilę później pękła też kość policzkowa. Szybkim krokiem ruszył do samochodu.&lt;/p&gt;&lt;p&gt;Po drodze zatrzymał się raz. Małe osiedle, dostatecznie daleko od Centrum. Duży osiedlowy kontener ze śmieciami czule pochłonął jego rękawiczki, pałkę oraz to co zabrał Alicji. Chwilę później, nie zwracając na siebie niczyjej uwagi wsiadł do samochodu i ruszył. Bez pisku opon. Wybiła godzina 21:00&lt;/p&gt;&lt;p&gt;Wszedł do mieszkania, zapalił światło. Kopnięcięm pięty zatrzasnął drzwi, ręką przekręcił zasuwkę. Ruszył do łazienki, gdzie rozebrał się, umył zęby i wiął prysznic. Ogolił dokładnie twarz. Przyjrzał się w lustrze swej 173 cm sylwetce, z lekką nadwagą i przerzedzonymi już włosami. 30 lat na karku, nie to co 10 lat temu.&lt;/p&gt;&lt;p&gt;Wszedł do pokoju, usiadł przed komputerem. przycisnął klawisz ENTER. Pojawił się ekran XScreenSavera zapraszający do podania hasła. Potwierdził swą tożsamość i na jego pulpicie ukazała się przeglądarka Konqueror. Strona startowa - jeden z większych polskich serwisów chatu. Chwilę później wysoki, wysportowany, dwudzuiestoczteroletni brunet umawiał się z kolejną dziewczyną na spotkanie. Jutro wieczorem. Przed kinem.&lt;/p&gt;Paweł uśmiechnął się. To dobre dni. Z nim samym nigdy żadna się nie chciała umówić. Za to - wysocy, bruneci lub blondyni, wysportowana sylwetka - to ich marzenie. Płytkie istoty, co nie patrzą wgłąb. Niech mają miłą śmierć.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-4639006877248031419?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/vo4dUoYGZTa9-arwr7h_XAYJwPE/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vo4dUoYGZTa9-arwr7h_XAYJwPE/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/vo4dUoYGZTa9-arwr7h_XAYJwPE/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/vo4dUoYGZTa9-arwr7h_XAYJwPE/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/sYO4lTyw0xg" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/4639006877248031419/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=4639006877248031419" title="Komentarze (0)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/4639006877248031419?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/4639006877248031419?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/sYO4lTyw0xg/alicja-ak-powolnym-krokiem-podesza-do.html" title="Czat" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>0</thr:total><feedburner:origLink>http://blog.codingslut.com/2002/06/alicja-ak-powolnym-krokiem-podesza-do.html</feedburner:origLink></entry><entry gd:etag="W/&quot;DEEDQXk_fCp7ImA9WxdQEE0.&quot;"><id>tag:blogger.com,1999:blog-2206331030917105192.post-8773265483096228585</id><published>2000-08-12T16:52:00.001+02:00</published><updated>2008-06-09T12:17:50.744+02:00</updated><app:edited xmlns:app="http://www.w3.org/2007/app">2008-06-09T12:17:50.744+02:00</app:edited><category scheme="http://www.blogger.com/atom/ns#" term="in Polish" /><category scheme="http://www.blogger.com/atom/ns#" term="opowiadanie" /><category scheme="http://www.blogger.com/atom/ns#" term="sf" /><title>Dwoje Ludzi</title><content type="html">Drogi Haroldzie, chcesz więc wiedzieć, co spowodowało, że nie powrócę już na me studia? Historia ta tyczy się mej wizyty w pewnym starym domostwie. Jeśli chcesz jej wysłuchać, proszę:&lt;div class="fullText"&gt;&lt;p&gt;Możesz mi wierzyć lub nie, ale jesteś, panie, pierwszym człowiekiem, jaki zagościł w moim domu od lat. Dokładnie od dwudziestu jeden lat... Od kiedy rozstałem się z moim bratem i największym przyjacielem - Szymonem. Chcę, żebyś wiedział, jak wielką radość sprawiło mi twoje przybycie - choć zapewne przypadkowe. I choć jeszcze się nie znamy.&lt;br /&gt;Tymi słowy przywitał mnie pewien stary człowiek, gdy zakołatałem do drzwi jego domu. Dom stał nieco na uboczu od drogi prowadzącej z Arkham do Bostonu, gdzie studiowałem w owych czasach medycynę. Opowiadano o nim dziwne historie, trochę też przerażające - bo czyż nie jest przerażającym, że stary człowiek przez lata całe nie opuszcza swej posiadłości (nie odwiedza nawet pobliskiego sklepu), w ogromnym domu z czasów kolonialnych nie utrzymuje żadnej służby, nocami zaś nawet najbardziej złowrogie zwierzęta omijają z daleka jego dom i ogród. Najbardziej jednak przerażał widok samego domu - cały porośnięty winem, które ciągle zdawało się być w ruchu. Nie widać było nawet skrawka okna wystającego zza roślinności. Tak przynajmniej mówili ci, co byli dość odważni by podejść dostatecznie blisko.&lt;br /&gt;Miejscowi opowiadali też historie o tym, jak kiedyś (lata całe temu) pewna grupa wędrowców zaszła do tego domu, by prosić o schronienie przed straszliwą burzą, która rozpętała się nad okolicznymi wzgórzami. Podobno nigdy więcej nikt ich nie widział.&lt;/p&gt;&lt;p&gt;Zapraszam cię więc do mnie, w moje skromne progi. Usiądź wygodnie, zaraz podam gorącej kawy, dzień dziś chłodny. - Gospodarz tego przeraźliwego domu zaprowadził mnie do biblioteki, posadził w wygodnym fotelu i wyszedł. Ponieważ jednak nie przyszedłem tu na towarzyską pogawędkę lecz kierowany młodzieńczym pociągiem do tego, co nieznane, wstałem i zacząłem się przyglądać książkom zgromadzonym na półkach. Było ich tutaj całe mnóstwo - poczynając od traktatów filozoficznych, kronik historycznych, różnych wydań Biblii aż do akademickich podręczników medycyny. Powiem szczerze, że te, które tam ujrzałem, musiały już mieć sporo lat i z pewnością nie zdałbym egzaminów korzystając z nich, ale mój straszliwy gospodarz musiał ich mieć więcej, jak to wynikło z naszej późniejszej rozmowy.&lt;/p&gt;&lt;p&gt;Widzę, że zaciekawiła cię moja, niecodzienna nieco, kolekcja książek. Mimo, że okoliczni mają mnie za dziwaka, jestem człowiekiem w miarę wykształconym. W każdym razie kiedyś, dawno temu, było o mnie głośno, choć ty już zapewne nie słyszałeś o mnie. Myślę, że moi koledzy woleli ukryć wszystkie informacje o mnie.&lt;/p&gt;&lt;p&gt;Pytasz, kim w taki razie jestem? Usiądź, napij się kawy i wysłuchaj w takim razie mojej historii. Zaczyna się ona dość prozaicznie - urodziłem się w Anglii, w hrabstwie Kent. Moja rodzina tytuł szlachecki posiadała od kiedy tylko mogą wspominać o tym kroniki - a zgromadziłem ich tutaj dużo, nieprawdaż? Miałem czterech braci, dwóch starszych jednak zginęło w Afryce na wojnie. Pomarli z powodu odniesionych ran i zarazili się tamtejszymi chorobami. Wtedy to podjąłem decyzję o mojej przyszłej drodze życiowej.&lt;/p&gt;&lt;p&gt;Nie niecierpliw się, wszystkiego dowiesz się w swoim czasie, panie. Jak mówiłem, właśnie z powodu tyleż przedwczesnej co i tragicznej śmierci moich braci podjąłem decyzję, która zmieniła moje życie, a mogłaby jeszcze zmienić i obraz całego świata, gdyby nie moi nieodpowiedzialni, konserwatywni koledzy z Uniwersytetu w Arkham. Nie mogli pojąć, że przełomowe teorie naukowe wymagają potwierdzenia doświadczalnego, nie mogli nawet pogodzić się z podstawami mojej teorii.&lt;/p&gt;&lt;p&gt;Ale - po kolei. Wszystkiego się dowiesz w swoim czasie, nie dopytuj się więc i nie niecierpliw. Wracając do mojego dzieciństwa - byłem człowiekiem mocno religijnym, związałem się silnie z Kościołem Anglikańskim. Mój o dwa lata młodszy brat - Szymon, chciał nawet zostać pastorem... On - pastorem. Obaj studiowaliśmy pilnie Pismo, zastanawialiśmy się dokładnie nad niektórymi tajemnicami, które zdaniem naszych nauczycieli należało pozostawić nietknięte.&lt;/p&gt;&lt;p&gt;Kierowany tragiczną śmiercią moich dwóch starszych braci, poświęciłem swe życie medycynie. Zamiarem moim było ratować istnienia ludzkie, a może nawet doprowadzić do tego, aby nikt już nigdy nie musiał umierać... Ale uniemożliwiono mi to w końcu, choć sprawdzenie mojej teorii mogłoby dać takie możliwości. Ponieważ nie zajmowali mnie w dzieciństwie rówieśnicy i ich głupie zabawy w wojnę, dużo czytałem i dzieciństwo swe poświęciłem nauce. Dlatego też na Uniwersytecie Londyńskim nauka szła mi dobrze. Dostałem możliwość wyjechania na stypendium do Nowej Anglii, na co przystałem. W tym samym roku mój młodszy brat dostał się na studia fizyczne na Uniwersytecie w Arkham - zapewne wiesz, o którym mówię. Wieczory zajmowały nam więc pogawędki, jako że zawsze uwielbialiśmy spędzać razem czas. On opowiadał mi najczęściej o różnych zwariowanych teoriach w fizyce. Nigdy tej biegłości nie pojmowałem, ale wyłapałem z jego wykładów kilka wniosków, które następnie zaowocowały stworzeniem mojej teorii.&lt;/p&gt;&lt;p&gt;Gdy skończyłem studia, postanowiłem poświęcić się pracy naukowej. Wtedy już na dnie duszy kołatała się myśl, która wykiełkowała dwa lata później - gdy mój brat Szymon został asystentem na Wydziale Fizyki Uniwersytetu Miskatonic. Nie kręć się tak na tym fotelu - jeśli chcesz jeszcze kawy, przyrządzę ci. Sam też zresztą z chęcią zwilżę gardło. Zaraz ci wytłumaczę, czym ta przełomowa w dziejach ludzkości teoria była.&lt;/p&gt;&lt;p&gt;Natchniony przez wykłady mojego brata z dziedziny nauk takich, jak fizyka, matematyka i chemia, moje studia medyczne a także moje poprzednie zainteresowania religijne (o których ci już chyba wspomniałem) zacząłem się zastanawiać nad istotą życia ludzkiego jak i życia w ogóle. Myślałem, czy życie da się sprowadzić w swej zawiłości tylko do zespołu reakcji chemicznych?&lt;/p&gt;&lt;p&gt;Proszę, panie, napij się jeszcze kawy.&lt;/p&gt;&lt;p&gt;Doszliśmy, razem z moim bratem Szymonem do wniosku, że nie da się opisać samymi reakcjami chemicznymi faktu życia. Tak więc musi istnieć jakaś nie-wykryta dotąd siła życiowa, która jest tą przyczyną sprawczą. Po długich latach spędzonych na badaniach rozmaitych tekstów religijnych różnych kultur, a także ustnych przekazów kultur pierwotnych, doszedłem do wniosku, że ową siłą jest to, co powszechnie nazywamy duszą. Tchnienie, które według Biblii, dane zostało ludziom od Boga. Nie jednak stwierdzenie konieczności istnienia duszy dla procesu życia było treścią naszej teorii. W swej bluźnierczej wręcz wierze we własne możliwości postanowiliśmy wykryć, gdzie to "coś", dusza, spoczywa w człowieku, czy też innej istocie. Wiarę bowiem w możliwość wykrycia tego opieraliśmy na zdaniu zapostulowanym przez mojego brata, Szymona, iż jeśli dusza istnieje w stanie spoczynkowym w człowieku, musi mieć masę.&lt;/p&gt;&lt;p&gt;Proszę, pójdź teraz za mną. Zobaczysz coś, czego od dawna niczyje prócz moich oczy nie widziały. - To mówiąc mój gospodarz wskazał mi drzwi na końcu korytarza i otworzył je pokaźnych rozmiarów kluczem. Przekręcany zamek nie wydał z siebie ani jednego dźwięku, tym bardziej przerażające było skrzypnięcie, które rozległo się przy otwieraniu tych dębowych, okutych drzwi. Za nimi, wśród całkowitej ciemności, ujrzałem pierwsze stopnie schodów prowadzących w dół - zapewne do piwnicy. - To tutaj wraz z moim bratem przeprowadzaliśmy wszystkie nasze doświadczenia. - Rzekł mój przewodnik zapalając zawieszoną na ścianie świecę, po czym zamknął z głośnym skrzypnięciem drzwi. Wydało mi się też, że przekręcił klucz w zamku, ale odrzuciłem ten pomysł jako niedorzeczny.&lt;/p&gt;&lt;p&gt;Po kilkunastu krokach stanęliśmy w pokoju piwnicznym, który po chwili rozbłysł światłem elektrycznym. Z moich ust wyrwał się okrzyk zdumienia. Na środku sali stało ogromne urządzenie, kształtem swym nie wyjaśniające w żaden sposób swego zastosowania. Mniej więcej w połowie wysokości znajdowała się szeroka półka, czy też raczej blaszany blat, w regularnych odstępach podziurawiony. Poniżej i powyżej niego z szerokiego, sześciokątnego słupa sięgającego niemal do samego pułapu, wyrastały niezliczone rurki i przewody elektryczne, niczym macki okropnego, prehistorycznego monstrum. Cała zaś powierzchnia owego słupa, zdającego się kryć w swym wnętrzu serce maszyny, usiana była różnorodnymi miernikami, lampkami oraz przestawnymi dźwigniami i pokrętłami.&lt;/p&gt;&lt;p&gt;W owym "blacie" rozpoznałem jakąś dziwną replikę stołu prosektoryjnego, otwory w jego powierzchni miały chyba zapewnić odpływ krwi i innych płynów ustrojowych z krojonego na kawałki ciała denata. Stół jednak był całkiem czysty. Gdy zdołałem oderwać wzrok od urzekająco przerażającej machiny o nieznanym zastosowaniu, spojrzałem nieco dalej, w kąt pomieszczenia. Znajdowało się tam pokaźnych rozmiarów biurko, obok niego stała szafa, której półki aż uginały się pod ciężarem starych i grubych ksiąg. Na biurku zauważyłem kilka leżących w nieładzie kartek papieru. Nogi same mnie poniosły w jego kierunku, lecz w tym momencie mój gospodarz wznowił swą opowieść, jednym spojrzeniem przenikliwych oczu zatrzymując mnie na miejscu.&lt;br /&gt;Tak więc, jak już wspomniałem, zechcieliśmy zapostulować, że dusza istnieje, we wszystkich żywych stworzeniach, jest ona bowiem wyróżnikiem istoty żywej spośród świata nieożywionego. Do tego, jak powiedzieliśmy, dusza istniejąca musi mieć masę. Musi mieć masę... zapamiętaj to sobie - to jest bardzo ważne. Tak więc pozostało nam tylko ją wykryć. - Stary człowiek zachichotał. Nie mogę tego nazwać śmiechem, gdyż był to dźwięk, po usłyszeniu którego poczułem się, jakby mi całe ciało naraz odeszło od kości. Pierwszy raz słyszałem jego śmiejącego się - i, na Boga, mam nadzieję, że środki przedsięwzięte przeze mnie okazały się wystarczające, aby nikt nigdy nie musiał już go słyszeć...&lt;/p&gt;&lt;p&gt;Po chwili, ucichłszy, kontynuował: Mój brat szesnaście miesięcy spędził nad maszyną, która mogłaby na to pozwolić. Musiało to być sprytne połączenie wagi i urządzenia służącego do pozbawiania życia nasze obiekty doświadczalne - zwierzęta, oczywiście. Ja przez ten czas starałem się opracować odpowiednie metody zakończenia życia. Musiały one spełniać szereg warunków - że choćby wymienię ten, który nie pozwalał na konwulsje. Waga musiała być bowiem bardzo czuła, zaś spodziewaliśmy się, że ciężar duszy będzie na tyle niewielki, że jakiekolwiek zakłócenia uniemożliwią nam rzetelny, dokładny i odpowiednio czuły pomiar.&lt;/p&gt;&lt;p&gt;Po szesnastu miesiącach brat mój zbudował ostatecznie swoją wagę, którą w pamiętnikach nazwaliśmy wagą Szymona. Ja przez ten czas wpadłem na bardzo prosty pomysł: należało przed rozpoczęciem uśmiercania naszego obiektu wstrzyknąć mu do żył ten oto roztwór - pokazał strzykawkę napełnioną pewnym zielonym płynem - który wywołuje całkowity paraliż wszystkich części ciała nie pozwalając nawet na konwulsje. Uśmiercenia zaś samego dokonywaliśmy przy użyciu prądu elektrycznego.&lt;/p&gt;&lt;p&gt;Pierwsze doświadczenia przeprowadziliśmy na małych zwierzętach: chomikach i królikach. Po kilku nieudanych próbach w końcu odkryliśmy małe wahania ciężaru zdychającego zwierzęcia. TO było chyba TO!&lt;br /&gt;Zaraz jednak mój brat, Szymon, wykonał jakieś obliczenia (nie pytaj o ich naturę) i powiedział, że musimy odwrócić nasze zwierzątka grzbietem do góry. Zrobiliśmy tak. Wahania masy były mniejsze i jakby bardziej stabilne. W ten sposób dowiedzieliśmy się, że dusza uchodzi z tych zwierząt od tyłu. Późniejsze badania pozwoliły nam na oznaczenie tego miejsca jako punktu, w którym szyja łączy się z plecami.&lt;br /&gt;Przez następne miesiące i lata staraliśmy się udoskonalić naszą metodę. Eksperymentowaliśmy z coraz to większymi zwierzętami, by w końcu dojść do koni, na których przeprowadziliśmy główną część naszych doświadczeń. Brat mój powiedział, że jeśli w chwili śmierci dusza opuszcza zwierzę, można by zobaczyć, czy da się ją w jakiś sposób przekazać innemu zwierzęciu. Wznowiliśmy nasze badania, wtedy też odkryliśmy miejsce, z którego uchodzi dusza. Półtora roku zajęły nam te eksperymenty. Każdy normalny człowiek z pewnością zniechęciłby się do nich, lecz mój brat nie był wtedy normalny. Łączyliśmy dwa obiekty doświadczalne za pomocą systemu przewodów, rurek i przekaźników impulsów elektrycznych. Uśmiercaliśmy jedno z nich i obserwowaliśmy, czy drugie wykazuje nagły przypływ sił witalnych. Ponawialiśmy eksperymenty na różnych gatunkach. Po raz pierwszy efekt zaobserwowaliśmy na szczurach - kiedy to udało się nam utrzymać przy życiu niemal już zdechłego, starego samca. Odkryliśmy jednocześnie, że przekazanie sił życiowych od jakiegoś zwierzęcia osobnikowi innego gatunku powoduje jego natychmiastową śmierć. Nie da się więc przekazywać w ten sposób życiowej energii ludziom. - Mój gospodarz zamilkł, odwrócił się do mnie plecami i zaczął ponownie ze straszliwym chichotem wpatrywać się w swoją wagę.&lt;/p&gt;&lt;p&gt;Podszedłem do stojącego pod ścianą biurka i spojrzałem na papiery, które od pierwszej chwili przyciągały mój wzrok. Gdy tak na nie patrzyłem, w pierwszej chwili nie mogłem wydobyć głosu z gardła. To, co tam zobaczyłem, wydało mi się zbyt okropne, aby mogło powstać w ludzkiej głowie. Po chwili jednak z mych trzewi wydarł się głos, ni to krzyk, ni śmiech.&lt;/p&gt;&lt;p&gt;Pytasz mnie, co ujrzałem na tych kartkach papieru. Ach, drogi&lt;br /&gt;Haroldzie, wiesz, że już nie wrócę na moje studia medyczne? Pewnie zajmę się tajemnicą życia i śmierci... Czy nie zauważyłeś, drogi przyjacielu, że przeżyte chwile jakby mnie odmłodziły? Haroldzie, na tych kartkach papieru był rysunek dwóch ludzi, z zaznaczonymi miejscami, z których uchodzi dusza i gdzie ją trzeba podać. Muszę przyznać, że mój stary gospodarz miał w sobie jeszcze całkiem sporo życia - w końcu część pochodziła od jego dawno martwego brata - w tym przyznam mu pierwszeństwo. &lt;/p&gt;  &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2206331030917105192-8773265483096228585?l=blog.codingslut.com' alt='' /&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feedads.g.doubleclick.net/~a/IPTeJ9xxvu6vyzJPqt1fNyL_Des/0/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IPTeJ9xxvu6vyzJPqt1fNyL_Des/0/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;br/&gt;
&lt;a href="http://feedads.g.doubleclick.net/~a/IPTeJ9xxvu6vyzJPqt1fNyL_Des/1/da"&gt;&lt;img src="http://feedads.g.doubleclick.net/~a/IPTeJ9xxvu6vyzJPqt1fNyL_Des/1/di" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Blogcodingslutcom/~4/JW-Vz1sSJrY" height="1" width="1"/&gt;</content><link rel="replies" type="application/atom+xml" href="http://blog.codingslut.com/feeds/8773265483096228585/comments/default" title="Komentarze do posta" /><link rel="replies" type="text/html" href="http://www.blogger.com/comment.g?blogID=2206331030917105192&amp;postID=8773265483096228585" title="Komentarze (1)" /><link rel="edit" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8773265483096228585?v=2" /><link rel="self" type="application/atom+xml" href="http://www.blogger.com/feeds/2206331030917105192/posts/default/8773265483096228585?v=2" /><link rel="alternate" type="text/html" href="http://feedproxy.google.com/~r/Blogcodingslutcom/~3/JW-Vz1sSJrY/dwoje-ludzi.html" title="Dwoje Ludzi" /><author><name>Kender</name><uri>http://www.blogger.com/profile/15056360500691216731</uri><email>noreply@blogger.com</email><gd:image rel="http://schemas.google.com/g/2005#thumbnail" width="23" height="32" src="http://4.bp.blogspot.com/_psXljHkNj4s/Sa492KLrPiI/AAAAAAAAClY/tFI1L3SBhrY/S220/DSC_1458.jpg" /></author><thr:total>1</thr:total><feedburner:origLink>http://blog.codingslut.com/2012/08/dwoje-ludzi.html</feedburner:origLink></entry></feed>

