<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Visa Kopu]]></title><description><![CDATA[Visa Kopun blogi mielenkiintoisista asioista.]]></description><link>https://visakopu.net/</link><image><url>https://visakopu.net/favicon.png</url><title>Visa Kopu</title><link>https://visakopu.net/</link></image><generator>Ghost 4.48</generator><lastBuildDate>Mon, 06 Apr 2026 00:41:23 GMT</lastBuildDate><atom:link href="https://visakopu.net/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Installed trailer to a bike with hooded dropout]]></title><description><![CDATA[<p>I bought a used Trixie dog trailer for my bike (Fuji Touring Disc) and when I started installing the hitch, it turned out to be more difficult than I expected. The bike has a &quot;hooded dropout&quot; which means that there&apos;s a protruding hood covering each end</p>]]></description><link>https://visakopu.net/2020/12/30/installed-trailer-to-a-bike-with-hooded-dropout/</link><guid isPermaLink="false">5fed038aec19e7000174e765</guid><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Wed, 30 Dec 2020 22:50:02 GMT</pubDate><content:encoded><![CDATA[<p>I bought a used Trixie dog trailer for my bike (Fuji Touring Disc) and when I started installing the hitch, it turned out to be more difficult than I expected. The bike has a &quot;hooded dropout&quot; which means that there&apos;s a protruding hood covering each end of the rear axle, protecting the bolt and the QR skewer. This caused a problem, because the hitch was too large to fit into the slot.</p><p>After banging my head to the wal... I mean doing thorough research on the Net, I found out that Burley makes <a href="https://www.burley.com/product/hitch-adapter/" rel="noopener nofollow ugc">hitch adapters</a> which are specially shaped bolts that extend the rear axle outside the hooded slot. They don&apos;t have anything Burley-specific in them, so I got one for my bike.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/IMG_5369-1.jpeg" class="kg-image" alt="Burley hitch adapter (on the left) and Trixie trailer hitch." loading="lazy" width="2016" height="1512"><figcaption>Burley hitch adapter (on the left) and Trixie trailer hitch.</figcaption></figure><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/IMG_5371.jpeg" class="kg-image" alt="Installing the rear axle extension." loading="lazy" width="2016" height="1512"><figcaption>Installing the rear axle extension.</figcaption></figure><p>The trailer hitch must be installed on the left side (non-drive side) of the bike which meant that I had to reverse the rear axle. Having the QR skewer on the drive side is not an issue per se (apparently some people think it should always be on the other side than the disc brake rotor) but the hooded dropout made it a little problematic. Because of that darned hood, there&apos;s only a couple of ways you can turn the skewer and that&apos;s backward or back and slightly upward. A mirrored QR skewer would be better, but I don&apos;t know if such exist.</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/IMG_5375.jpeg" class="kg-image" alt="On the drive side QR skewer must be closed backward." loading="lazy" width="1512" height="2016"><figcaption>On the drive side QR skewer must be closed backward.</figcaption></figure><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/IMG_5377.jpeg" class="kg-image" alt="Trailer hitch installed to the adapter." loading="lazy" width="2016" height="1512"><figcaption>Trailer hitch installed to the adapter.</figcaption></figure><p>Because of the weather outside I haven&apos;t been able to actually test the setup yet, but I hope next summer I can tour the world (or at least the town) with the dog.</p><p><em>Originally posted at <a href="https://www.reddit.com/r/bicycletouring/comments/kncp78/installed_trailer_to_a_bike_with_hooded_dropout/">https://www.reddit.com/r/bicycletouring/comments/kncp78/installed_trailer_to_a_bike_with_hooded_dropout/</a></em></p>]]></content:encoded></item><item><title><![CDATA[Bike trip to Estonia: Looking back at my pack list]]></title><description><![CDATA[<p>A couple of weeks ago I wrote about my forthcoming bike tour to Estonia and <a href="https://medium.com/@roxeteer/bike-trip-to-estonia-my-gear-and-pack-list-27fc14713314" rel="noopener">listed the stuff I&#x2019;m going to take with me</a>. The trip was a great success and looking back, it was a good idea to pay attention on what to pack and what not.</p>]]></description><link>https://visakopu.net/2019/08/20/bike-trip-to-estonia-looking-back-at-my-pack-list/</link><guid isPermaLink="false">5fe06564ec19e7000174e717</guid><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 20 Aug 2019 08:09:00 GMT</pubDate><media:content url="https://cdn.roxeteermedia.com/visakopu/2020/12/1_W_LCzt6pwnHc7sKOrof40w-1.jpeg" medium="image"/><content:encoded><![CDATA[<img src="https://cdn.roxeteermedia.com/visakopu/2020/12/1_W_LCzt6pwnHc7sKOrof40w-1.jpeg" alt="Bike trip to Estonia: Looking back at my pack list"><p>A couple of weeks ago I wrote about my forthcoming bike tour to Estonia and <a href="https://medium.com/@roxeteer/bike-trip-to-estonia-my-gear-and-pack-list-27fc14713314" rel="noopener">listed the stuff I&#x2019;m going to take with me</a>. The trip was a great success and looking back, it was a good idea to pay attention on what to pack and what not.</p><figure class="kg-card kg-image-card kg-width-full kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_W_LCzt6pwnHc7sKOrof40w.jpeg" class="kg-image" alt="Bike trip to Estonia: Looking back at my pack list" loading="lazy" width="1890" height="1120"><figcaption>Riding on the city streets of Kallaste, Estonia.</figcaption></figure><p>We didn&#x2019;t originally have a fully planned route. Thetrip ended up to be five days (4 days riding, 1 day travelling back on train and ferry). We started in Tallinn, rode to the east to Lahemaa National Park, then towards Rakvere and Lake Peipus, visited <a href="http://www.sibulatee.ee/en/front-page/" rel="noopener nofollow">The Onion Route</a>, and finally ended our trip in Tartu. On the fifth day, we took the train back to Tallinn.</p><figure class="kg-card kg-image-card"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_dMHp0avVhk7j9UF3d810sg.jpeg" class="kg-image" alt="Bike trip to Estonia: Looking back at my pack list" loading="lazy" width="1440" height="1440"></figure><h3 id="what-worked">What worked</h3><p>I really enjoyed our choice of route. The scenery is quite similar to the Finnish countryside <em><em>except that there are no hill</em></em>s which is pretty great when you&#x2019;re on a bike tour. The roads are very well maintained even in the rural Estonia (at least in these parts of the country), there were a surprising amount of separate bike paths, and the drivers behaved remarkably well. During the whole trip, there were maybe one or two cars that drove too close past us, but even they didn&#x2019;t cause any accidents.</p><figure class="kg-card kg-image-card"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_i26sEpjDFIjfFgD8NLdY2Q.jpeg" class="kg-image" alt="Bike trip to Estonia: Looking back at my pack list" loading="lazy" width="2400" height="1504"></figure><p>To carry most of the items, I used <a href="https://www.thule.com/en-us/us/bike-accessories/rear-bike-racks/thule-tour-rack-_-100090" rel="noopener nofollow">Thule Tour Rack</a> and a pair of <a href="https://www.ortlieb.com/back-roller-classic" rel="noopener nofollow">Ortlieb Back Roller Classic panniers</a>. The Thule rack is attached with straps instead of screws, and I was a little worried that it wouldn&#x2019;t stay on its place. However, on my Bianchi and with the amount of stuff that I had, it worked perfectly! If I had a bike that has screw holes, I would probably choose a regular rack, though.</p><p>The Ortlieb panniers are called Classic and not without a reason. They are well made, stay in their place, and now tested to be watertight. Highly recommended!</p><p>My Bianchi Via Nirone 7 is a nice bike and it didn&#x2019;t have any technical problems during the trip. The riding position could&#x2019;ve been a little bit more relaxed as my wrists started aching during the days. Having a little break every once in a while always helped and the pain never persisted.</p><p>After the trip, I was surprised how well I had packed for the trip. I basically didn&#x2019;t have any extra items, apart from the first aid kit and the bike fixing kit, and I wouldn&#x2019;t have left without them anyway.</p><figure class="kg-card kg-image-card"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_nQjRrrZcIcoerhn7O3QLBA.jpeg" class="kg-image" alt="Bike trip to Estonia: Looking back at my pack list" loading="lazy" width="1440" height="1440"></figure><p>The weather turned out to be a little colder and more unstable than what we hoped for. <a href="https://www.gorewear.com/eu/fi-en/gore-c3-gore-windstopper-classic-jacket-100259.html" rel="noopener nofollow">Gore Windstopper jacket</a> worked superbly in those conditions, and I was really happy I didn&#x2019;t leave it at home like I originally thought. Also, the <a href="https://www.aliexpress.com/item/32700521687.html" rel="noopener nofollow">leg warmers</a> I bought from AliExpress for a few euros were great on a chilly and rainy day.</p><h3 id="what-didn-t-work">What didn&#x2019;t work</h3><p>There&#x2019;s not much to list here. The <a href="https://www.aliexpress.com/item/32690961687.html" rel="noopener nofollow">lightweight cycling rain jacket</a> from AliExpress was so-so; it either wasn&#x2019;t very water-resistant or it made me sweat a lot, but after biking a couple of hours in the rain, my jersey was all wet. Probably the Gore Windstopper jacket wouldn&#x2019;t have been much better in that weather, anyway, so I won&#x2019;t say the rain jacket was useless. In the afternoon the weather got better, so thanks to having two jackets, I still had a dry Windstopper in the bag.</p><p>Because of the rainy weather, I didn&#x2019;t use the <a href="https://sp-connect.eu/collections/bike/products/bike-bundle" rel="noopener nofollow">SP Connect stem mount</a> for the phone that much. Even though there is an extra rain cover provided, the phone is very open to the elements when mounted. I used the Apple Watch for tracking distances, and we used <a href="http://pood.regio.ee/en/regio-estonian-cycling-routes" rel="noopener nofollow">Regio&#x2019;s Estonian cycling routes map</a> (yes, it&#x2019;s on paper!) for checking the next targets while we had breaks. A few times in the towns, especially in Tallinn, I had the phone mounted on the stem and actively used Google Maps navigation.</p><p>There were only a few items I ended up not using. I didn&#x2019;t need the fouta (hammam towel) because all the places where we stayed provided us with towels. I didn&#x2019;t use the swimming trunks because the weather was too chilly. Also, I didn&#x2019;t use the lights for the bike, because we never rode that late in the night or early in the mornings. And as said, we didn&#x2019;t have any issues with the bikes (or their riders), so we didn&#x2019;t need the first aid kit or tools.</p><figure class="kg-card kg-image-card kg-width-full kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_jAJCPVClosuvsp6WSWQA8w.jpeg" class="kg-image" alt="Bike trip to Estonia: Looking back at my pack list" loading="lazy" width="1890" height="699"><figcaption>Fields somewhere south of Rakvere.</figcaption></figure><h3 id="what-i-would-do-differently-next-time">What I would do differently next time</h3><p>Not much. Our daily distances were 93 km, 107 km, 79 km, and 72 km. Next time I would probably plan the distances to be more on the 70&#x2013;90 km scale than over 100 km.</p><p>I won&#x2019;t say that 100 km was too much, but it&#x2018;s not something I would like to do for many days in a row. If I was to go on a longer trip spanning over more days, I would probably plan a 1-day break after 4&#x2013;5 days of cycling to relax and wash the laundry.</p><p>Our trip was relatively high-speed, so we didn&#x2019;t stop by anywhere during the days except when having coffee or lunch breaks. It was always a bit awkward to enter a caf&#xE9; when you&#x2019;re all sweaty, walking uncomfortably in clip-in shoes, and dressed in lycra. Having a longer break every once in a while would also allow us to do tourist-y stuff like sightseeing. Riding with lower speed and sweating less would of course be an option, but I&#x2019;m not sure if it&#x2019;s viable for me.</p><p>And will there be a next time? Well, we already started to discuss taking the ferry from Helsinki to L&#xFC;beck and riding towards the Netherlands. Maybe next summer!</p><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_QDzeujdSXejZdDKgCwQ9bQ.jpeg" class="kg-image" alt="Bike trip to Estonia: Looking back at my pack list" loading="lazy" width="2400" height="1803"><figcaption>Here we have just reached our destination on the Day 4.</figcaption></figure><hr><p><em>Originally posted at </em><a href="https://medium.com/@roxeteer/bike-trip-to-estonia-looking-back-at-my-pack-list-f5d8f7f8828e">https://medium.com/@roxeteer/bike-trip-to-estonia-looking-back-at-my-pack-list-f5d8f7f8828e</a></p>]]></content:encoded></item><item><title><![CDATA[Bike trip to Estonia: My gear and pack list]]></title><description><![CDATA[<figure class="kg-card kg-image-card kg-width-full kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_usUrSp2ejNBmo2fezdYo8Q.jpeg" class="kg-image" alt loading="lazy" width="1890" height="1004"><figcaption>Estonian coast in summer.</figcaption></figure><p>I&#x2019;m soon leaving on my first multi-day bike touring trip. A friend and I are planning to take the ferry from Helsinki, Finland, over to Tallinn, Estonia. From there we will ride along the northern coastline to Viinistu in Lahemaa National Park. On the</p>]]></description><link>https://visakopu.net/2019/08/03/bike-trip-to-estonia-my-gear-and-pack-list/</link><guid isPermaLink="false">5fe0632dec19e7000174e6e8</guid><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Sat, 03 Aug 2019 21:00:00 GMT</pubDate><media:content url="https://cdn.roxeteermedia.com/visakopu/2020/12/1_i26sEpjDFIjfFgD8NLdY2Q-1.jpeg" medium="image"/><content:encoded><![CDATA[<figure class="kg-card kg-image-card kg-width-full kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_usUrSp2ejNBmo2fezdYo8Q.jpeg" class="kg-image" alt="Bike trip to Estonia: My gear and pack list" loading="lazy" width="1890" height="1004"><figcaption>Estonian coast in summer.</figcaption></figure><img src="https://cdn.roxeteermedia.com/visakopu/2020/12/1_i26sEpjDFIjfFgD8NLdY2Q-1.jpeg" alt="Bike trip to Estonia: My gear and pack list"><p>I&#x2019;m soon leaving on my first multi-day bike touring trip. A friend and I are planning to take the ferry from Helsinki, Finland, over to Tallinn, Estonia. From there we will ride along the northern coastline to Viinistu in Lahemaa National Park. On the next day we will move south to Laekvere and then to Lake Peipus. On the fourth day we&#x2019;re thinking to take the train from Tartu back to Tallinn, but we haven&#x2019;t actually planned anything that far yet. The daily distances will probably be around 80&#x2013;100 km.</p><p>We&#x2019;re not taking any tents, sleeping bags, or cooking items with us, since we&#x2019;re staying in hotels and Airbnb&#x2019;s. This will help us to reduce the weight significantly.</p><figure class="kg-card kg-image-card kg-width-wide kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_i26sEpjDFIjfFgD8NLdY2Q-1.jpeg" class="kg-image" alt="Bike trip to Estonia: My gear and pack list" loading="lazy" width="2400" height="1504"><figcaption>Bianchi Via Nirone 7 with bags.</figcaption></figure><h3 id="the-bike">The bike</h3><p>My bike is a 2019 Bianchi Via Nirone 7. It&#x2019;s not a touring bike by any means, but since we&#x2019;re only riding a few days with quite a little amount of stuff, it&#x2019;s probably good enough.</p><h3 id="the-racks-and-bags">The racks and bags</h3><figure class="kg-card kg-image-card kg-card-hascaption"><img src="https://cdn.roxeteermedia.com/visakopu/2021/01/1_J-j3vtommaDGTd2EbyUcYA.jpeg" class="kg-image" alt="Bike trip to Estonia: My gear and pack list" loading="lazy" width="2400" height="2400"><figcaption>Thule Tour Rack is not pretty, but I think it will do its job.</figcaption></figure><p>The Bianchi is a road bike, so it doesn&#x2019;t have any holes for attaching a rack. That&#x2019;s why I&#x2019;ve opted for <a href="https://www.thule.com/en-us/us/bike-accessories/rear-bike-racks/thule-tour-rack-_-100090" rel="noopener nofollow">Thule Tour Rack</a> fitted with <a href="https://www.thule.com/en-us/us/bike-accessories/rear-bike-racks/thule-pack-n-pedal-side-frames-_-pp_100017" rel="noopener nofollow">Pack &#x2018;n Pedal Side Frames</a> to carry a pair of <a href="https://www.ortlieb.com/back-roller-classic" rel="noopener nofollow">Ortlieb Back Roller Classic panniers</a> which my wife found with a ridiculously low price from a thrift store (&#x20AC;30, unused!). The panniers are a bit on the large side, but they are sturdy, waterproof, and fit nicely on the Thule rack.</p><p>I&#x2019;m also taking a <a href="https://www.aliexpress.com/item/32856142372.html" rel="noopener nofollow">Rockbros tube bag</a> (a &#x201C;gas tank bag&#x201D;) that I bought from AliExpress for &#x20AC;11. It fits my wallet, some snacks, and other frequently used items. Also, I might have a power bank there to charge my phone while riding. Speaking of which, for the phone I have a <a href="https://sp-connect.eu/collections/bike/products/bike-bundle" rel="noopener nofollow">SP Connect bike mount</a> right on the stem.</p><p>Next time I may try <a href="https://bikepacking.com/" rel="noopener nofollow">bikepacking</a> and use a saddle bag and a handlebar bag and maybe a frame bag, but they offer so much less space than traditional panniers that I didn&#x2019;t feel comfortable to try managing with that little amount of stuff on my first longer bike trip.</p><h3 id="riding-gear">Riding gear</h3><p>I&#x2019;m used to riding in my MAMIL uniform, so I&#x2019;m taking bib shorts and a cycling jersey with me on the trip. It would probably be more convenient to use more relaxed clothing, for example to have a break in a caf&#xE9; or visiting a toilet, though.</p><ul><li>Craft bib shorts</li><li>SUGOI jersey</li><li><a href="https://www.gorewear.com/eu/fi-en/gore-c3-gore-windstopper-classic-jacket-100259.html" rel="noopener nofollow">Gore Windstopper jacket</a> (I was going to leave this at home, but the evenings have suddenly turned much colder, and the jacket can be used both on and off the bike)</li><li>Diadora X Tornado SPD shoes (originally MTB shoes, so they are at least a little easier to walk with)</li><li><a href="https://etto.eu/product/stelvio/" rel="noopener nofollow">Etto Stelvio helmet</a></li><li>DeFeet socks</li><li><a href="https://www.aliexpress.com/item/32690961687.html" rel="noopener nofollow">Lightweight cycling rain jacket</a> from AliExpress</li><li><a href="https://www.aliexpress.com/item/32700521687.html" rel="noopener nofollow">Leg</a> and <a href="https://www.aliexpress.com/item/32701300668.html" rel="noopener nofollow">arm</a> warmers from AliExpress (much lighter to carry than extra jersey or pants with long sleeves)</li><li><a href="https://www.aliexpress.com/item/1716433438.html" rel="noopener nofollow">Rockbros cycling eyewear</a> (again from AliExpress, dirty cheap at &#x20AC;10)</li></ul><h3 id="off-the-bike-clothing">Off-the-bike clothing</h3><ul><li><a href="https://www.fjallraven.com/fjallraven-mens-high-coast-trousers-navy-f82461/" rel="noopener nofollow">Fj&#xE4;llr&#xE4;ven High Coast trousers</a> (super comfortable and very lightweight, 289 g, weighing only a half of a pair of jeans)</li><li><a href="https://www.patagonia.com/product/mens-stretch-wavefarer-walk-shorts-20-inch/86641.html" rel="noopener nofollow">Patagonia Wavefarer shorts</a></li><li>A cotton t-shirt</li><li>Helly Hansen light fleece</li><li><a href="https://www.jack-wolfskin.com/seven-wonders-packer-low-m/4026641-1010060.html" rel="noopener nofollow">Jack Wolfskin Seven Wonders Packer Low shoes</a></li><li>Underwear and socks</li><li>Swimming trunks</li></ul><h3 id="toiletries">Toiletries</h3><ul><li>45x90 cm fouta (hammam towel, much lighter than a regular bath towel)</li><li>Super lightweight 6-gram toothbrush and a fitting size toothpaste</li><li>A Gillette razor with the handle cut in half and <a href="https://seatosummit.com/product/trek-travel-pocket-shaving-soap-50-leaf/" rel="noopener nofollow">Sea To Summit Pocket Shaving Soap</a> (19 grams in total!)</li><li>Deodorant</li><li>Travel size hairbrush and hair wax</li><li><a href="https://www.tammed.fi/tuotteet/pyorailijan-ensiapupakkaus-cyclo/" rel="noopener nofollow">Tammed Cyclo first aid kit for cyclists</a></li><li>Painkiller and other medication</li><li>Sunscreen</li><li>Hand sanitizer</li><li>Chamois cream</li><li>Ear plugs</li><li>Nail clippers (can also substitute for tweezers)</li></ul><h3 id="other-items">Other items</h3><ul><li>Wallet and passport</li><li>An IKEA pencil</li><li>A spork</li><li>Chain oil</li><li>Duct tape</li><li>Energy gel, SIS caffeine shots, and other snacks</li><li>Drink bottles: Camelback Podium 0.71 l and Elite Corsa 0.55 l</li><li>Elite Custom Race bottle cages (x2)</li><li>An iPhone 7 and an Apple Watch with charging cables</li><li>Apple Europlug USB charger (one of the smallest chargers I know)</li><li>A power bank with two USB ports (can also be used as a hub to turn the Apple charger&#x2019;s one USB port into two for charging the power bank, the phone, and the watch at the same time)</li><li><a href="https://www.leatherman.com/skeletool-18.html" rel="noopener nofollow">Leatherman Skeletool</a></li><li>Multitool</li><li>Extra inner tube</li><li>Patching kit with multiple tire levers</li><li><a href="https://bbbcycling.com/en_en/bmp-49-easyroad" rel="noopener nofollow">BBB EasyRoad mini pump</a></li><li><a href="https://magicshine.us/product/ms-622-versatile-bike-light-combo/" rel="noopener nofollow">MagicShine MS-622 lights</a> (front and rear, very minimalistic, weighing only 57 grams in total)</li><li>Biltema folding lock and an Abus locking cable with loops</li><li>A lightweight wire lock for panniers (so that nobody can just grab them along)</li><li><a href="http://www.kmcchain.eu/connector-KMC_MissingLink_11R_EPT_Silver_reusable-road_cross-11_speed" rel="noopener nofollow">KMC MissingLink reusable chain connectors</a> for fixing broken chains</li></ul><hr><p><em>Originally posted at </em><a href="https://medium.com/@roxeteer/bike-trip-to-estonia-my-gear-and-pack-list-27fc14713314">https://medium.com/@roxeteer/bike-trip-to-estonia-my-gear-and-pack-list-27fc14713314</a><br></p>]]></content:encoded></item><item><title><![CDATA[Best SSH tip of the year]]></title><description><![CDATA[<p>Why didn&#x2019;t anyone tell me about <strong><strong>transparent multi-hop SSH</strong></strong> before?</p><p>We have production servers that are not directly accessible through the Internet with SSH. To access the server, you have to first log into a proxy host and from there you can <em><em>ssh</em></em> to the actual host. The</p>]]></description><link>https://visakopu.net/2015/04/01/best-ssh-tip-of-the-year/</link><guid isPermaLink="false">5fed02ddec19e7000174e753</guid><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Wed, 01 Apr 2015 21:45:00 GMT</pubDate><content:encoded><![CDATA[<p>Why didn&#x2019;t anyone tell me about <strong><strong>transparent multi-hop SSH</strong></strong> before?</p><p>We have production servers that are not directly accessible through the Internet with SSH. To access the server, you have to first log into a proxy host and from there you can <em><em>ssh</em></em> to the actual host. The production servers are not even in a domain that would be resolved through public DNS.</p><p>This is of course very secure and all, but makes it difficult to locally run scripts that access the production host. But, <em><em>ProxyCommand</em></em> to the rescue!</p><p>Let&#x2019;s say our servers are located at <em><em>something.foobar.mgmt</em></em> and our proxy host is at <em><em>proxy.example.com</em></em>. Now, edit your <em><em>~/.ssh/config</em></em> file and add this:</p><pre><code>Host *.foobar.mgmt
  ProxyCommand ssh -A proxy.example.com -W %h:%p</code></pre><p>After adding these two lines, you can directly do <em><em>ssh something.foobar.mgmt</em></em> and SSH will transparently proxy your connection through the other host.</p><p>And if that&#x2019;s not enough, <em><em>scp</em></em> and <em><em>sftp</em></em> will also work straight away using the same configuration.</p><p><em><em>Thanks, Ari!</em></em></p><p><em>Originally posted at <a href="https://medium.com/@roxeteer/best-ssh-tip-of-the-year-45acbb726de8">https://medium.com/@roxeteer/best-ssh-tip-of-the-year-45acbb726de8</a></em></p>]]></content:encoded></item><item><title><![CDATA[JavaScript one-liner to get element’s text content without its child nodes]]></title><description><![CDATA[<p>A testing engineer here at work asked me how he would be able to get an element&#x2019;s text content without the text inside the possible child elements.</p><p>The JavaScript DOM doesn&#x2019;t give us a method to do that directly, but there&#x2019;s a one-line solution</p>]]></description><link>https://visakopu.net/2014/10/16/javascript-one-liner-to-get-elements-text-content-without-its-child-nodes/</link><guid isPermaLink="false">5fe05e03ec19e7000174e699</guid><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Thu, 16 Oct 2014 07:40:00 GMT</pubDate><media:content url="https://cdn.roxeteermedia.com/visakopu/2020/12/1_Vpo9Wp09sHRBP74di_k6bQ.jpeg" medium="image"/><content:encoded><![CDATA[<img src="https://cdn.roxeteermedia.com/visakopu/2020/12/1_Vpo9Wp09sHRBP74di_k6bQ.jpeg" alt="JavaScript one-liner to get element&#x2019;s text content without its child&#xA0;nodes"><p>A testing engineer here at work asked me how he would be able to get an element&#x2019;s text content without the text inside the possible child elements.</p><p>The JavaScript DOM doesn&#x2019;t give us a method to do that directly, but there&#x2019;s a one-line solution that uses some interesting JavaScript tricks.</p><h3 id="examples-not-real-world-examples-">Examples (not real world examples)</h3><p>The problem with using <em><em>parentElement.textContent</em></em> directly:</p><pre><code>&lt;h1&gt;Page title &lt;em&gt;Other stuff&lt;/em&gt;&lt;/h1&gt;
  -&gt; &quot;Page title Other stuff&quot;

&lt;p&gt;My &lt;blink&gt;great&lt;/blink&gt; website&lt;/p&gt;
  -&gt; &quot;My great website&quot;</code></pre><p>What we want to achieve:</p><pre><code>&lt;h1&gt;Page title &lt;em&gt;Other stuff&lt;/em&gt;&lt;/h1&gt;
  -&gt; &quot;Page title &quot;

&lt;p&gt;My &lt;blink&gt;great&lt;/blink&gt; website&lt;/p&gt;
  -&gt; &quot;My  website&quot;</code></pre><h3 id="the-solution">The solution</h3><pre><code class="language-JavaScript">// Get the parent element somehow, you can just as well use
// .getElementById() or any other DOM method
var parentElement = document.querySelector(&apos;#myDiv&apos;);

// Returns the text content as a string
[].reduce.call(parentElement.childNodes, function(a, b) { return a + (b.nodeType === 3 ? b.textContent : &apos;&apos;); }, &apos;&apos;);</code></pre><h3 id="how-does-it-work">How does it work?</h3><p>DOM element&#x2019;s <em><em>childNodes</em></em> property is not an array even though it looks like one. It&#x2019;s actually an instance of <em><em>NodeList</em></em> which doesn&#x2019;t have the usual array methods, such as <em><em>.forEach()</em></em>, <em><em>.map()</em></em> or <em><em>.reduce()</em></em>. Luckily, we can easily borrow them from <em><em>Array</em></em> by using the <em><em>.call()</em></em> method found in the <em><em>Function</em></em> prototype.</p><p>So, we&#x2019;re calling <em><em>Array.prototype.reduce</em></em> with a <em><em>NodeList</em></em> by creating an empty array and using its method:</p><pre><code class="language-JavaScript">[].reduce.call(arrayLikeObject, callbackFn, initialValue);

// same as this, but we saved some characters
Array.prototype.reduce.call(arrayLikeObject, callbackFunction, initialValue);</code></pre><p>The .reduce() method takes one mandatory parameter &#x2013; the callback function &#x2013; and optionally the initial value. As stated by <a href="https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce" rel="noopener nofollow">MDN</a>:</p><blockquote><em><em>The <strong><strong>reduce() </strong></strong>method applies a function against an accumulator and each value of the array (from left-to-right) has to reduce it to a single value.</em></em></blockquote><p>We want the end result to be a string, so we give an empty string as the initial value.</p><p>Our callback function looks like this (replaced the one character variable names with slightly more descriptive ones):</p><pre><code class="language-JavaScript">function(result, childNode) {
  return result + (childNode.nodeType === 3 ? childNode.textContent : &apos;&apos;);
}</code></pre><p>The function will be called for each child node (including the text nodes, not only elements separated with HTML tags) that our parent element has.</p><p>The <em><em>result</em></em> parameter contains the string that has accumulated so far.</p><p>The <em><em>childNode</em></em> parameter contains the node currently being processed. First we&#x2019;ll check the child node&#x2019;s type. If it&#x2019;s a text node (its <em><em>nodeType</em></em> is 3, also found in the constant <em><em>Node.TEXT_NODE</em></em>), we concatenate the node&#x2019;s <em><em>textContent</em></em> to the result. Otherwise we concatenate an empty string, keeping the result intact.</p><h3 id="what-about-whitespace">What about whitespace?</h3><p>As you may have noticed, <em>textContent</em> property contains all the whitespace between the elements, including linebreaks. If you need them trimmed, I&#x2019;ll let you do that as a homework.</p><hr><p><em><em>Thanks to </em></em><a href="http://arqex.com/" rel="noopener nofollow"><strong><strong><em><em>Javier M&#xE1;rquez</em></em></strong></strong></a><em><em> for publishing the blog post </em></em><a href="http://arqex.com/939/learning-much-javascript-one-line-code" rel="noopener nofollow"><strong><strong><em><em>Learning much javascript from one line of code</em></em></strong></strong></a><em><em> which gave me a great starting point.</em></em></p><p><em>Originally posted at </em><a href="https://medium.com/@roxeteer/javascript-one-liner-to-get-elements-text-content-without-its-child-nodes-8e59269d1e71">https://medium.com/@roxeteer/javascript-one-liner-to-get-elements-text-content-without-its-child-nodes-8e59269d1e71</a></p>]]></content:encoded></item><item><title><![CDATA[Näin jaat hakemiston paikallisesti webbiserverinä]]></title><description><![CDATA[<p>Pit&#xE4;isi katsoa Paul Irishin <a href="http://www.youtube.com/watch?v=f7AU2Ozu8eo">Javascript Development Workflow of 2013 -video</a> ihan kokonaankin, mutta siit&#xE4; tarttui heti k&#xE4;tev&#xE4; vinkki. Laita t&#xE4;m&#xE4; ~/.profile-tiedostoon tai vastaavaan:</p><pre><code>function server() {
    local port=&quot;${1:-8000}&quot;
    open &quot;http://localhost:${port}/&quot;
    python -m SimpleHTTPServer &quot;</code></pre>]]></description><link>https://visakopu.net/2012/06/26/nain-jaat-hakemiston-paikallisesti-webbiserverina/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc2a</guid><category><![CDATA[Koodaus]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 26 Jun 2012 08:38:50 GMT</pubDate><content:encoded><![CDATA[<p>Pit&#xE4;isi katsoa Paul Irishin <a href="http://www.youtube.com/watch?v=f7AU2Ozu8eo">Javascript Development Workflow of 2013 -video</a> ihan kokonaankin, mutta siit&#xE4; tarttui heti k&#xE4;tev&#xE4; vinkki. Laita t&#xE4;m&#xE4; ~/.profile-tiedostoon tai vastaavaan:</p><pre><code>function server() {
    local port=&quot;${1:-8000}&quot;
    open &quot;http://localhost:${port}/&quot;
    python -m SimpleHTTPServer &quot;$port&quot;
}</code></pre><p>T&#xE4;m&#xE4;n j&#xE4;lkeen ty&#xF6;hakemiston saa jaettua paikallisesti webbiserverin&#xE4; kutsumalla yksinkertaisesti server-komentoa. Oletusarvoisesti k&#xE4;ytet&#xE4;&#xE4;n porttia 8000, mutta sen voi yliajaa antamalla porttinumeron parametrina. Esimerkiksi:</p><pre><code>$ server 8080</code></pre><p>Irishin esimerkist&#xE4; puuttui -m-parametri, ehk&#xE4; Python 3 ei sit&#xE4; vaadi.</p><figure class="kg-card kg-embed-card"><iframe width="612" height="344" src="https://www.youtube.com/embed/f7AU2Ozu8eo?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></figure>]]></content:encoded></item><item><title><![CDATA[Ohjelmointibloggausta työpaikan blogissa]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Jos Python, JavaScript, Django ja muut ohjelmointiaiheet kiinnostavat, kirjoitan nyky&#xE4;&#xE4;n <a href="http://www.2general.com/blog/">2Generalin uunituoreeseen firmablogiin</a>.</p>
<p>Ensimm&#xE4;iset kirjoittamani postaukset k&#xE4;sitteliv&#xE4;t <a href="http://www.2general.com/blog/2012/05/22/virtualenv_install_node_gem.html">Node.js- ja Ruby-pakettien asentamista virtualenviin</a> ja <a href="http://www.2general.com/blog/2012/05/22/django_mediagenerator_dustjs.html">Dust.js-sivupohjien k&#xE4;&#xE4;nt&#xE4;mist&#xE4; django-mediageneratorilla</a>. Lis&#xE4;&#xE4; artikkeleita on tulossa, ainakin</p>]]></description><link>https://visakopu.net/2012/05/25/2general-blog/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc29</guid><category><![CDATA[Blogit]]></category><category><![CDATA[Koodaus]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Fri, 25 May 2012 07:57:16 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Jos Python, JavaScript, Django ja muut ohjelmointiaiheet kiinnostavat, kirjoitan nyky&#xE4;&#xE4;n <a href="http://www.2general.com/blog/">2Generalin uunituoreeseen firmablogiin</a>.</p>
<p>Ensimm&#xE4;iset kirjoittamani postaukset k&#xE4;sitteliv&#xE4;t <a href="http://www.2general.com/blog/2012/05/22/virtualenv_install_node_gem.html">Node.js- ja Ruby-pakettien asentamista virtualenviin</a> ja <a href="http://www.2general.com/blog/2012/05/22/django_mediagenerator_dustjs.html">Dust.js-sivupohjien k&#xE4;&#xE4;nt&#xE4;mist&#xE4; django-mediageneratorilla</a>. Lis&#xE4;&#xE4; artikkeleita on tulossa, ainakin useammin kuin t&#xE4;h&#xE4;n blogiin.</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Päivän asu]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Pukeudun oikeastaan ymp&#xE4;ri vuoden samalla tavalla: farkut, t-paita ja neule. Kev&#xE4;&#xE4;ll&#xE4; takki vaihtuu ohuemmaksi ja jos kes&#xE4; on v&#xE4;h&#xE4;luminen, takin ja neuleen voi j&#xE4;tt&#xE4;&#xE4; pois. Kerralla k&#xE4;yt&#xF6;ss&#xE4; on vain muutama</p>]]></description><link>https://visakopu.net/2012/05/15/paivan-asu/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc28</guid><category><![CDATA[Omat jutut]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 15 May 2012 19:20:54 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Pukeudun oikeastaan ymp&#xE4;ri vuoden samalla tavalla: farkut, t-paita ja neule. Kev&#xE4;&#xE4;ll&#xE4; takki vaihtuu ohuemmaksi ja jos kes&#xE4; on v&#xE4;h&#xE4;luminen, takin ja neuleen voi j&#xE4;tt&#xE4;&#xE4; pois. Kerralla k&#xE4;yt&#xF6;ss&#xE4; on vain muutama vaate kutakin lajia, l&#xE4;hinn&#xE4; varmaan siksi ett&#xE4; t&#xE4;ydenn&#xE4;n vaatekaappia vain pari-kolme kertaa vuodessa.</p>
<p>T&#xE4;n&#xE4;&#xE4;n pukeuduin sinisiin C&amp;A:n farkkuihin, tummansiniseen t-paitaan, jossa lukee <em>I&#x2019;m Jonathan from Spotify</em> (teetin sen joskus jossain nettipalvelussa) ja leve&#xE4;raitaiseen neuleeseen, t&#xE4;ll&#xE4; kertaa sellaiseen, jossa on vetoketju ja huppu. Jalassa olivat mustat sukat, joissa on violetti raita varren yl&#xE4;osassa. Ne tulivat seitsem&#xE4;n parin paketissa, jonka jokaisessa sukkaparissa oli eriv&#xE4;rinen raita. K&#xE4;tev&#xE4;mp&#xE4;&#xE4; kuin kokomustat sukat, kun parittaa sukkia pesun j&#xE4;lkeen.</p>
<p>Keng&#xE4;t ovat Adidaksen parinkympin mustat lenkkarit, jotka ostin k&#xE4;ytetty&#xE4;ni Reebokin lenkkarit parin vuoden aikana t&#xE4;ysin loppuun. Reebokin huomattavasti kalliimmat keng&#xE4;t ostin joskus Tukholmasta ja ne olivat yhdet parhaista ikin&#xE4; omistamistani kengist&#xE4;. Adidaksen keng&#xE4;t eiv&#xE4;t olleet niin hyv&#xE4; ostos, vaikka hintaakin oli tietysti reilusti v&#xE4;hemm&#xE4;n. Adidakset ovat ik&#xE4;v&#xE4;n hiostavat ja ne narisevat v&#xE4;lill&#xE4; muovilattiaa vasten harmillisesti.</p>
<p>En normaalisti kirjoita enk&#xE4; lue n&#xE4;it&#xE4; muotibloggauksia. Pit&#xE4;&#xE4;k&#xF6; t&#xE4;h&#xE4;n laittaa viel&#xE4; jotain? Aamupalaksi s&#xF6;in ruisleip&#xE4;&#xE4; ja join soijalatten.</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Stelmo's Alladin "Romu" 1999-2009]]></title><description><![CDATA[<figure class="kg-card kg-image-card"><img src="https://cdn.roxeteermedia.com/visakopu/2020/11/4205590819_b6b815406a_c.jpg" class="kg-image" alt loading="lazy" width="799" height="655"></figure><p>Rakas hovawartimme Romu nukkui eilen pois pitk&#xE4;n sairastamisen j&#xE4;lkeen. Kev&#xE4;&#xE4;ll&#xE4;, kun maa on sulanut, hautaamme tuhkat talomme pihalle, Romun vahtipaikalle. Niin Romu olisi halunnut.</p><p>Emme tule koskaan unohtamaan sinua, Romppu.</p>]]></description><link>https://visakopu.net/2009/12/22/romu-1999-2009/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc22</guid><category><![CDATA[Eläimet]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 22 Dec 2009 17:28:48 GMT</pubDate><content:encoded><![CDATA[<figure class="kg-card kg-image-card"><img src="https://cdn.roxeteermedia.com/visakopu/2020/11/4205590819_b6b815406a_c.jpg" class="kg-image" alt loading="lazy" width="799" height="655"></figure><p>Rakas hovawartimme Romu nukkui eilen pois pitk&#xE4;n sairastamisen j&#xE4;lkeen. Kev&#xE4;&#xE4;ll&#xE4;, kun maa on sulanut, hautaamme tuhkat talomme pihalle, Romun vahtipaikalle. Niin Romu olisi halunnut.</p><p>Emme tule koskaan unohtamaan sinua, Romppu.</p>]]></content:encoded></item><item><title><![CDATA[Yksitoista vuotta]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Siit&#xE4; on yksitoista vuotta kun syksyll&#xE4; 1998 kirjoitin ylioppilaskirjoituksissa &#xE4;idinkielen esseen. Muistan siit&#xE4; ainoastaan, ett&#xE4; p&#xE4;&#xE4;sin samassa lauseessa Ilmari Kiannon Punaisen viivan agitaattorista Spice Girlseihin. En muista en&#xE4;&#xE4; yht&#xE4;&#xE4;n mist&#xE4; olin kirjoittamassa.</p>
<p>Sain &#xE4;idinkielest&#xE4;</p>]]></description><link>https://visakopu.net/2009/10/09/yksitoista-vuotta/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc21</guid><category><![CDATA[Omat jutut]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Fri, 09 Oct 2009 07:17:57 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Siit&#xE4; on yksitoista vuotta kun syksyll&#xE4; 1998 kirjoitin ylioppilaskirjoituksissa &#xE4;idinkielen esseen. Muistan siit&#xE4; ainoastaan, ett&#xE4; p&#xE4;&#xE4;sin samassa lauseessa Ilmari Kiannon Punaisen viivan agitaattorista Spice Girlseihin. En muista en&#xE4;&#xE4; yht&#xE4;&#xE4;n mist&#xE4; olin kirjoittamassa.</p>
<p>Sain &#xE4;idinkielest&#xE4; L:n, joten jopa YTL:ss&#xE4; tyk&#xE4;ttiin.</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Halutaan: täydellinen mikrobloggausalusta]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Mikrobloggaus on v&#xE4;hent&#xE4;nyt monen bloggaajan p&#xE4;ivitystahtia, niin my&#xF6;s t&#xE4;&#xE4;ll&#xE4; minun blogissani. Mikrobloggauksella tarkoitetaan lyhyit&#xE4; blogikirjoituksen omaisia viestej&#xE4;, joista suomalaisille tutuin on varmaankin Facebookin statusviestit.</p>
<p>Itse olen k&#xE4;ytt&#xE4;nyt mikrobloggaukseen l&#xE4;hinn&#xE4;</p>]]></description><link>https://visakopu.net/2009/03/24/halutaan-taydellinen-mikrobloggausalusta/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc20</guid><category><![CDATA[Blogit]]></category><category><![CDATA[Internet]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 24 Mar 2009 11:52:02 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Mikrobloggaus on v&#xE4;hent&#xE4;nyt monen bloggaajan p&#xE4;ivitystahtia, niin my&#xF6;s t&#xE4;&#xE4;ll&#xE4; minun blogissani. Mikrobloggauksella tarkoitetaan lyhyit&#xE4; blogikirjoituksen omaisia viestej&#xE4;, joista suomalaisille tutuin on varmaankin Facebookin statusviestit.</p>
<p>Itse olen k&#xE4;ytt&#xE4;nyt mikrobloggaukseen l&#xE4;hinn&#xE4; Jaikua, Facebookia, Twitteri&#xE4; ja uusimpana suomalaista Qaikua. Kaikissa niiss&#xE4; on kuitenkin omat ongelmansa.</p>
<p style="text-align:center;">* * *</p>
<p><a href="http://www.jaiku.com/">Jaiku</a> oli melko t&#xE4;ydellinen palvelu, sill&#xE4; siell&#xE4; oli hyv&#xE4; suomalainen porukka ja hyvi&#xE4; keskusteluja, mutta sitten tekniset ongelmat alkoivat hankaloittaa sen k&#xE4;ytt&#xF6;&#xE4;. V&#xE4;h&#xE4;n aikaa sitten palvelu siirtyi Google App Enginen p&#xE4;&#xE4;lle eik&#xE4; se ainakaan helpottanut teknisten ongelmien suhteen. K&#xE4;ytin Jaikua l&#xE4;hinn&#xE4; reissussa S60-mobiiliclientilla ja t&#xF6;iss&#xE4; seuraamalla RSS-feedi&#xE4;. Lis&#xE4;ksi Jaiku ilmoitti s&#xE4;hk&#xF6;postitse, kun keskusteluihin tuli uusia vastauksia. App Engine -siirroksen j&#xE4;lkeen mobiiliclient ei en&#xE4;&#xE4; toimi, RSS-feed on t&#xE4;ynn&#xE4; rikkin&#xE4;ist&#xE4; roskaa eik&#xE4; s&#xE4;hk&#xF6;posteja tule ollenkaan.</p>
<p><a href="http://www.qaiku.com/">Qaiku</a>, kuten nimest&#xE4;kin voi arvata, on yritys tehd&#xE4; parempi Jaiku. Moni suomalainen jaikuilija onkin siirtynyt qaikuilijaksi. Min&#xE4; en kuitenkaan ole oikein p&#xE4;&#xE4;ssyt palveluun sis&#xE4;&#xE4;n, koska siit&#xE4; puuttuvat juuri ne tavat seurata p&#xE4;ivityksi&#xE4;, mit&#xE4; min&#xE4; haluaisin k&#xE4;ytt&#xE4;&#xE4;: mobiiliclient, RSS-feed ja notifikaatios&#xE4;hk&#xF6;postit.</p>
<p><a href="http://twitter.com/">Twitter</a> on varsinaisista mikrobloggauspalveluista maailmanlaajuisesti suosituin. Siell&#xE4; on paljon v&#xE4;ke&#xE4;, my&#xF6;s suomalaisia, mutta Twitter ei oikein tue keskusteluja. Kaikki blogikirjoitukset, &#x201C;tweetit&#x201D;, ovat yksitt&#xE4;isi&#xE4; huutoja pimeyteen eik&#xE4; niihin liity keskusteluthreadia samalla tavalla kuin kaikissa muissa mainitsemissani palveluissa. Twitterin API:n p&#xE4;&#xE4;lle on tehty kaikenlaisia virityksi&#xE4;, joilla tweetit saadaan linkitetty&#xE4; toisiinsa, mutta palvelu itsess&#xE4;&#xE4;n ei kunnollista keskustelua tue. Veikkaan, ett&#xE4; jossain vaiheessa Twitter on pakotettu lis&#xE4;&#xE4;m&#xE4;&#xE4;n tweeteihin kommentointisysteemin.</p>
<p>Twitterin suosio aiheuttaa my&#xF6;s sen suurimman ongelman. P&#xE4;ivityksi&#xE4; on niin paljon, ett&#xE4; niiden seuraamisesta tulee helposti hankalaa. Twitterin k&#xE4;ytt&#xF6;&#xF6;n on hyvi&#xE4; softia, kuten <a href="http://iconfactory.com/software/twitterrific">Twitterrific</a> Mac OS X:lle, mutta mit&#xE4; enemm&#xE4;n seurattavia k&#xE4;ytt&#xE4;ji&#xE4; on, sit&#xE4; rajoittuneemmilta kaikki Twitter-softat alkavat tuntua.</p>
<p>Suomalaisille suosituin mikrobloggauksen kaltainen palvelu on <a href="http://www.facebook.com/">Facebook</a> ja sen statusviestit. Omista Facebook-kavereistani noin puolet p&#xE4;ivitt&#xE4;&#xE4; statusviesti&#xE4;&#xE4;n. Facebookin systeemi on ihan hyv&#xE4;, mutta se on tavallaan suljetumpi, koska ihmiset ovat siell&#xE4; omilla nimill&#xE4;&#xE4;n ja naamoillaan, ja statusviestit ovat perinteisesti olleet tarkoitettu omalle kaveripiirille. Moni k&#xE4;ytt&#xE4;&#xE4; Facebookia puhelinmuistiona, jossa on oikeita kavereita, ja oletusarvoisesti statusviestit n&#xE4;kyv&#xE4;t vain t&#xE4;lle valitulle ryhm&#xE4;lle.</p>
<p>Muissa palveluissa &#x201C;kaverin&#x201D; m&#xE4;&#xE4;ritelm&#xE4; on vapaampi. Esimerkiksi Twitterin k&#xE4;ytt&#xE4;j&#xE4;kulttuurissa kaikki voivat seurata toisiaan ilman, ett&#xE4; tarvitsisi olla oikeasti vaikkapa <a href="http://twitter.com/BarackObama">Barack Obaman</a> kaveri. Twitteri&#xE4; k&#xE4;ytet&#xE4;&#xE4;n monenlaiseen muuhun toimintaan kuin varsinaiseen mikrobloggaukseen, kuten <a href="http://twitter.com/BreakingNewsOn">uutisp&#xE4;ivityksiin</a>.</p>
<p>Facebookin viimeisin uudistus muuttaa siit&#xE4; Twitterin suuntaan &#x2013; varsinkin kun my&#xF6;s Facebook-sivut, eli k&#xE4;yt&#xE4;nn&#xF6;ss&#xE4; br&#xE4;ndit &#x2013; voivat nyt lis&#xE4;t&#xE4; statusviestej&#xE4;. Facebook on my&#xF6;s jatkuvasti siivonnut k&#xE4;ytt&#xF6;liittym&#xE4;st&#xE4;&#xE4;n ylim&#xE4;&#xE4;r&#xE4;ist&#xE4; roskaa pois n&#xE4;kyvist&#xE4;, joka on l&#xE4;hent&#xE4;nyt sit&#xE4; mikrobloggauspalveluihin, mutta samalla vienyt siit&#xE4; pois Facebook-sovellusten tuomaa laajennettavuutta, koska sovellukset ovat entist&#xE4; enemm&#xE4;n piilossa. K&#xE4;ytt&#xE4;j&#xE4;t ovat ottaneet t&#xE4;m&#xE4;n vastaan ristiriitaisin tuntein.</p>
<p>Facebookin kulttuuri on varmasti muuttumassa siihen suuntaan, ett&#xE4; kavereita lis&#xE4;t&#xE4;&#xE4;n listalle vapaammin, ilman &#x201C;tosiel&#xE4;m&#xE4;n&#x201D; sidett&#xE4;. Saa n&#xE4;hd&#xE4; mill&#xE4; tavalla se muuttaa Facebookin k&#xE4;ytt&#xF6;&#xE4;.</p>
<p style="text-align:center;">* * *</p>
<p>Minut l&#xF6;yt&#xE4;&#xE4; <a href="http://roxeteer.jaiku.com/">Jaikusta</a>, <a href="http://www.facebook.com/profile.php?id=666922951">Facebookista</a>, <a href="http://twitter.com/roxeteer">Twitterist&#xE4;</a> ja <a href="http://www.qaiku.com/home/roxeteer/">Qaikusta</a>. Katsotaan, mihin niist&#xE4; tulee jatkossa p&#xE4;ivityksi&#xE4;. Vai tuleeko mihink&#xE4;&#xE4;n?</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Kevätkuulumisia]]></title><description><![CDATA[<!--kg-card-begin: html--><p><a title="Happy little boy by roxeteer, on Flickr" href="http://www.flickr.com/photos/roxeteer/3338431595/"><img style="border:1px solid black;" src="http://farm4.static.flickr.com/3662/3338431595_c7bf65fa6f.jpg" alt="Happy little boy" width="500" height="333"></a></p>
<p>Siit&#xE4; on jo <a href="http://www.visakopu.net/2008/11/09/ensimmainen-isanpaiva/">melkein viisi kuukautta</a>, kun viimeksi kirjoitin Artun kuulumisista t&#xE4;nne blogiin. Aika menee niin nopeasti.</p>
<p>Silloin Arttu oli juuri oppinut konttaamaan. Nyt Arttu on juuri oppinut k&#xE4;velem&#xE4;&#xE4;n. Viime viikonloppuna oltiin Kaisankodissa vanhempieni 30-vuotish&#xE4;&#xE4;p&#xE4;iv&#xE4;juhlassa</p>]]></description><link>https://visakopu.net/2009/03/24/kevatkuulumisia/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc1f</guid><category><![CDATA[Isyys]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 24 Mar 2009 10:45:48 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p><a title="Happy little boy by roxeteer, on Flickr" href="http://www.flickr.com/photos/roxeteer/3338431595/"><img style="border:1px solid black;" src="http://farm4.static.flickr.com/3662/3338431595_c7bf65fa6f.jpg" alt="Happy little boy" width="500" height="333"></a></p>
<p>Siit&#xE4; on jo <a href="http://www.visakopu.net/2008/11/09/ensimmainen-isanpaiva/">melkein viisi kuukautta</a>, kun viimeksi kirjoitin Artun kuulumisista t&#xE4;nne blogiin. Aika menee niin nopeasti.</p>
<p>Silloin Arttu oli juuri oppinut konttaamaan. Nyt Arttu on juuri oppinut k&#xE4;velem&#xE4;&#xE4;n. Viime viikonloppuna oltiin Kaisankodissa vanhempieni 30-vuotish&#xE4;&#xE4;p&#xE4;iv&#xE4;juhlassa ja siell&#xE4; Arttu kipitti pitkin kartanon k&#xE4;yt&#xE4;vi&#xE4;. Kotona k&#xE4;vely vaihtuu viel&#xE4; helposti konttaukseen ja sein&#xE4;tkin ovat aina turhan l&#xE4;hell&#xE4; tuen ottamista varten.</p>
<p>Ty&#xF6;kaveri kertoi hauskan tarinan siit&#xE4;, kuinka toinen heid&#xE4;n lapsistaan oli k&#xE4;vellyt ensimm&#xE4;isen kerran. Lapselle oltiin oltu vaihtamassa vaippaa, kun h&#xE4;n oli p&#xE4;&#xE4;tt&#xE4;nyt kielt&#xE4;yty&#xE4; ja l&#xE4;htenyt juoksemaan ymp&#xE4;ri taloa. Niin lapsi oli kiljunut innosta ja vanhemmat olivat juosseet per&#xE4;ss&#xE4;. Artulla k&#xE4;velem&#xE4;&#xE4;n l&#xE4;ht&#xF6; ei sent&#xE4;&#xE4;n k&#xE4;ynyt ihan noin vauhdikkaasti.</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Polttoaine.netin karttapalvelu pettää lupaukset]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Bensan ja dieselin hintavertailusaitti <a href="http://polttoaine.net/">Polttoaine.net</a> julkaisi t&#xE4;ll&#xE4; viikolla karttapalvelun osaksi saittiaan.</p>
<p>&#x201C;Nyt halvimman polttoaineen l&#xF6;yt&#xE4;minen on aiempaa helpompaa, ja vieraammillakin seuduilla liikkuva autoilija pystyy paremmin l&#xF6;yt&#xE4;m&#xE4;&#xE4;n halvimman tankkauspisteen&#x201D;, lupasi Polttoaine.net tiedotteessaan.</p>
<p>Vaan</p>]]></description><link>https://visakopu.net/2009/01/30/polttoainenetin-karttapalvelu-pettaa-lupaukset/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc1e</guid><category><![CDATA[Internet]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Fri, 30 Jan 2009 11:20:31 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Bensan ja dieselin hintavertailusaitti <a href="http://polttoaine.net/">Polttoaine.net</a> julkaisi t&#xE4;ll&#xE4; viikolla karttapalvelun osaksi saittiaan.</p>
<p>&#x201C;Nyt halvimman polttoaineen l&#xF6;yt&#xE4;minen on aiempaa helpompaa, ja vieraammillakin seuduilla liikkuva autoilija pystyy paremmin l&#xF6;yt&#xE4;m&#xE4;&#xE4;n halvimman tankkauspisteen&#x201D;, lupasi Polttoaine.net tiedotteessaan.</p>
<p>Vaan eip&#xE4; karttasysteemi oikein pid&#xE4; mink&#xE4; lupaa. Ensinn&#xE4;kin koko kartan l&#xF6;yt&#xE4;minen saitilta on vaikeaa. Saitin etusivulla ei ole yht&#xE4;&#xE4;n linkki&#xE4;, joka veisi karttasivulle. Pit&#xE4;&#xE4; keksi&#xE4;, ett&#xE4; ensin pit&#xE4;&#xE4; tehd&#xE4; huoltoasemahaku, esimerkiksi menn&#xE4; katsomaan p&#xE4;&#xE4;kaupunkiseudun huoltoasemien listaa. Tuloslistassa jokaisen huoltoaseman kohdalla on linkki karttaan.</p>
<p><a title="Polttoaine.net map search by roxeteer, on Flickr" href="http://www.flickr.com/photos/roxeteer/3237845231/"><img style="border:1px solid black;" src="http://farm4.static.flickr.com/3259/3237845231_611cd4d392.jpg" alt="Polttoaine.net map search" width="500" height="453"></a></p>
<p>Kun karttasivun lopulta saa auki, joutuu pettym&#xE4;&#xE4;n taas. Suomalaisen <a href="http://karttago.fi/">Karttagon</a> toteuttama kartta on vanhanaikainen klikattavilla nuolilinkeill&#xE4; navigoitava systeemi, ei moderni raahattava kartta, kuten esimerkiksi <a href="http://maps.google.fi/">Google Maps</a> tai <a href="http://maps.live.fi/">Microsoft Live Search Maps</a>.</p>
<p>Karttasivulla n&#xE4;ytet&#xE4;&#xE4;n ainoastaan tuloslistasta valitun huoltoaseman hinnat. Kartalla kuitenkin n&#xE4;kyv&#xE4;t alueen muut huoltoasemat aseman logolla merkittyn&#xE4;. Jos haluaa n&#xE4;hd&#xE4; toisen aseman hinnat, pit&#xE4;&#xE4; logoa klikata, jolloin sivu latautuu uudestaan ja edellisen aseman hinta menee piiloon. Mit&#xE4;&#xE4;n muuta tapaa vertailla hintoja ei ole, kuin klikkailla kaikki asemat l&#xE4;pi ja muistaa edellisten asemien hinnat. Systeemi on aivan naurettava. Olisihan juuri olennaista ollut nopeasti n&#xE4;hd&#xE4;, mik&#xE4; alueen asemista on halvin.</p>
<p>Karttapalvelussa on my&#xF6;s reittihaku. Odotin, ett&#xE4; reittihaku olisi toiminut niin, ett&#xE4; voisin hakea reitin paikasta A paikkaan B ja n&#xE4;kisin reitin varrella olevat huoltoasemat (ja niiden hinnat). Vaan ei, voin ainoastaan laittaa l&#xE4;ht&#xF6;paikan ja hakea reitin valitulle huoltoasemalle.</p>
<p>Polttoaine.net on pitk&#xE4;&#xE4;n ollut j&#xE4;m&#xE4;ht&#xE4;nyt 90-luvulle ja karttahaun julkistaminen lupasi paljon. Ik&#xE4;v&#xE4; kyll&#xE4; k&#xE4;ytt&#xE4;j&#xE4;t joutuvat pettym&#xE4;&#xE4;n.</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Ratkaisu ongelmiin]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Eilen Hesari kertoi, ett&#xE4; Espoon kaupungin vuokra-asuntoyhti&#xF6;n <a href="http://www.hs.fi/kaupunki/artikkeli/Espoossa+kytee+kapinaliike+kaupungin+vuokrayhti%C3%B6t%C3%A4+vastaan/1135242762174">Espoonkruunun asukkaat ovat kyll&#xE4;styneet yhti&#xF6;n toimintaan ja aikovat ryhty&#xE4; kapinaan</a>. Yhti&#xF6;t&#xE4; kritisoivien mielest&#xE4; vuokrat ovat liian korkeat, asukkaita ei kuunnella ja asuntojen korjauksia saa odottaa pitk&#xE4;&#xE4;n.</p>
<p>T&#xE4;</p>]]></description><link>https://visakopu.net/2009/01/16/ratkaisu-ongelmiin/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc1d</guid><category><![CDATA[Maailmalta]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Fri, 16 Jan 2009 21:50:13 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Eilen Hesari kertoi, ett&#xE4; Espoon kaupungin vuokra-asuntoyhti&#xF6;n <a href="http://www.hs.fi/kaupunki/artikkeli/Espoossa+kytee+kapinaliike+kaupungin+vuokrayhti%C3%B6t%C3%A4+vastaan/1135242762174">Espoonkruunun asukkaat ovat kyll&#xE4;styneet yhti&#xF6;n toimintaan ja aikovat ryhty&#xE4; kapinaan</a>. Yhti&#xF6;t&#xE4; kritisoivien mielest&#xE4; vuokrat ovat liian korkeat, asukkaita ei kuunnella ja asuntojen korjauksia saa odottaa pitk&#xE4;&#xE4;n.</p>
<p>T&#xE4;n&#xE4;&#xE4;n Hesarissa kerrottiin, ett&#xE4; Espoonkruunussa on keksitty ratkaisu ongelmiin. <a href="http://www.hs.fi/kaupunki/artikkeli/Espoonkruunun+hallituksesta+halutaan+karsia+asukkaiden+edustajia/1135242791512">Viskataan asukkaiden edustajat pois yhti&#xF6;n hallituksesta!</a></p>
<blockquote><p>Aloitteen hallinnon uudistamisesta tehnyt kokoomuksen Juha-Veikko Kurki perustelee asiaa sill&#xE4;, ett&#xE4; yhti&#xF6;n hallinto on alusta asti ollut tarpeettoman raskas.</p>
<p>H&#xE4;nen mukaansa asukkaiden osallistumisen p&#xE4;&#xE4;painon tulee olla talotasolla.</p></blockquote>
<p>T&#xE4;ytyy vain toivoa, ett&#xE4; Espoonkruunusta l&#xF6;ytyy my&#xF6;s sellaisia puolue-edustajia, jotka haluavat kuunnella asukkaita.</p>
<p style="text-align:center;">* * *</p>
<p>Asiasta toiseen, <a href="http://roxeteer.jaiku.com/">Jaiku-viestini ovat nyt julkisia</a>.</p>
<!--kg-card-end: html-->]]></content:encoded></item><item><title><![CDATA[Retroleluja]]></title><description><![CDATA[<!--kg-card-begin: html--><p>Jos olisi ylim&#xE4;&#xE4;r&#xE4;ist&#xE4; rahaa eik&#xE4; olisi jo talo t&#xE4;ynn&#xE4; Artun leluja, ostaisin kyll&#xE4; jotain <a href="http://www.morgancycle.com/">Morgan Cyclen</a> tai <a href="http://www.radioflyer.com/">Radio Flyerin</a> valmistamaa. Vaikkapa n&#xE4;m&#xE4;:</p>
<p><a href="http://www.morgancycle.com/cars/firescootster.htm"><img class="alignnone size-full wp-image-1638" style="border:0;" title="Morgan Cycle Fire Engine Scoot-ster" src="https://cdn.roxeteermedia.com/visakopu/archive/morgancycle.jpg" alt="Morgan Cycle Fire Engine Scoot-ster" width="500" height="290"></a></p>
<p><a href="http://www.morgancycle.com/cars/firescootster.htm"><strong>Morgan Cycle </strong><strong>Fire Engine Scoot-ster</strong></a></p>
<p><a href="http://www.radioflyer.com/rideon/rideon_8.html"><img class="alignnone size-full wp-image-1639" style="border:0;" title="Radio Flyer Little Red Roadster" src="https://cdn.roxeteermedia.com/visakopu/archive/radioflyer.jpg" alt="Radio Flyer Little Red Roadster" width="500" height="343"></a></p>
<p><strong><a href="http://www.radioflyer.com/rideon/rideon_8.html">Radio Flyer Little Red Roadster</a></strong></p>
<!--kg-card-end: html-->]]></description><link>https://visakopu.net/2009/01/06/retroleluja/</link><guid isPermaLink="false">5fb67b9d5527420001c7cc1c</guid><category><![CDATA[Maailmalta]]></category><dc:creator><![CDATA[Visa Kopu]]></dc:creator><pubDate>Tue, 06 Jan 2009 15:40:32 GMT</pubDate><content:encoded><![CDATA[<!--kg-card-begin: html--><p>Jos olisi ylim&#xE4;&#xE4;r&#xE4;ist&#xE4; rahaa eik&#xE4; olisi jo talo t&#xE4;ynn&#xE4; Artun leluja, ostaisin kyll&#xE4; jotain <a href="http://www.morgancycle.com/">Morgan Cyclen</a> tai <a href="http://www.radioflyer.com/">Radio Flyerin</a> valmistamaa. Vaikkapa n&#xE4;m&#xE4;:</p>
<p><a href="http://www.morgancycle.com/cars/firescootster.htm"><img class="alignnone size-full wp-image-1638" style="border:0;" title="Morgan Cycle Fire Engine Scoot-ster" src="https://cdn.roxeteermedia.com/visakopu/archive/morgancycle.jpg" alt="Morgan Cycle Fire Engine Scoot-ster" width="500" height="290"></a></p>
<p><a href="http://www.morgancycle.com/cars/firescootster.htm"><strong>Morgan Cycle </strong><strong>Fire Engine Scoot-ster</strong></a></p>
<p><a href="http://www.radioflyer.com/rideon/rideon_8.html"><img class="alignnone size-full wp-image-1639" style="border:0;" title="Radio Flyer Little Red Roadster" src="https://cdn.roxeteermedia.com/visakopu/archive/radioflyer.jpg" alt="Radio Flyer Little Red Roadster" width="500" height="343"></a></p>
<p><strong><a href="http://www.radioflyer.com/rideon/rideon_8.html">Radio Flyer Little Red Roadster</a></strong></p>
<!--kg-card-end: html-->]]></content:encoded></item></channel></rss>