<?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"><channel><title><![CDATA[Blog]]></title><description><![CDATA[Personal blog by Ergenekon Yigit.]]></description><link>https://ergenekonyigit.github.io</link><generator>GatsbyJS</generator><lastBuildDate>Sat, 20 Mar 2021 10:29:57 GMT</lastBuildDate><item><title><![CDATA[Planck Keyboard'a Emoji Layer Eklemek]]></title><description><![CDATA[Klavye yapım sürecini buradan okuyabilirsiniz. Merhaba, yakın zamanda klavyeme emojilerden oluşan bir layer ekledim, bu süreçte…]]></description><link>https://ergenekonyigit.github.io/planck-keyboarda-emoji-layer-eklemek/</link><guid isPermaLink="false">https://ergenekonyigit.github.io/planck-keyboarda-emoji-layer-eklemek/</guid><pubDate>Sat, 13 Mar 2021 00:00:00 GMT</pubDate><content:encoded>&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/164c3a579c2ec4d0b86821d06c104505/d2602/planck-keyboard.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAMFAf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAUpThTI4f//EABsQAAMAAgMAAAAAAAAAAAAAAAABAgMEERMU/9oACAEBAAEFAvSh7VkxkuW4Ozgd03//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAWEQADAAAAAAAAAAAAAAAAAAABEBH/2gAIAQIBAT8BgX//xAAfEAACAQMFAQAAAAAAAAAAAAAAAQISIZEDERMiMaH/2gAIAQEABj8Ctp5PIoq5sITu7HWEV9N6mf/EAB4QAQACAQQDAAAAAAAAAAAAAAEAESExQVGBYaGx/9oACAEBAAE/IUNbtNp0bhoPPDMgGoIYn2mre4kVj5n/2gAMAwEAAgADAAAAECvP/8QAFREBAQAAAAAAAAAAAAAAAAAAABH/2gAIAQMBAT8Qqv/EABYRAQEBAAAAAAAAAAAAAAAAAAABEf/aAAgBAgEBPxCDI//EAB0QAAICAgMBAAAAAAAAAAAAAAERACExsUFhoVH/2gAIAQEAAT8QGAmO6RqOoV0W0rMLSQ6lIqagDAWbPk+zDn6G1C4uQsJ//9k=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-keyboard&quot; title=&quot;&quot; src=&quot;/static/164c3a579c2ec4d0b86821d06c104505/4b190/planck-keyboard.jpg&quot; srcset=&quot;/static/164c3a579c2ec4d0b86821d06c104505/e07e9/planck-keyboard.jpg 200w,
/static/164c3a579c2ec4d0b86821d06c104505/066f9/planck-keyboard.jpg 400w,
/static/164c3a579c2ec4d0b86821d06c104505/4b190/planck-keyboard.jpg 800w,
/static/164c3a579c2ec4d0b86821d06c104505/e5166/planck-keyboard.jpg 1200w,
/static/164c3a579c2ec4d0b86821d06c104505/b17f8/planck-keyboard.jpg 1600w,
/static/164c3a579c2ec4d0b86821d06c104505/d2602/planck-keyboard.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Klavye yapım sürecini &lt;a href=&quot;https://ergenekonyigit.github.io/planck-keyboard/&quot;&gt;buradan&lt;/a&gt; okuyabilirsiniz.&lt;/p&gt;
&lt;p&gt;Merhaba, yakın zamanda klavyeme emojilerden oluşan bir layer ekledim, bu süreçte karşılaştığım sorun ve uyguladığım çözümden bahsedeceğim.&lt;/p&gt;
&lt;p&gt;Klavyede &lt;a href=&quot;https://beta.docs.qmk.fm&quot;&gt;qmk firmware&lt;/a&gt; kullandığımdan bir önceki yazıda bahsetmiştim. Qmk dokümanı altında &lt;a href=&quot;https://beta.docs.qmk.fm/using-qmk/software-features/feature_unicode&quot;&gt;unicode&lt;/a&gt; desteğini 3 faklı yöntemle nasıl uygulanacağı anlatılıyor. Ben bunlardan &lt;a href=&quot;https://beta.docs.qmk.fm/using-qmk/software-features/feature_unicode#1-2-unicode-map-id-unicode-map&quot;&gt;Unicode Map&lt;/a&gt; yöntemini tercih ettim.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/ergenekonyigit/glosso/blob/main/rules.mk#L33&quot;&gt;rules.mk&lt;/a&gt; dosyasında unicode map’i açtım. Kullanacağım emojileri &lt;a href=&quot;https://github.com/ergenekonyigit/glosso/blob/main/keymaps/default/keymap.c#L75-L100&quot;&gt;unicode_names&lt;/a&gt; enum’ına çıkardım.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;c&quot;&gt;&lt;pre class=&quot;language-c&quot;&gt;&lt;code class=&quot;language-c&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;enum&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;unicode_names&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token comment&quot;&gt;// Row 0&lt;/span&gt;
    JOY&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;   &lt;span class=&quot;token comment&quot;&gt;// 😂&lt;/span&gt;
    SMIL2&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 😅&lt;/span&gt;
    SMILE&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 😁&lt;/span&gt;
    GRIN&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 😊&lt;/span&gt;
    KISS&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 😘&lt;/span&gt;
    HALO&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 😇&lt;/span&gt;
    PHEW&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 😌&lt;/span&gt;
    CONFU&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 😕&lt;/span&gt;
    PENSV&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 😔&lt;/span&gt;
    UNAMU&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 😒&lt;/span&gt;
    DISAP&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 😞&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Row 1&lt;/span&gt;
    CELE&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 🙌&lt;/span&gt;
    OK&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;    &lt;span class=&quot;token comment&quot;&gt;// 👌&lt;/span&gt;
    PRAY&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 🙏&lt;/span&gt;
    CLAP&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 👏&lt;/span&gt;
    THMUP&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// 👍&lt;/span&gt;

    &lt;span class=&quot;token comment&quot;&gt;// Row 2&lt;/span&gt;
    EYES&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;  &lt;span class=&quot;token comment&quot;&gt;// 👀&lt;/span&gt;
    HUNRD  &lt;span class=&quot;token comment&quot;&gt;// 💯&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt; Bu seçtiğim emojilerin unicode değerlerini &lt;a href=&quot;https://unicode-table.com/en/&quot;&gt;unicode-table&lt;/a&gt; üzerinden bulup &lt;a href=&quot;https://github.com/ergenekonyigit/glosso/blob/main/keymaps/default/keymap.c#L102-L126&quot;&gt;unicode_map&lt;/a&gt; içerisinde eşleştirdim.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;c&quot;&gt;&lt;pre class=&quot;language-c&quot;&gt;&lt;code class=&quot;language-c&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;uint32_t&lt;/span&gt; PROGMEM unicode_map&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
   &lt;span class=&quot;token comment&quot;&gt;// Row 0&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;JOY&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;   &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0X1F602&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;SMIL2&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F605&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;SMILE&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F601&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;GRIN&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F600&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;KISS&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F618&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;HALO&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F607&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;PHEW&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F60C&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;CONFU&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F615&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;PENSV&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F614&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;UNAMU&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F612&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;DISAP&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F61E&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

   &lt;span class=&quot;token comment&quot;&gt;// Row 1&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;CELE&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F64C&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;OK&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;    &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F44C&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;PRAY&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F64F&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;CLAP&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F44F&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;THMUP&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F44D&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;

   &lt;span class=&quot;token comment&quot;&gt;// Row 2&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;EYES&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;  &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F440&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
   &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;HUNRD&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0x1F4AF&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt; &lt;a href=&quot;https://github.com/ergenekonyigit/glosso/blob/main/keymaps/default/keymap.c#L220-L236&quot;&gt;_EMOJI&lt;/a&gt; adında bir layer oluşturup emojileri bu layer’a ekledim. Layer’in son hali aşağıdaki gibi oldu.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/b460507aeda72867d38050ec4ac2be5e/d14d4/emoji-layer.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 26.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAFABQDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAEF/8QAFQEBAQAAAAAAAAAAAAAAAAAAAAH/2gAMAwEAAhADEAAAAcWlkB//xAAUEAEAAAAAAAAAAAAAAAAAAAAQ/9oACAEBAAEFAn//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAUEAEAAAAAAAAAAAAAAAAAAAAQ/9oACAEBAAY/An//xAAUEAEAAAAAAAAAAAAAAAAAAAAQ/9oACAEBAAE/IX//2gAMAwEAAgADAAAAEIQf/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAGBABAAMBAAAAAAAAAAAAAAAAAQARITH/2gAIAQEAAT8QvLIjZrFR6z//2Q==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;emoji-layer&quot; title=&quot;&quot; src=&quot;/static/b460507aeda72867d38050ec4ac2be5e/4b190/emoji-layer.jpg&quot; srcset=&quot;/static/b460507aeda72867d38050ec4ac2be5e/e07e9/emoji-layer.jpg 200w,
/static/b460507aeda72867d38050ec4ac2be5e/066f9/emoji-layer.jpg 400w,
/static/b460507aeda72867d38050ec4ac2be5e/4b190/emoji-layer.jpg 800w,
/static/b460507aeda72867d38050ec4ac2be5e/e5166/emoji-layer.jpg 1200w,
/static/b460507aeda72867d38050ec4ac2be5e/d14d4/emoji-layer.jpg 1562w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;İkinci aşamada belirtilen unicode hex input klavyesini ekledim.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/99baaa649b491682e42a3cdbc4a96664/62522/hex-input.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 90.99999999999999%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAASABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAIEBf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAeLUaDICQAf/xAAZEAADAQEBAAAAAAAAAAAAAAABAjEAEBH/2gAIAQEAAQUCE8GNEDLmvf/EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQMBAT8BH//EABQRAQAAAAAAAAAAAAAAAAAAACD/2gAIAQIBAT8BH//EABgQAAIDAAAAAAAAAAAAAAAAAAAQIDLh/9oACAEBAAY/AjHWP//EABwQAAEDBQAAAAAAAAAAAAAAAAEAEBEgIWFxsf/aAAgBAQABPyEQbuLK6ocEd0n/2gAMAwEAAgADAAAAECgAAP/EABURAQEAAAAAAAAAAAAAAAAAAAEg/9oACAEDAQE/EGP/xAAVEQEBAAAAAAAAAAAAAAAAAAABIP/aAAgBAgEBPxAj/8QAHRABAAICAgMAAAAAAAAAAAAAAQARECExcUFhsf/aAAgBAQABPxA5oJ2uPiCwQ0A6IgF/IIpIV7TlxeP/2Q==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;hex-input-source&quot; title=&quot;&quot; src=&quot;/static/99baaa649b491682e42a3cdbc4a96664/4b190/hex-input.jpg&quot; srcset=&quot;/static/99baaa649b491682e42a3cdbc4a96664/e07e9/hex-input.jpg 200w,
/static/99baaa649b491682e42a3cdbc4a96664/066f9/hex-input.jpg 400w,
/static/99baaa649b491682e42a3cdbc4a96664/4b190/hex-input.jpg 800w,
/static/99baaa649b491682e42a3cdbc4a96664/e5166/hex-input.jpg 1200w,
/static/99baaa649b491682e42a3cdbc4a96664/62522/hex-input.jpg 1560w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Burada karşılaştığım sorun emojileri düzgün ekrana basabilmek için hex inputuna anlık geçip daha sonra diğer input yöntemine dönmekti.&lt;/p&gt;
&lt;p&gt;Bunun için yaptığım “hacky” çözüm EMOJI adında bir macro oluşturup bu EMOJI tuşuna basıldığı an, önce ctrl+alt+space ile hex iput switch’ine geçip daha sonra _EMOJI layer’ını aktif etmek, tuştan parmak kaldırıldığında da yeniden ctrl+alt+space ile bir sonraki input source’a geçmek oldu.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;c&quot;&gt;&lt;pre class=&quot;language-c&quot;&gt;&lt;code class=&quot;language-c&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;case&lt;/span&gt; EMOJI&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;record&lt;span class=&quot;token operator&quot;&gt;-&gt;&lt;/span&gt;event&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;pressed&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;register_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LCTL&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;register_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LALT&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;register_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_SPC&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;layer_on&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;_EMOJI&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;unregister_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LCTL&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;unregister_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LALT&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;unregister_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_SPC&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;register_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LCTL&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;register_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LALT&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;register_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_SPC&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;layer_off&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;_EMOJI&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;unregister_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LCTL&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;unregister_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_LALT&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token function&quot;&gt;unregister_code&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;KC_SPC&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Böylece emoji layer’ını sorunsuz şekilde kullanmaya başladım. Yukarıda dediğim gibi bu benim “hacky” çözümüm, eğer daha verimli bir çözüm bulmuş ve kullanıyorsanız &lt;a href=&quot;https://github.com/ergenekonyigit/glosso&quot;&gt;github&lt;/a&gt;‘dan issue veya pr açabilirsiniz.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Planck Keyboard]]></title><description><![CDATA[Merhaba, bu yazıda yukarıdaki planck klavyenin yapım sürecinden bahsedeceğim. Başlangıç Yıllardır mekanik klavyelere ilgili birisiyim…]]></description><link>https://ergenekonyigit.github.io/planck-keyboard/</link><guid isPermaLink="false">https://ergenekonyigit.github.io/planck-keyboard/</guid><pubDate>Mon, 01 Mar 2021 00:00:00 GMT</pubDate><content:encoded>&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/cdb686d25faee242208f209824f5a90d/d2602/planck-rev2.0-1.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAQFAf/EABUBAQEAAAAAAAAAAAAAAAAAAAID/9oADAMBAAIQAxAAAAFET2irk4S//8QAGhAAAQUBAAAAAAAAAAAAAAAAAQACAxESIf/aAAgBAQABBQKogtMvCvmyhFK4f//EABcRAAMBAAAAAAAAAAAAAAAAAAABEkH/2gAIAQMBAT8Bp4Wz/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAECEv/aAAgBAgEBPwFUbZ//xAAfEAACAQIHAAAAAAAAAAAAAAAAARECISIxMnGBkcH/2gAIAQEABj8C1zsiEnyYqV2ZFrE+n//EABsQAQACAgMAAAAAAAAAAAAAAAEAESFhMUFx/9oACAEBAAE/Ie5IM5XaoYcqAgG1bmh4ICF1H//aAAwDAQACAAMAAAAQWz//xAAWEQEBAQAAAAAAAAAAAAAAAAABEFH/2gAIAQMBAT8QQNR//8QAFxEAAwEAAAAAAAAAAAAAAAAAAAERYf/aAAgBAgEBPxBiVpkf/8QAHhABAAIBBAMAAAAAAAAAAAAAAQARITFBYZFxwdH/2gAIAQEAAT8QA5ODMMFrcT7hovHSm0dS8ASi0M18lYgJKahTzrDDSKF29z//2Q==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.0&quot; title=&quot;&quot; src=&quot;/static/cdb686d25faee242208f209824f5a90d/4b190/planck-rev2.0-1.jpg&quot; srcset=&quot;/static/cdb686d25faee242208f209824f5a90d/e07e9/planck-rev2.0-1.jpg 200w,
/static/cdb686d25faee242208f209824f5a90d/066f9/planck-rev2.0-1.jpg 400w,
/static/cdb686d25faee242208f209824f5a90d/4b190/planck-rev2.0-1.jpg 800w,
/static/cdb686d25faee242208f209824f5a90d/e5166/planck-rev2.0-1.jpg 1200w,
/static/cdb686d25faee242208f209824f5a90d/b17f8/planck-rev2.0-1.jpg 1600w,
/static/cdb686d25faee242208f209824f5a90d/d2602/planck-rev2.0-1.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Merhaba, bu yazıda yukarıdaki planck klavyenin yapım sürecinden bahsedeceğim.&lt;/p&gt;
&lt;h2 id=&quot;başlangıç&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#ba%C5%9Flang%C4%B1%C3%A7&quot; aria-label=&quot;başlangıç permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;&lt;strong&gt;Başlangıç&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Yıllardır mekanik klavyelere ilgili birisiyim. Mekanik klavye kullanmaya 2016’da %75 layouta sahip bir model ile başladım, 2018’de %100luk full-size bir mekanik klavyeye geçtim. O dönemde redditteki &lt;a href=&quot;https://www.reddit.com/r/MechanicalKeyboards/&quot;&gt;r/Mechanical Keyboards&lt;/a&gt; ve &lt;a href=&quot;https://www.reddit.com/r/olkb/&quot;&gt;r/olkb&lt;/a&gt; subredditlerini yoğun şekilde takip ediyordum. Bir süre sonra ben de yapmaya karar verdim.&lt;/p&gt;
&lt;h2 id=&quot;rev-10-2019&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#rev-10-2019&quot; aria-label=&quot;rev 10 2019 permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;&lt;strong&gt;Rev 1.0 (2019)&lt;/strong&gt;&lt;/h2&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/b067a344e7e162c77e1340cafff35ab2/d2602/planck-rev1.0-1.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAABAACBf/EABUBAQEAAAAAAAAAAAAAAAAAAAEC/9oADAMBAAIQAxAAAAHlvDoURaK//8QAGRAAAwEBAQAAAAAAAAAAAAAAAQIRAAMS/9oACAEBAAEFAvZy9YpgNytDd//EABURAQEAAAAAAAAAAAAAAAAAAAAR/9oACAEDAQE/Aar/xAAWEQEBAQAAAAAAAAAAAAAAAAAAARH/2gAIAQIBAT8BsY//xAAbEAABBAMAAAAAAAAAAAAAAAAAARARIRIx0f/aAAgBAQAGPwKqMTpC6Jb/xAAcEAEAAQUBAQAAAAAAAAAAAAABABEhMUFRYdH/2gAIAQEAAT8hNQ9bjhkOesqxdvtWBCnXTpLIMY+xSz//2gAMAwEAAgADAAAAEJDv/8QAFREBAQAAAAAAAAAAAAAAAAAAARD/2gAIAQMBAT8QEx//xAAVEQEBAAAAAAAAAAAAAAAAAAABEP/aAAgBAgEBPxACf//EAB4QAQACAgIDAQAAAAAAAAAAAAEAESFRMUGBkaHB/9oACAEBAAE/ELFbkZ+oMytVuzuzJ4gDpipte5QDetMLsfxxOIlEPNbTuIm2f//Z&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev1.0&quot; title=&quot;&quot; src=&quot;/static/b067a344e7e162c77e1340cafff35ab2/4b190/planck-rev1.0-1.jpg&quot; srcset=&quot;/static/b067a344e7e162c77e1340cafff35ab2/e07e9/planck-rev1.0-1.jpg 200w,
/static/b067a344e7e162c77e1340cafff35ab2/066f9/planck-rev1.0-1.jpg 400w,
/static/b067a344e7e162c77e1340cafff35ab2/4b190/planck-rev1.0-1.jpg 800w,
/static/b067a344e7e162c77e1340cafff35ab2/e5166/planck-rev1.0-1.jpg 1200w,
/static/b067a344e7e162c77e1340cafff35ab2/b17f8/planck-rev1.0-1.jpg 1600w,
/static/b067a344e7e162c77e1340cafff35ab2/d2602/planck-rev1.0-1.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;%100 layout, boyut ve ağırlık(1.3kg) anlamında dezavantaj yaratmaya başladığında küçük ve taşınabilir bir klavyeye geçme düşüncem şekillenmeye başlamıştı. Planck klavyeyi gözume kestirdim, nasıl yapıldığını araştırıp klavye için gerekli ekipmanları temin ettim. Kasa için 2mm plexiglass kullandım, switch ve keycap’leri halihazırda kullandığım mekanik klavyeden aldık.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/8d227183df6d89309975a69a75c2c61d/b17f8/planck-rev1.0-build-1.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAgADBP/EABUBAQEAAAAAAAAAAAAAAAAAAAEA/9oADAMBAAIQAxAAAAHjaAKwm//EABgQAQEBAQEAAAAAAAAAAAAAAAIBAxAS/9oACAEBAAEFAg/ErrI3uZKyk0QvP//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQMBAT8BP//EABURAQEAAAAAAAAAAAAAAAAAABAh/9oACAECAQE/AYf/xAAaEAACAwEBAAAAAAAAAAAAAAAAARESIRBx/9oACAEBAAY/AqwhqEViTVvgqZz/xAAaEAACAwEBAAAAAAAAAAAAAAAAAREhMUFh/9oACAEBAAE/IdEx1igezU0QQi7LF1TdMUb6o0//2gAMAwEAAgADAAAAEEzv/8QAFhEAAwAAAAAAAAAAAAAAAAAAABEh/9oACAEDAQE/EKoM/8QAFhEBAQEAAAAAAAAAAAAAAAAAABEh/9oACAECAQE/EIY//8QAHBABAQACAwEBAAAAAAAAAAAAAREAITFBUYGh/9oACAEBAAE/ECMNTabfmE9WbB7X8w0OKKHODbIPQ94pw11i+YEVLn//2Q==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev1.0-build&quot; title=&quot;&quot; src=&quot;/static/8d227183df6d89309975a69a75c2c61d/4b190/planck-rev1.0-build-1.jpg&quot; srcset=&quot;/static/8d227183df6d89309975a69a75c2c61d/e07e9/planck-rev1.0-build-1.jpg 200w,
/static/8d227183df6d89309975a69a75c2c61d/066f9/planck-rev1.0-build-1.jpg 400w,
/static/8d227183df6d89309975a69a75c2c61d/4b190/planck-rev1.0-build-1.jpg 800w,
/static/8d227183df6d89309975a69a75c2c61d/e5166/planck-rev1.0-build-1.jpg 1200w,
/static/8d227183df6d89309975a69a75c2c61d/b17f8/planck-rev1.0-build-1.jpg 1600w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;O dönemde elektronik ile ilgi ve alakam sıfır olduğu için elektronik konusunda bilgili arkadaşım &lt;a href=&quot;https://twitter.com/burkay_durdu&quot;&gt;Burkay&lt;/a&gt;‘dan yardım istedim. Beraber ilk custom build’ımızı tamamladık. Space tuşundan anlaşılacağı üzere Planck MIT layout tercih ederek 2u büyüklüğünde space kullandık.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/d1e9bd45d0cd385b24a0e46e926fb818/d2602/planck-rev1.0-2.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwABAQEBAAAAAAAAAAAAAAAAAAQBAv/EABUBAQEAAAAAAAAAAAAAAAAAAAEC/9oADAMBAAIQAxAAAAGLOw0qUV//xAAaEAADAQADAAAAAAAAAAAAAAAAAQIRAxIh/9oACAEBAAEFAscmsng7J+iRF5P/xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAVEQEBAAAAAAAAAAAAAAAAAAABEP/aAAgBAgEBPwFSf//EABoQAAICAwAAAAAAAAAAAAAAAAARAQIQEjL/2gAIAQEABj8CW8wd2G8o/8QAHRABAAEEAwEAAAAAAAAAAAAAAQAhMUGREVFhcf/aAAgBAQABPyEta6GV8X2V+nnLF51BXGoJAtP/2gAMAwEAAgADAAAAEODv/8QAFhEBAQEAAAAAAAAAAAAAAAAAAQAh/9oACAEDAQE/EAbb/8QAFhEBAQEAAAAAAAAAAAAAAAAAACFR/9oACAECAQE/EMCP/8QAGxABAAMBAAMAAAAAAAAAAAAAAQARMSFRcZH/2gAIAQEAAT8QBKIWKoiez2Sge96LGVrivKdg/GAwDAE//9k=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev1.0&quot; title=&quot;&quot; src=&quot;/static/d1e9bd45d0cd385b24a0e46e926fb818/4b190/planck-rev1.0-2.jpg&quot; srcset=&quot;/static/d1e9bd45d0cd385b24a0e46e926fb818/e07e9/planck-rev1.0-2.jpg 200w,
/static/d1e9bd45d0cd385b24a0e46e926fb818/066f9/planck-rev1.0-2.jpg 400w,
/static/d1e9bd45d0cd385b24a0e46e926fb818/4b190/planck-rev1.0-2.jpg 800w,
/static/d1e9bd45d0cd385b24a0e46e926fb818/e5166/planck-rev1.0-2.jpg 1200w,
/static/d1e9bd45d0cd385b24a0e46e926fb818/b17f8/planck-rev1.0-2.jpg 1600w,
/static/d1e9bd45d0cd385b24a0e46e926fb818/d2602/planck-rev1.0-2.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Klavyeyi kullanmaya başladım, hatta çantamda taşıyabilmek için bir taşıma kesesi diktim. Kısa bir süre sonra bazı tuşlarda temassızlık ve kasanın plate kısmında çatlamalar oldu.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/addf0c21361fcc8b334786ab5f5e669b/d2602/planck-rev1.0-3.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAMEBf/EABYBAQEBAAAAAAAAAAAAAAAAAAECA//aAAwDAQACEAMQAAABZFfnZ0DhP//EABsQAAICAwEAAAAAAAAAAAAAAAACAQMREhMi/9oACAEBAAEFAuNdRNmHxJd6VV0OZ//EABcRAQEBAQAAAAAAAAAAAAAAAAEAEiL/2gAIAQMBAT8B0Bd3/8QAFxEBAQEBAAAAAAAAAAAAAAAAAQARIf/aAAgBAgEBPwFO2l//xAAcEAACAQUBAAAAAAAAAAAAAAAAAREQEiExYZH/2gAIAQEABj8C1L6YSZvwtThnaf/EABsQAQADAQEBAQAAAAAAAAAAAAEAESExYXGB/9oACAEBAAE/Iez7otRFxyULSC+LCdbB30mk/fkMa1P/2gAMAwEAAgADAAAAEF/P/8QAGREBAAIDAAAAAAAAAAAAAAAAAQBBcaHw/9oACAEDAQE/EBFexBVbn//EABYRAQEBAAAAAAAAAAAAAAAAAAABYf/aAAgBAgEBPxCho//EABwQAQACAgMBAAAAAAAAAAAAAAERIQBhMVFxQf/aAAgBAQABPxAEkS8XHhj0mZYh+ZC3CaGjCsUA0minTFPmCEidLr0b3jsp/QTn/9k=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev1.0&quot; title=&quot;&quot; src=&quot;/static/addf0c21361fcc8b334786ab5f5e669b/4b190/planck-rev1.0-3.jpg&quot; srcset=&quot;/static/addf0c21361fcc8b334786ab5f5e669b/e07e9/planck-rev1.0-3.jpg 200w,
/static/addf0c21361fcc8b334786ab5f5e669b/066f9/planck-rev1.0-3.jpg 400w,
/static/addf0c21361fcc8b334786ab5f5e669b/4b190/planck-rev1.0-3.jpg 800w,
/static/addf0c21361fcc8b334786ab5f5e669b/e5166/planck-rev1.0-3.jpg 1200w,
/static/addf0c21361fcc8b334786ab5f5e669b/b17f8/planck-rev1.0-3.jpg 1600w,
/static/addf0c21361fcc8b334786ab5f5e669b/d2602/planck-rev1.0-3.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Ve ben klavyeyi rafa kaldırdım.&lt;/p&gt;
&lt;h2 id=&quot;2020&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#2020&quot; aria-label=&quot;2020 permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;&lt;strong&gt;(2020)&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;2020 içerisinde klavyeyi düzeltmeyi ve tekrar kullanmaya başlamayı çok istesem de pandemi nedeniyle o motivasyonu yakalayamadım.&lt;/p&gt;
&lt;h2 id=&quot;rev-20-2021&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#rev-20-2021&quot; aria-label=&quot;rev 20 2021 permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;&lt;strong&gt;Rev 2.0 (2021)&lt;/strong&gt;&lt;/h2&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/8ed704a6c566cbf7d1cd677034057835/d2602/planck-rev2.0-2.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 55.99999999999999%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAALABQDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAQD/8QAFgEBAQEAAAAAAAAAAAAAAAAABAED/9oADAMBAAIQAxAAAAGHFmrKlIiP/8QAFhABAQEAAAAAAAAAAAAAAAAAEBET/9oACAEBAAEFAsmv/8QAGBEAAwEBAAAAAAAAAAAAAAAAAAECEzH/2gAIAQMBAT8BiqXTRn//xAAYEQACAwAAAAAAAAAAAAAAAAAAEQETMf/aAAgBAgEBPwFrCyT/xAAZEAABBQAAAAAAAAAAAAAAAAAAASAhMTL/2gAIAQEABj8C0SWjP//EABoQAQADAAMAAAAAAAAAAAAAAAEAESEQMdH/2gAIAQEAAT8hCFsGNWJh7S1dxeP/2gAMAwEAAgADAAAAEJTv/8QAFhEBAQEAAAAAAAAAAAAAAAAAAQAR/9oACAEDAQE/EGnWxH//xAAVEQEBAAAAAAAAAAAAAAAAAAABEP/aAAgBAgEBPxBk/wD/xAAaEAEBAAMBAQAAAAAAAAAAAAABABExUUFh/9oACAEBAAE/EHCMB0kkH0TV5MOpNnbLf//Z&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.0&quot; title=&quot;&quot; src=&quot;/static/8ed704a6c566cbf7d1cd677034057835/4b190/planck-rev2.0-2.jpg&quot; srcset=&quot;/static/8ed704a6c566cbf7d1cd677034057835/e07e9/planck-rev2.0-2.jpg 200w,
/static/8ed704a6c566cbf7d1cd677034057835/066f9/planck-rev2.0-2.jpg 400w,
/static/8ed704a6c566cbf7d1cd677034057835/4b190/planck-rev2.0-2.jpg 800w,
/static/8ed704a6c566cbf7d1cd677034057835/e5166/planck-rev2.0-2.jpg 1200w,
/static/8ed704a6c566cbf7d1cd677034057835/b17f8/planck-rev2.0-2.jpg 1600w,
/static/8ed704a6c566cbf7d1cd677034057835/d2602/planck-rev2.0-2.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Aslında 2021 de 2020’den çok farklı ilerlemiyordu ancak &lt;a href=&quot;https://twitter.com/seyfoyun/status/1360541734351089665?s=20&quot;&gt;Seyfeddin Bassarac&lt;/a&gt;‘ın twitch’teki mekanik klavye yayını ve &lt;a href=&quot;https://twitter.com/fatih/status/1359053871889457154?s=20&quot;&gt;Fatih Arslan&lt;/a&gt;‘ın mekanik klavyeye geçisi motivasyonumu yükseltti.&lt;/p&gt;
&lt;p&gt;2019 sonunda figma üzerinde yeni bir kasa çizip bunu 3mm’lik plexiglass ile kestirmiştim.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/7ebb9cb72c93dfb848541fb9ba91892b/f7132/planck-rev2.0-build-1.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 57.50000000000001%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAMABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAECBf/EABQBAQAAAAAAAAAAAAAAAAAAAAD/2gAMAwEAAhADEAAAAdlUgKD/xAAZEAEAAwEBAAAAAAAAAAAAAAAAAhETARL/2gAIAQEAAQUCygxg8R4ta3//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAEDAQE/AT//xAAUEQEAAAAAAAAAAAAAAAAAAAAQ/9oACAECAQE/AT//xAAXEAADAQAAAAAAAAAAAAAAAAAAIDIx/9oACAEBAAY/ApJMT//EABkQAQEBAAMAAAAAAAAAAAAAAAEAEVFh8P/aAAgBAQABPyHrXkwTAyrXNq//2gAMAwEAAgADAAAAEHMP/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPxA//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPxA//8QAHBAAAgIDAQEAAAAAAAAAAAAAAAERIWFxkYHR/9oACAEBAAE/EJ7fRmF19Ici9J9ONGcOrR//2Q==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.0-build&quot; title=&quot;&quot; src=&quot;/static/7ebb9cb72c93dfb848541fb9ba91892b/4b190/planck-rev2.0-build-1.jpg&quot; srcset=&quot;/static/7ebb9cb72c93dfb848541fb9ba91892b/e07e9/planck-rev2.0-build-1.jpg 200w,
/static/7ebb9cb72c93dfb848541fb9ba91892b/066f9/planck-rev2.0-build-1.jpg 400w,
/static/7ebb9cb72c93dfb848541fb9ba91892b/4b190/planck-rev2.0-build-1.jpg 800w,
/static/7ebb9cb72c93dfb848541fb9ba91892b/e5166/planck-rev2.0-build-1.jpg 1200w,
/static/7ebb9cb72c93dfb848541fb9ba91892b/b17f8/planck-rev2.0-build-1.jpg 1600w,
/static/7ebb9cb72c93dfb848541fb9ba91892b/f7132/planck-rev2.0-build-1.jpg 2032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Kesimden sonra fark ettim ki kayma olmuş, figma bu iş için doğru araç olmayabilir. &lt;a href=&quot;https://twitter.com/ergenekonyigit/status/1204873954357366784?s=20&quot;&gt;Detay&lt;/a&gt;&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/7a818b631a614b5e019d098c61604f73/eea4a/planck-rev2.0-build-2.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAGAAAAwEBAAAAAAAAAAAAAAAAAAIDAQT/xAAWAQEBAQAAAAAAAAAAAAAAAAABAAL/2gAMAwEAAhADEAAAAdpDmzKKD//EABoQAQADAAMAAAAAAAAAAAAAAAIAAxEBEhP/2gAIAQEAAQUCI7R5WPRRJ182WJnJ/8QAFxEBAAMAAAAAAAAAAAAAAAAAAAIREv/aAAgBAwEBPwG2ZP/EABYRAQEBAAAAAAAAAAAAAAAAAAABEf/aAAgBAgEBPwFsf//EABgQAAMBAQAAAAAAAAAAAAAAAAABETEQ/9oACAEBAAY/AsiG0jSUj5//xAAbEAEAAgIDAAAAAAAAAAAAAAABABEhMRBBUf/aAAgBAQABPyGpge4bgLhRwnI06hiihtqGOWf/2gAMAwEAAgADAAAAEJvv/8QAFxEAAwEAAAAAAAAAAAAAAAAAAAExEf/aAAgBAwEBPxDCtEH/xAAVEQEBAAAAAAAAAAAAAAAAAAAQEf/aAAgBAgEBPxCF/8QAGxABAAMAAwEAAAAAAAAAAAAAAQARQSExcVH/2gAIAQEAAT8QezTAHxOlA31c53mBANvQjVwVWBCVIQUEuK2QXDJ//9k=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.0-build&quot; title=&quot;&quot; src=&quot;/static/7a818b631a614b5e019d098c61604f73/4b190/planck-rev2.0-build-2.jpg&quot; srcset=&quot;/static/7a818b631a614b5e019d098c61604f73/e07e9/planck-rev2.0-build-2.jpg 200w,
/static/7a818b631a614b5e019d098c61604f73/066f9/planck-rev2.0-build-2.jpg 400w,
/static/7a818b631a614b5e019d098c61604f73/4b190/planck-rev2.0-build-2.jpg 800w,
/static/7a818b631a614b5e019d098c61604f73/e5166/planck-rev2.0-build-2.jpg 1200w,
/static/7a818b631a614b5e019d098c61604f73/eea4a/planck-rev2.0-build-2.jpg 1280w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Yeni plate 3mm kalınlığında olduğundan switchleri sabit tutabilmek için sıcak silikon ile yapıştırdım, diyotları ve sütunları lehimledim. Bu sefer önceki buildden farklı olarak Planck Grid layout tercih ettim. 1 tane 2u space yerinde 2 tane 1u space tuşu koydum.&lt;/p&gt;
&lt;p&gt;Switch olarak eski buildi parçalayıp çoğunlukla aynı switchlerden devam ettim. 43 adet SteelSeries QX1 Linear, &lt;a href=&quot;https://twitter.com/ardadev&quot;&gt;Arda Kılıçdağı&lt;/a&gt;‘nın 2019’da test için yolladığı 4 adet Gateron Brown (space ve layer tuşları) ve 1 adet Zealios V2 (backspace tuşu).&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/7ce741833e790bd2ade881971551c32c/d2602/planck-rev2.0-build-3.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAECA//EABUBAQEAAAAAAAAAAAAAAAAAAAED/9oADAMBAAIQAxAAAAFOJZagFv/EABoQAAMAAwEAAAAAAAAAAAAAAAABAhESEzL/2gAIAQEAAQUCSSN1FezjZxvMxqf/xAAXEQEAAwAAAAAAAAAAAAAAAAABAhAR/9oACAEDAQE/ASGNf//EABQRAQAAAAAAAAAAAAAAAAAAABD/2gAIAQIBAT8BP//EAB0QAAICAQUAAAAAAAAAAAAAAAABAhEhMUFhkaH/2gAIAQEABj8CpsxJ1uXCWOTRdmV6Uf/EABsQAAICAwEAAAAAAAAAAAAAAAABETEhQZFR/9oACAEBAAE/IWEHgroNFZmt8INrbsDckMbMOE9P/9oADAMBAAIAAwAAABA0z//EABcRAQEBAQAAAAAAAAAAAAAAAAEAEVH/2gAIAQMBAT8QDSF7f//EABYRAQEBAAAAAAAAAAAAAAAAABEAAf/aAAgBAgEBPxBwjL//xAAbEAEBAQACAwAAAAAAAAAAAAABEQAhkTFh8P/aAAgBAQABPxCuJOGLj1rcXiEI0da7KlHvERFK/TRi3yKZ1qKgW5//2Q==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.0-build&quot; title=&quot;&quot; src=&quot;/static/7ce741833e790bd2ade881971551c32c/4b190/planck-rev2.0-build-3.jpg&quot; srcset=&quot;/static/7ce741833e790bd2ade881971551c32c/e07e9/planck-rev2.0-build-3.jpg 200w,
/static/7ce741833e790bd2ade881971551c32c/066f9/planck-rev2.0-build-3.jpg 400w,
/static/7ce741833e790bd2ade881971551c32c/4b190/planck-rev2.0-build-3.jpg 800w,
/static/7ce741833e790bd2ade881971551c32c/e5166/planck-rev2.0-build-3.jpg 1200w,
/static/7ce741833e790bd2ade881971551c32c/b17f8/planck-rev2.0-build-3.jpg 1600w,
/static/7ce741833e790bd2ade881971551c32c/d2602/planck-rev2.0-build-3.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Daha sonra satırları ve sütunları Pro Micro’ya bağlayıp tüm tuşların çalışıp çalışmadığını kontol ettim. Her tuşun çalıştığından emin olduktan sonra 6li led şeriti bağlayıp kasayı kapattım.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/a269b7875ff9590fc6eca3b43c8058fb/90ebb/planck-rev2.0-build-4.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 55.99999999999999%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAALABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAQFA//EABYBAQEBAAAAAAAAAAAAAAAAAAECA//aAAwDAQACEAMQAAABmtoUHLYaGf/EABsQAAMAAgMAAAAAAAAAAAAAAAABAgMTITEy/9oACAEBAAEFAppk8mxD9YO1ig//xAAWEQEBAQAAAAAAAAAAAAAAAAAAAiH/2gAIAQMBAT8Bpr//xAAVEQEBAAAAAAAAAAAAAAAAAAABEP/aAAgBAgEBPwEn/8QAGxAAAgEFAAAAAAAAAAAAAAAAAAEyEBESISL/2gAIAQEABj8CkzdzpZDpE//EABsQAAICAwEAAAAAAAAAAAAAAAERACFBUWFx/9oACAEBAAE/IQyaN3DWxemJyNgqElVOYNZDhYaT/9oADAMBAAIAAwAAABBnH//EABcRAAMBAAAAAAAAAAAAAAAAAAABEXH/2gAIAQMBAT8Qhs2f/8QAFhEBAQEAAAAAAAAAAAAAAAAAABEh/9oACAECAQE/ENI//8QAGxABAAMBAQEBAAAAAAAAAAAAAQARITFBYaH/2gAIAQEAAT8QAMz6bExuu0V9LlQKQw+PoHY1o2drPZQXQrSX7yAUilqrP//Z&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.0-build&quot; title=&quot;&quot; src=&quot;/static/a269b7875ff9590fc6eca3b43c8058fb/4b190/planck-rev2.0-build-4.jpg&quot; srcset=&quot;/static/a269b7875ff9590fc6eca3b43c8058fb/e07e9/planck-rev2.0-build-4.jpg 200w,
/static/a269b7875ff9590fc6eca3b43c8058fb/066f9/planck-rev2.0-build-4.jpg 400w,
/static/a269b7875ff9590fc6eca3b43c8058fb/4b190/planck-rev2.0-build-4.jpg 800w,
/static/a269b7875ff9590fc6eca3b43c8058fb/e5166/planck-rev2.0-build-4.jpg 1200w,
/static/a269b7875ff9590fc6eca3b43c8058fb/b17f8/planck-rev2.0-build-4.jpg 1600w,
/static/a269b7875ff9590fc6eca3b43c8058fb/90ebb/planck-rev2.0-build-4.jpg 3207w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;h3 id=&quot;yazılım&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#yaz%C4%B1l%C4%B1m&quot; aria-label=&quot;yazılım permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;&lt;strong&gt;Yazılım&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Yazılım olarak Qmk Firmware kullandım, açık kaynak olarak GitHub’ıma koydum. &lt;a href=&quot;https://github.com/ergenekonyigit/glosso&quot;&gt;Glosso&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Şu an kullandığım keymap’e &lt;a href=&quot;https://github.com/ergenekonyigit/glosso/tree/main/keymaps/default&quot;&gt;buradan&lt;/a&gt; ulaşabilirsiniz.&lt;/p&gt;
&lt;p&gt;Yanlış hatırlamıyorsam Pro Micro’nun belleği 20 civarinda layer’a kadar yetiyor. Hangi tuşa başıldığında ne yapması gerektiğini kod üzerinden belirlediğiniz için yapılabileceklerin sınırı hayal gücünüz aslında. &lt;a href=&quot;https://twitter.com/neoberg/status/1157658827300528128?s=20&quot;&gt;Örnek&lt;/a&gt;&lt;/p&gt;
&lt;h3 id=&quot;kapanış&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#kapan%C4%B1%C5%9F&quot; aria-label=&quot;kapanış permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;&lt;strong&gt;Kapanış&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;İlk görselle bu görsel arasında bazı tuslar farklı. Bunun nedeni tamamen ergonomik olarak bu düzenin daha rahat hissettirmesi.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/3185aca5cd6f9f2e690a35ff81994e22/d2602/planck-rev2.1-1.jpg&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 55.99999999999999%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAALABQDASIAAhEBAxEB/8QAFwAAAwEAAAAAAAAAAAAAAAAAAAMEBf/EABUBAQEAAAAAAAAAAAAAAAAAAAAB/9oADAMBAAIQAxAAAAGFTJ01jJF//8QAGhABAQACAwAAAAAAAAAAAAAAAgMAAQQQEv/aAAgBAQABBQKieeFk+VOYTWj1/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAgEBPwE//8QAHRAAAgEEAwAAAAAAAAAAAAAAAQIAEBESMSFhcf/aAAgBAQAGPwIZMxvzuat7MSgbsRbGv//EABsQAQADAAMBAAAAAAAAAAAAAAEAESEQMUFR/9oACAEBAAE/IcV0QwtB+uoQcHjDCjPO52268f/aAAwDAQACAAMAAAAQbw//xAAVEQEBAAAAAAAAAAAAAAAAAAABEP/aAAgBAwEBPxAn/8QAFhEBAQEAAAAAAAAAAAAAAAAAARAh/9oACAECAQE/EHGf/8QAHRABAQADAAIDAAAAAAAAAAAAAREAIUExYYGRof/aAAgBAQABPxB8VIKm9SfDg4a+A/u3OCpSD9hX3jZTRQEV1fPcbYU6tchn/9k=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;planck-rev2.1&quot; title=&quot;&quot; src=&quot;/static/3185aca5cd6f9f2e690a35ff81994e22/4b190/planck-rev2.1-1.jpg&quot; srcset=&quot;/static/3185aca5cd6f9f2e690a35ff81994e22/e07e9/planck-rev2.1-1.jpg 200w,
/static/3185aca5cd6f9f2e690a35ff81994e22/066f9/planck-rev2.1-1.jpg 400w,
/static/3185aca5cd6f9f2e690a35ff81994e22/4b190/planck-rev2.1-1.jpg 800w,
/static/3185aca5cd6f9f2e690a35ff81994e22/e5166/planck-rev2.1-1.jpg 1200w,
/static/3185aca5cd6f9f2e690a35ff81994e22/b17f8/planck-rev2.1-1.jpg 1600w,
/static/3185aca5cd6f9f2e690a35ff81994e22/d2602/planck-rev2.1-1.jpg 4032w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Genel olarak planck kullanmaktan memnunum. İlk seferde olduğu gibi standart layout ve ortholinear layout arasında geçişte zorlanmadım. Rahatça bu klavye ve laptop klavyesi arasında geçiş yapabiliyorum. Şimdilik burada da qwerty layout kullanmaya devam ediyorum.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[Seller Center Optimizasyon Günlükleri 1: UI Kütüphanesi]]></title><description><![CDATA[Yazının orijinaline buradan ulaşabilirsiniz. Bu seride Trendyol Seller Center üzerinde yaptığımız çeşitli optimizasyonları derleyeceğiz. İlk…]]></description><link>https://ergenekonyigit.github.io/seller-center-optimizasyon-gunlukleri/</link><guid isPermaLink="false">https://ergenekonyigit.github.io/seller-center-optimizasyon-gunlukleri/</guid><pubDate>Fri, 03 Jul 2020 00:00:00 GMT</pubDate><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://medium.com/trendyol-tech/seller-center-optimizasyon-g%C3%BCnl%C3%BCkleri-1-ui-k%C3%BCt%C3%BCphanesi-8fc38fdc86c8&quot;&gt;Yazının orijinaline buradan ulaşabilirsiniz.&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Bu seride Trendyol Seller Center üzerinde yaptığımız çeşitli optimizasyonları derleyeceğiz. İlk yazı konusu olarak geliştirdiğimiz UI kütüphanesinde yaptığımız iyileştirmelerden bahsettik. Keyifli okumalar.&lt;/p&gt;
&lt;p&gt;Seller Center, Trendyol içerisinde satış yapan işletmelerin ürünlerini yükleyip düzenleyebildiği, kampanyalar oluşturabildiği, sipariş süreçlerinin bulunduğu, finans metriklerinin takibini yapabildiği çok boyutlu bir platform.&lt;/p&gt;
&lt;h3 id=&quot;ui-kütüphanesi-oluşturulması&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#ui-k%C3%BCt%C3%BCphanesi-olu%C5%9Fturulmas%C4%B1&quot; aria-label=&quot;ui kütüphanesi oluşturulması permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;UI Kütüphanesi oluşturulması&lt;/h3&gt;
&lt;p&gt;2020 başında frontend altyapımızı monolith’ten micro frontend’e taşıdık. Geçiş süreci ile ilgili yazıya aşağıdan ulaşabilirsiniz.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://medium.com/trendyol-tech/micro-frontends-how-it-changed-our-development-process-a5cf667356da&quot;&gt;Micro Frontends: How It Changed Our Development Process&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Micro frontend yapısına geçmeden önce komponentler monolith uygulama içerisinde components/ klasörü altında bulunuyordu. Geçiş sırasında bu komponentleri ayrı bir projeye çıkarma işine başladık. Ayrı projeye çıkarma sürecinde dokümante edebilmek icin Storybook tercih ettik. Storybook içerisindeki knobs eklentisi sayesinde komponentlerin aldığı prop’ları dinamik olarak değiştirerek davranışlarını rahatlıkla gözlemleyebilir hale geldik. Aşağıda örnek bir komponenti ve aldığı prop’larını görebilirsiniz.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/743b97bdf15850ff701338d335fb2ae5/e8950/storybook.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75.99999999999999%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAYAAADkmO9VAAAACXBIWXMAAAsTAAALEwEAmpwYAAACT0lEQVQ4y5WSW2sTQRTH98FIKqWCIPTJYimoX8YNKCTUG1bfbJvmHiH6KfwaPghiummb9EL1A/gigli11SYxyd5mZ3Zn9xznbFsNPiTpwI8zO3Pmv+emXb08M3/92uyLmwu3agsLN2pzc/O1mZkrtQuJZC1xceov9D1M4syqu2Ryupacmn45dWl6Xru/+OBOIV/CfKGC2VxRUcKV1TV8tryqyP5jJYvL/0HnK6s59baMOaWxeO/hXe393ofbVt9B5ssgRAy8AAPE8xOFEe7u7evau42mfnj8Gy2Xg+16YNkmeJwD52JCOAjhg21ZaBiNlLa+2dK/HbVxYDNwPQFC+njOBYTgXAlupLTG1o7+9cevWJB5PjDXxSBQefuT4kMoJbiOg0ZjUwk2TwR/trtgMwGmydC0CG/IjoKpMnHo9Ww0NpoU4bZK+Rj7lqtSDugS7VNobxLWKKjuAnqqsbFgXTXlqN1DJiR4hMfRcZUjk0h7n9JS/Q8CeWqHoTMJUobgugw3m62UZsQRttF0vFiw2+2gwzjSDAFEChjXk7gpVPfW9o4SpAiPu8h9CUL9zXFsDGSEYXgiFkXROICW7/vYbG2ntDdGS//8vYMdS0QDRhF2wbFtlboH5DyOMAxJLxJC4BYJvnq9q299GuD+gYg+tkN1wWMncj6bsTFEhJQSWzu7Ke1t3dC/HBxiz7SxP7Cw01E1dFzVZRup0K6ay9Gw2Jfe1deNlPZo6ensWr6YLpWrmWK5ml7L5TPlSjVTqT6P7QSkC8VSJpcvpB8vPZn9AwMa3q2jGFSoAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;storybook&quot; title=&quot;&quot; src=&quot;/static/743b97bdf15850ff701338d335fb2ae5/5a190/storybook.png&quot; srcset=&quot;/static/743b97bdf15850ff701338d335fb2ae5/772e8/storybook.png 200w,
/static/743b97bdf15850ff701338d335fb2ae5/e17e5/storybook.png 400w,
/static/743b97bdf15850ff701338d335fb2ae5/5a190/storybook.png 800w,
/static/743b97bdf15850ff701338d335fb2ae5/c1b63/storybook.png 1200w,
/static/743b97bdf15850ff701338d335fb2ae5/29007/storybook.png 1600w,
/static/743b97bdf15850ff701338d335fb2ae5/e8950/storybook.png 2000w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;Seller Center UI Kütüphanesi&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Trendyol’da testin önemi çok yüksek, biz de her komponentin unit ve snapshot testleri olmasına özen göstererek geliştirmelerimizi yaptık. Günün sonunda 30’un üzerinde komponenti taşıdık. Dosya yapısında tutarlılık sağlamak icin aşağıdaki düzeni tüm komponentlerde uyguladık.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/2041bd7af46b4e79c6dafac7ce40e010/d68e4/folder-structure.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 410px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 78.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAIAAACZeshMAAAACXBIWXMAAAsTAAALEwEAmpwYAAABiklEQVQoz41TaVPCQAxtK3LI0YMWarH3SYUWkAJFFJkRcfji//83vqUCIpczr5nsdpKXvGQpircAWrABpu7sbHZ/BeTjzJzkl9VYDFJ7vLbTdemhS7HG9RQ7j+YtRrBvmwGYKc6gajqS7nEpmDML92Gp1QGhFKT601IfLmG1wTtsEffb1s4w1x1GdJGioveKSoezh7B5uX2nRuiCBnlFJfhdxUEm0rwneONmOBPcEe+MlGjOWgM4gjtuhDMccw1/H3/YhsnwVtXo1/1JzegjQO68ck4i+hP4op+2eovzwZzJOwlnJ6w1rGgxsuQEh6pqRDwATvVi2QhWuvNG+Cy1p+CBBD8zg1obzU4LlpVdVB5vJI9AdBnBgd0Oz7w054xZCqbW6BMTMpKV//LVihfwy1pMyj7emT9nrBp4oDkc8EMeWPrcwh4cWAPDsCdrLIaZrOCAP6sCw8ffK8xgIFSZI7oEkleQ2/9ilruveBhG8qFEbzVjQNgg1THnSea8HJbVCCuJOqHz2SexwTcRn1WXG7KEjAAAAABJRU5ErkJggg==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;folder structure&quot; title=&quot;&quot; src=&quot;/static/2041bd7af46b4e79c6dafac7ce40e010/d68e4/folder-structure.png&quot; srcset=&quot;/static/2041bd7af46b4e79c6dafac7ce40e010/772e8/folder-structure.png 200w,
/static/2041bd7af46b4e79c6dafac7ce40e010/e17e5/folder-structure.png 400w,
/static/2041bd7af46b4e79c6dafac7ce40e010/d68e4/folder-structure.png 410w&quot; sizes=&quot;(max-width: 410px) 100vw, 410px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;Dosya yapısı&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Bu noktaya kadar her şey çok güzel gelmişti ancak bir sorun vardı, bundle size.&lt;/p&gt;
&lt;h3 id=&quot;büyük-bağımlılıkların-bundle-içerisinden-çıkarılması&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#b%C3%BCy%C3%BCk-ba%C4%9F%C4%B1ml%C4%B1l%C4%B1klar%C4%B1n-bundle-i%C3%A7erisinden-%C3%A7%C4%B1kar%C4%B1lmas%C4%B1&quot; aria-label=&quot;büyük bağımlılıkların bundle içerisinden çıkarılması permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Büyük Bağımlılıkların Bundle içerisinden Çıkarılması&lt;/h3&gt;
&lt;p&gt;UI kütüphanesi içerisinde rich text editor, drag and drop, date picker ve input mask gibi büyük paketler içeriyordu. Bu paketler hiç kullanılmayacak bile olsa bundle içerisinde geliyordu. Optimizasyon işine buradan basladık. Paketleri bundle anında ana bundle’dan çıkararak kullanılacağı app içerisinde yüklenmesine karar verdik. Bu optimizasyon sayesinde bundle size’ımız yaklaşık 405kb kadar küçüldü. Tekil bakıldığında boyutu makul gözüken paketler bir araya geldiğinde ciddi yük bindirebiliyor.&lt;/p&gt;
&lt;h3 id=&quot;momentjs-yerine-dayjs-kullanılması&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#momentjs-yerine-dayjs-kullan%C4%B1lmas%C4%B1&quot; aria-label=&quot;momentjs yerine dayjs kullanılması permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Moment.js Yerine Day.js Kullanılması&lt;/h3&gt;
&lt;p&gt;Tarih/saat dönüşümleri her uygulamada yapılan bir işlem. Micro frontend öncesinde biz de bu dönüşümler için moment.js kullanıyorduk. Moment.js çok başarılı olmasına rağmen boyut anlamında bir o kadar başı dertte olan bir kütüphane. UI kütüphanesi oluşturmaya başladığımızda burada da bir optimizasyon yapmak istedik. Moment.js kullandığımız yerleri neredeyse aynı api’a sahip ama çok daha makul boyutlarda olan day.js ile değiştirmeye başladık. Bu geçiş sonrasında bundle size’ımda yaklaşık 270kb’lık bir küçülme yaşandı.&lt;/p&gt;
&lt;p&gt;Bu noktada %50 oranında iyileştirme sağladık ancak yine de 650kb civarında bir paket yükletmemiz gerekiyordu. Micro frontend altınaki bazı uygulamalar sadece birkaç komponente ihtiyaç duyuyordu. Biz ise 30’un üzerinde komponenti import etmesini istiyorduk.&lt;/p&gt;
&lt;h3 id=&quot;komponentlerin-bağımsız-paketlenmesi&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#komponentlerin-ba%C4%9F%C4%B1ms%C4%B1z-paketlenmesi&quot; aria-label=&quot;komponentlerin bağımsız paketlenmesi permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Komponentlerin Bağımsız Paketlenmesi&lt;/h3&gt;
&lt;p&gt;Nasıl daha iyi yapabiliriz diye düşündük ve bundle anında her komponentin bağımsız olarak paketlenmesinin güzel bir optimizasyon olabileceğine karar verdik. Komponentleri stillendirirken scoped css tercih ettik. Bunun avantajını bundle anında da kullanarak css’leri ayrı dosyalarda tutmayıp komponentlerin içerisinde bıraktık. Böylece örneğin ScButton.js dosyası tek başına çalışabilir hale geldi. Her komponentin ayrı dosyada paketlenmiş olması bu komponentleri çağırırken ufak bir değişiklik yapmamızı gerektirdi. Artık herhangi bir komponenti import etmek istediğimizde tüm bundle içerisinden değil de komponentin bundle’ını import etmemiz gerekti.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/4c002accf358206afe00df79b7b2692f/cd78c/import.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 51%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAKCAYAAAC0VX7mAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB00lEQVQoz42SW3OiQBCF23ttEInKRTCCiDBcy0vcJGX2ybK2UtH//19SYWb2IFTymH34qqebnsPpriHSI6roW4z6c0ZkRtQygMl+hJq+Kn7RCCo9i7335uxKJrtA8NKq4g9Q04d4BZNa8B5/0KJi7WfSe0ok2Uy2DSbR+N9ASLYMdq4Fp2sQ5j07+VC8QnTttESNkx5yNDTgrEffGF/nEueyET3dxqc7g0gxcyN4/fTTv3Iavgi9eBN6/ibU1W+h+0fhsKMItgex3jyJZXEQNtsJN3sUZrQTEBGtyqHJTo3DoAIOs8++ncs2GjqzFE5z0bJiXIhFx0pEdxaLvp2IvpMgj2+0AVwKagRrh6MF9ujlQ3f3YUVHoQXP5cA98P58w385W64sCj5a5lz1cj50c373kHLFzbi2LPjYL0rUy66N3evhCauDoDoDdjFePksr+CNHwaucpGepBkc59l6kHhykm+2llx/kPNlLM9xKI9zIRfooMb504r0czDNJk/WZxpgWY1YoNPHfaexd6d69kOpc4PqCHNFHvqoZAS2oUVEf+nVtGl4x/qQzi4kGTkEDuyBcxvPB+NoD0dBGdFED2hK5/81oVVOdFXxT/dtLwU6pEvwHx06iOWTTcNwAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;import&quot; title=&quot;&quot; src=&quot;/static/4c002accf358206afe00df79b7b2692f/5a190/import.png&quot; srcset=&quot;/static/4c002accf358206afe00df79b7b2692f/772e8/import.png 200w,
/static/4c002accf358206afe00df79b7b2692f/e17e5/import.png 400w,
/static/4c002accf358206afe00df79b7b2692f/5a190/import.png 800w,
/static/4c002accf358206afe00df79b7b2692f/c1b63/import.png 1200w,
/static/4c002accf358206afe00df79b7b2692f/cd78c/import.png 1236w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;import&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h3 id=&quot;örnek-uygulama&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#%C3%B6rnek-uygulama&quot; aria-label=&quot;örnek uygulama permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Örnek Uygulama&lt;/h3&gt;
&lt;p&gt;Micro frontend mimarisini üzerinde çalışan 15’in üzerinde micro-app’imiz var. Bunlardan account-app’i inceleyecek olursak; giriş, kayıt ol ve parola değiştirme ekranları olan ufak bir micro-app. Bu uygulama UI kütüphanemizden sadece button ve input komponentlerini kullanıyor. Aşağıdaki grafikte yapılan iyileştirmeler sonucunca bu iki komponentin account-app’ine olan maliyetini görebilirsiniz.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/d9f1baaeff80625a77f0461872f37364/07a9c/bundle-size.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 62.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAYAAACpUE5eAAAACXBIWXMAAAsTAAALEwEAmpwYAAABxElEQVQ4y52SzUsbURTF8y/VRbupLgrd1GXXLkUQi5GotKDtKuAHdNNqsdY0LhTqroJgsGlMDGo0RVxUUbOqSRRaLZmM877mzfHOS/woIWn0wZl7Geb95lzuCTDGUDleVbpa6elVqm3bsCzr+l0jBbSrYEsP6byL5C+F2KFl6kbBhXS9a3gzMAP0Pzy2NHq+cXTFOLpXBDqXOUIJYX50G9TMCbiCoWh7eJUU6CfI4KoP43iTFriQFYe6CWc3DrVCoewRSKDvOzfQYJxjeO2+QDqFsq4BDhHQUc2NWTtyHYclrmkxQNmRsBwBrmAW1dih59Y4fEELGs0IzO8qPJ/j6Fhg6PjimH56Sxkn+i4j+8DxLYEpuvxwkuFphBs9on4sJavA24H6z8g+cIyAn7ISj6cYnkW5USv1b9ekWZSr6zrUBNR4SbEJEXCAItPrO9wWmMkqA2mfJUUZ2j4SMH0D9Me+0j8j58lhMC4o3BK9CUUBFwhvSnzIKDx4x/AkIo1a3jOMJFXdDfvZD0jO8MeWWNjniGT/YiJVwOedMpZyHAlSOO7g9eIJhr8WTb+0x3GUP0fm4BSxzT2s/zzGj9xvnJUujPNLl4y2nKPq/4YAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;bundle size&quot; title=&quot;&quot; src=&quot;/static/d9f1baaeff80625a77f0461872f37364/5a190/bundle-size.png&quot; srcset=&quot;/static/d9f1baaeff80625a77f0461872f37364/772e8/bundle-size.png 200w,
/static/d9f1baaeff80625a77f0461872f37364/e17e5/bundle-size.png 400w,
/static/d9f1baaeff80625a77f0461872f37364/5a190/bundle-size.png 800w,
/static/d9f1baaeff80625a77f0461872f37364/c1b63/bundle-size.png 1200w,
/static/d9f1baaeff80625a77f0461872f37364/07a9c/bundle-size.png 1440w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;bundle size&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;h3 id=&quot;sonuç&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#sonu%C3%A7&quot; aria-label=&quot;sonuç permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Sonuç&lt;/h3&gt;
&lt;p&gt;Büyük paketlerin çıkarılması ve Day.js geçişi herkese önerebileceğim iyileştirmeler olacaktır. Komponentlerin bağımsız paketlenmesinde ise durum biraz farklı. Webpack, Rollup gibi modern bundler’lar benzer tree-shaking yani dead code elimination özelliklerine sahipler ve yeterli optimizasyonu sağlıyorlar. Bizim tercihimiz ise bu adımı micro-app’ler içerisinde değil de sorunun kaynağında çözmek oldu. Bu yöntem herkes için doğru olmayabilir. Ama böyle de bir çözüm olduğundan bahsetmek istedim.&lt;/p&gt;
&lt;p&gt;Umarım okurken keyif almışsınızdır. Görüşmek üzere :)&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/5fcd857d21b25bd4b8f2ecd602cdac13/c1b63/trendyol.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 30%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAGCAYAAADDl76dAAAACXBIWXMAAAsTAAALEwEAmpwYAAABbklEQVQY00WQSW8TQRCF/fu5cQsS4pAIIcyBQxAiEC+MJQKys4EzmeltepnFkwXFTgIn5qPHHDi0VPVU1fW9N8jz/I8QkkJcdoXRCBvQvoqvRLsS4wImVJjYW+sw+SWhudpqRdRk4dDWI6UkyzIGIs9R1nft/JD1+x3q+YhmMaY5TVh9/UB7MqXt67MZ14tDfn4ecnsyZnU8obpYUJ3OqM+PUEr9+1Ap2blQ0pi82ySv2Uxf8vDxOfezIb8mu/w+eMbDpxexf8Pd94TH/afcTV+xToasx3s8vn3CJtYuupNSMYionTEGZy1FUWCdZ1V6quAJzkaLKVpJyrK371F5Rqhq/HYmUIsUKzO0KejdDuq6jtnYTkbkNE35Np9znIwwIiNd/mAxekceMw6F4WKyz/JoivOeNBi+6CVnSmyz7WG01v8Jo9CFeLEXfYwgRKKeoAmOtm1p4uHrOkYTyfvlftbXFU274vbmBuccQgj+Ak/SqMrZJRmUAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;trendyol&quot; title=&quot;&quot; src=&quot;/static/5fcd857d21b25bd4b8f2ecd602cdac13/5a190/trendyol.png&quot; srcset=&quot;/static/5fcd857d21b25bd4b8f2ecd602cdac13/772e8/trendyol.png 200w,
/static/5fcd857d21b25bd4b8f2ecd602cdac13/e17e5/trendyol.png 400w,
/static/5fcd857d21b25bd4b8f2ecd602cdac13/5a190/trendyol.png 800w,
/static/5fcd857d21b25bd4b8f2ecd602cdac13/c1b63/trendyol.png 1200w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;</content:encoded></item><item><title><![CDATA[VSCode: ESLint, Stylelint ve Prettier'ı sorunsuz kullanmak]]></title><description><![CDATA[Kod yazan her insanın kendine özgü bir yazım stili var. Bazı diller farklılıkların önüne geçebilmek için kendi style guidelarına göre…]]></description><link>https://ergenekonyigit.github.io/eslint-stylelint-prettier-kullanimi/</link><guid isPermaLink="false">https://ergenekonyigit.github.io/eslint-stylelint-prettier-kullanimi/</guid><pubDate>Mon, 10 Dec 2018 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Kod yazan her insanın kendine özgü bir yazım stili var. Bazı diller farklılıkların önüne geçebilmek için kendi style guidelarına göre formatterlara sahipler. Go(gofmt) ve ReasonML(refmt) bunlara örnek gösterilebilir. Javascript dilinde bu tarz bir çözüm dil ile birlikte gelmiyor, bunun için çeşitli yardımcı paketler kullanmamız gerekmekte. Prettier bu konuda en popüler çözüm olarak göze çarpıyor. Ancak daha önce bu konuda uğraşanlar da anlayacaktır ki projede hem linter hem de formatterı aynı anda kullanmak istersek bazı sorunlar ortaya çıkabiliyor. Örneğin linterın kuralları ile formatterın kuralları birbirini ezip kodu okunamaz hale getirebiliyor. VSCode içerisinde bu paketlerin uyumlu çalışmasını sağlamak için yapmamız gereken birkaç şey var.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;bash&quot;&gt;&lt;pre class=&quot;language-bash&quot;&gt;&lt;code class=&quot;language-bash&quot;&gt;&lt;span class=&quot;token function&quot;&gt;yarn&lt;/span&gt; &lt;span class=&quot;token function&quot;&gt;add&lt;/span&gt; --dev prettier-eslint prettier-eslint-cli prettier-stylelint&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;VSCode içerisinde entegrasyon için bu 3 aracın eklentisini yüklememiz gerek. Eklentiler;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode&quot;&gt;Prettier&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint&quot;&gt;ESLint&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://marketplace.visualstudio.com/items?itemName=shinnn.stylelint&quot;&gt;StyleLint&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ardından projemiz içerisinde &lt;code&gt;.vscode/settings.json&lt;/code&gt; içerisine şu ayarları eklemeliyiz.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;json&quot;&gt;&lt;pre class=&quot;language-json&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// .vscode/settings.json&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;prettier.eslintIntegration&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;prettier.stylelintIntegration&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;eslint.autoFixOnSave&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;editor.formatOnSave&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;code&gt;.eslintrc.json&lt;/code&gt; dosyasına prettierın ruleslarını kullanacağımızı belirtiyoruz.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;json&quot;&gt;&lt;pre class=&quot;language-json&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// .eslintrc.json&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;parser&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;babel-eslint&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;extends&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;prettier&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;react-app&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;plugin:prettier/recommended&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;plugins&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;prettier&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;rules&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;prettier/prettier&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;error&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;jsx-a11y/href-no-hash&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;react/jsx-filename-extension&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;token property&quot;&gt;&quot;extensions&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;.js&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;.jsx&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;
  &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;code&gt;package.json&lt;/code&gt; içersine bu scriptleri ekledikten sonra işlem tamamdır.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;json&quot;&gt;&lt;pre class=&quot;language-json&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// package.json&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;scripts&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;fix-code&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;prettier-eslint --write &apos;source/**/*.{js,jsx}&apos; &quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
    &lt;span class=&quot;token property&quot;&gt;&quot;fix-styles&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;prettier-stylelint --write &apos;source/**/*.{css,scss}&apos; &quot;&lt;/span&gt;
  &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Artık projede kaç kişi çalışıyorsa çalışın, codebase tek elden çıkmış şekilde olacak. Kod okunabilirliği açısından önemli detaylardan birini halletmiş olduk.&lt;/p&gt;
&lt;p&gt;Dilerseniz &lt;code&gt;husky&lt;/code&gt; tarzı pre-commit araçları kullanarak her commit atıldığında otomatik tüm codebasei formatlayabilirsiniz.&lt;/p&gt;
&lt;div class=&quot;gatsby-highlight&quot; data-language=&quot;json&quot;&gt;&lt;pre class=&quot;language-json&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// .lintstagedrc&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;*.js&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;yarn fix-code&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;git add&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;*.scss&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;yarn fix-styles&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;git add&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</content:encoded></item><item><title><![CDATA[GüçlendirMac]]></title><description><![CDATA[Son zamanlarda çevremdeki insanlar kullandığım kısa yollar, uygulamalar vs. hakkında sorular sormaya başlayınca bu yazı kafamda kendi…]]></description><link>https://ergenekonyigit.github.io/guclendirmac/</link><guid isPermaLink="false">https://ergenekonyigit.github.io/guclendirmac/</guid><pubDate>Wed, 25 Oct 2017 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Son zamanlarda çevremdeki insanlar kullandığım kısa yollar, uygulamalar vs. hakkında sorular sormaya başlayınca bu yazı kafamda kendi kendini yazmaya başlamıştı. Bende geçtim bilgisayarın başına, bilgisayarımı hangi ayarlarla, hangi uygulamalarla kullanıyorum hepsini teker teker anlattım. 😄&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Başlamadan önce &lt;a href=&quot;https://medium.com/@ademilter&quot;&gt;Adem Ilter&lt;/a&gt;‘in yazısını da okumanızı öneririm.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://medium.com/adem-md/basitle%C5%9Fmac-1b4bb9599825&quot;&gt;BasitleştirMac&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Öncelikle hangi cihazı kullanıyorum; elimde 2 yıldır Early 2015 bir MacBook Air var. Tabi ki 2 yıldır her gün kullandığım bir işletim sistemini daha kullanışlı hale getirecek bazı geliştirmeler yaptım.&lt;/p&gt;
&lt;p&gt;Bu anlatacağım ayarlar maçOS 10.13 High Sierra üzerinde kullanılıyor olup yıllar içerisinde yazıdaki anlattığım bir ayarın yeri değişmiş olabilir.&lt;/p&gt;
&lt;h3 id=&quot;desktop--dock&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#desktop--dock&quot; aria-label=&quot;desktop  dock permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Desktop &amp;#x26; Dock&lt;/h3&gt;
&lt;p&gt;Bilgisayarı çoğunlukla mobil olarak kullandığım için trackpadi çok fazla kullanıyorum, üst üste birden fazla windowun bulunması ve onların arasında kaybolmak beni yormaya başladıktan sonra çoklu desktop kullanımına geçtim. İlk desktopta çoğunlukla Safari ve finderı kullanıyorum, ikinci desktopta VSCode ve iTerm2 açık oluyor ve geliştirme yapacağımda ikinci desktopa kayıyorum. Üçüncü desktopta ise Spotify her zaman açık oluyor.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/03716a0ac8809d0d8629437afedba696/e8950/desktops.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 21%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAECAIAAAABPYjBAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA/0lEQVQI1wH0AAv/AKC+1Z+81KrF3rTK3q29zbXD0X2BhwABAAcFBQEAAAAAAQENCSw/DnFZcn9Wrn5XpYROn35VpXZSn2tIlwC7y93F2OqwusmSkpp5bXCabGBaPjcAAAAAAgIPIQhVWRWqgSvciU16WYxER6pjVamido5zU5pIR6JBPpYAfnmCdm5wZlJHg18/pGIroGIqVEAgMEMTi3Uhz4k+03xjllt2PzRcGTF4HTugQkibspGDYkh7FDaaGTGMAINXMJRPIqJjJahpI7JqI3pYGodkHd9+RblpdmRKdhsmSAALFwAAAAIaVQExmAowj0AzfR4xgwApiwIkgM1bW6YDc06CAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;desktops&quot; title=&quot;&quot; src=&quot;/static/03716a0ac8809d0d8629437afedba696/5a190/desktops.png&quot; srcset=&quot;/static/03716a0ac8809d0d8629437afedba696/772e8/desktops.png 200w,
/static/03716a0ac8809d0d8629437afedba696/e17e5/desktops.png 400w,
/static/03716a0ac8809d0d8629437afedba696/5a190/desktops.png 800w,
/static/03716a0ac8809d0d8629437afedba696/c1b63/desktops.png 1200w,
/static/03716a0ac8809d0d8629437afedba696/29007/desktops.png 1600w,
/static/03716a0ac8809d0d8629437afedba696/e8950/desktops.png 2000w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;KISS (Keep It Simple, Stupid)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Desktopta klasör ve dosya barındırmayı sevmediğim için tüm dosyalarım belli dizinlerin içerisinde. Bu konuya yazının devamında değineceğim.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/3244f285e1de4be18b039c13bd3ad286/fa5c1/dock.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 422px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 24%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAFCAYAAABFA8wzAAAACXBIWXMAAAsTAAALEwEAmpwYAAABhUlEQVQY0x2PQS8jcRjG330Tl62YGh3SlhqjM/+ZMcOUdpDWqK5/Na2WtFNEgt3GsQi72bUbJISbuLiSiBNHB99hP5JTX8Pv8OSXJ3kOD/REJBAi/TC2VEVvoYBWvoaTqQyuqSpaGsP0uImmraMe+FAlhcOzBtoTaXR4BXOeh7VaDWPxOESjUXAcByDUHYIP+OF3aK6UYL39B/ZnZuAl6IzRIqSXm1BvrkLjWxWyF5vg7a5AI78IfjEH234d/p2cfu4FQfgiy/KnQ29YCMt6vJCI9ReZwbgzIPE8IBfFES4pjKuaxtlIksuWymUtyZOxGFfEEB9NDHLDNLkUCW4GKIoSJMsCdH11czevb5e3d+T+furM/Tii+/YWrfMJOig5NJkziNkGCbclklopmm/sUvn5P/08v6LHhwcKi31l27Ygk3ER9Kks9IR7px3/7G2z1SbX/9VRqxtU/1uhJW+Myq5J4xYjphs0eLhAiVWHMoUqZY+vO/5Oq3Owt0diX6SiaSrYto3vM79lzO26QPIAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;dock&quot; title=&quot;&quot; src=&quot;/static/3244f285e1de4be18b039c13bd3ad286/fa5c1/dock.png&quot; srcset=&quot;/static/3244f285e1de4be18b039c13bd3ad286/772e8/dock.png 200w,
/static/3244f285e1de4be18b039c13bd3ad286/e17e5/dock.png 400w,
/static/3244f285e1de4be18b039c13bd3ad286/fa5c1/dock.png 422w&quot; sizes=&quot;(max-width: 422px) 100vw, 422px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Dockta ise her gün açtığım uygulamaları sabitlemiş durumdayım. Diğer uygulamaları açmak için çoğunlukla spotlight (cmd+space) kullanıyorum.&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;launchpad&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#launchpad&quot; aria-label=&quot;launchpad permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Launchpad&lt;/h3&gt;
&lt;p&gt;Launchpadde de 3 sayfa kullanıyorum. Her şeyin tek sayfada karmaşık olmasının yerine kategorilerine göre ayrı sayfalarda olmasından yanayım. İlk sayfayı varsayılan gelen haliyle tutmak gibi ilginç bir alışkanlığım var, telefonda da aynısı söz konusu. İkinci sayfada günlük olarak kullandığım yardımcı araçlar yer alıyor, üçüncü sayfada da development ile alakalı araçlar yer alıyor.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/47be755039d7967196ce351a17f56996/e8950/launchpad.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 21%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAECAIAAAABPYjBAAAACXBIWXMAAAsTAAALEwEAmpwYAAAA/UlEQVQI12OIa1yQ2ragsGVKTc+8pv45tZ2TCxonp7csLuubX9Q3tax+Yn3P7OLW6emN0+Pq52RU9dX1zWrunJRW0pRb1shQ2Dq3pndaRVlNQX5pcWpqXWxQZmRUaWdXZWdXVl5lXFxqfkRQibNpalpBec/irPL+nNyKgvDYkkCvDDtDhuiQuJig4LRA25oQ/Q43le5A5XgXg9DQCH93uzAb7VxHhSZ7kRxrwUgPp7CAkAB7k2g7tTJH2Xp7oTQbMYY0a8lyS5FaF9E2D7EeN/EMJ/5gS/58S7FKSyGgYLureKu7WKQdT7SVSKmlSJWNUJ2rWK+7eJmrcLAVNwCKUlmeWMNnVgAAAABJRU5ErkJggg==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;launchpad&quot; title=&quot;&quot; src=&quot;/static/47be755039d7967196ce351a17f56996/5a190/launchpad.png&quot; srcset=&quot;/static/47be755039d7967196ce351a17f56996/772e8/launchpad.png 200w,
/static/47be755039d7967196ce351a17f56996/e17e5/launchpad.png 400w,
/static/47be755039d7967196ce351a17f56996/5a190/launchpad.png 800w,
/static/47be755039d7967196ce351a17f56996/c1b63/launchpad.png 1200w,
/static/47be755039d7967196ce351a17f56996/29007/launchpad.png 1600w,
/static/47be755039d7967196ce351a17f56996/e8950/launchpad.png 2000w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Kullandığım uygulamaları yazının devamında tek tek açıklayacağım, özellikle ikinci sayfadakileri.&lt;/p&gt;
&lt;h3 id=&quot;finder&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#finder&quot; aria-label=&quot;finder permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Finder&lt;/h3&gt;
&lt;p&gt;Gelelim findera. Buraya kadar pek fazla bir özelleştirme söz konusu değildi ama iş findera gelince her gün ama her gün kullandığım bir aracı daha kullanışlı hale getirmem gerekiyordu.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/14e1551ef10bf73defc433a40711433c/ef6b9/finder.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 80%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAACmElEQVQ4y6WU227TQBBAW5CQ+Aye+QML+ADeEUItipoEpeWjeAPxDD+AKhHaOr0RCL7f1rfEjuO1HTupnRk2DqQStKIVIx2v1to5mtGOvYH7LzbED+8ffjr++FiRDU6RFE6VNS4KI87UTc7QTG7/m8b1+z84XdE4YpKa1TmV0xiyKD9h+wc0ohvLuGOe9T6r1gBlUa1M3QDHsuHw4BCYEIhFoC/rYLF3Q28ImqKBoRkw8kfguR64jluGQYjCQHiDiLXw/lHvuKcqGtqmUQ1MB09Vgv2zcxyPxziZUPS8CebTDLM0Q0ppTZZlNWmaVkVeoCiK79bCL90uf3J6iroslV/tALqaCyPXhXw6hWw+A69IgR2+jpKBjuO8XQsNw+Adx60rVMMET6whDh0H82LGziwwSSIElgrs8QfLqJZCQsilUBQFXpQkdC2rsmiOJ6aPRNdQ1wycxBHSPK5rAVyJfsf1QkHgLUIwHHqVQQs80Fwm1FGRFfSCCK0py4HFqsebCAXhB++4LkbBaC1URAElUcLxJMEhvVgJ4YZCVVX5gF19PA4rI86xx1o2VRXjOMZpVmBGK1bdLYSiIvBJlmBZFBVJCjy3Awx9H6d5jgsmGLEx+SW4mfC7qfGyTTCncWUmMzwyPAx8D33PR5om6GW3vBQiDHibtThhLVvJDLqKDaokgihK4PoBDOOCmRZwTZR/CX3d4H1i4zSllZ1dwKHugWcTSNMMykUJYT7652Dbtn35pbAfQI9YNo58F4woRV5zkE4iNtgFFvkMaZDg/GKO8/mVLMqyRF3X18J7O62dp7t7u6/bzWbn+ctG59l2o9NutTrtV+1Oq9nqNLebnRbbX0WT5bDYazQaj2rbVmNruWwy7v4nm8sKfwKa3O8dCwgSjgAAAABJRU5ErkJggg==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;finder&quot; title=&quot;&quot; src=&quot;/static/14e1551ef10bf73defc433a40711433c/5a190/finder.png&quot; srcset=&quot;/static/14e1551ef10bf73defc433a40711433c/772e8/finder.png 200w,
/static/14e1551ef10bf73defc433a40711433c/e17e5/finder.png 400w,
/static/14e1551ef10bf73defc433a40711433c/5a190/finder.png 800w,
/static/14e1551ef10bf73defc433a40711433c/ef6b9/finder.png 832w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;Finder ikonuna bastığımda karşıma gelen ekran&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Başta biraz renkli ve karmaşık gelebilir, ancak sadelik karmaşıklığın doruğudur diye bir söz var.&lt;/p&gt;
&lt;p&gt;Öncelikle git kullanan projeleri (yani hepsini) dev isimli bir klasöre topladım ve finderın yeni pencere açılma pathini dev olarak ayarladım.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/030a10e65ea82056069f4aa119604c6d/34f1d/preferences-1.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 457px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 94.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAATCAYAAACQjC21AAAACXBIWXMAAAsTAAALEwEAmpwYAAADhUlEQVQ4y52TWW8bVRTHb2KQWBR4sXhB4SMEEaTIkEc+Ax+AB9RHJB75AEiVkYicVkLiPREore2kIaHEeKntOI53ezbPPl7Gy3i8tHHS0YjDuUNjUpaicqWf7mL5N+c/5w4ZfvkVgc+/IJDIEpB1AgAL5rML0uv0yXQ0IaO+RYbIzd8X/AbkyewJMTsmIaNvtpdAs0nr3v5ncjId4kTxtq2IwbaqBov5QjCbzgbzp2fBXDaHnAXZBhvUVT2oyirlNq5DTJ35hIpnk9kSqe1FfHTDJFK5NicALyoQE3ogaR0wVBU4lod6nYV6jQGe4UGRFOi0OtA22h50XSwUt6jDtmwf2ds/8BFC3jh6eBJnWBaSp8WrTx/oztE565iG5kii7PwaTznpTM5RJNkReMERuAVXoiDC4YPDb9HhswbWMrm7fYcK39r74cf0wf4BpBJJt5o/g1K+AI+SaSjgnHmUgWzmFFiGBYwMjXoDMCadXXp2/979O+h4Fd/jMikUCp6Q47h0zzRB01RX03XQdQNahoGzDgbdaxooigrdrgmWZcFwOKS4o9EIEonEXSrE2H8KeZ5P0z+Xa6xbKlehVCpBtVIBQWgCPgwYpgFl3GuaDlRyLbRtG5LJ5N+FDYZJP56OISNduNlyE+rVMpTKZaDVTqdTmM1mMJlMFjLrhvAfK2wwbPpiOoLd/NT9OccD36hApVKFarUGqiKDLMtgms/FfbGQQeFkbAOnj9xSjV6TildhrVaj1wJYjN3v928Irf8SMml7PIbp2HJ7ZteLSvmjMYYnWcT1pBYMXiSkTcEOY8yay+N9FATBawSLa5ZlQBSl5+KOrCFMbNrlf6uQxcjWALh2zz1pdqGlKl4TaAVjrJw25fLyEi7mc3CdOcj9K/guNXcfT0YQT9zo8vn5+bPIjZQ5sEHr9J+Kra7bbhnuYDDwwHfngU1xe72eO+j3XB0fXOTMp7TSeDyxvRBWq1UqXNGVZqnYcqDIGdDWZGg2m6Dit0yRJBmR8Ez0LriqIth1VeK96nO53PfoeMUTbm1tLePm7Z2dna+PfjqMh8Phk3AkEotGo7EIzpFn62uuzyKRaCwcif5yfHwcC4VCt9DxGn4AS4QOv9+/gtN7yIfI5kvwMfI+8u7q6urrnmxjY4NOvkAgsBIIfOT/YH39nfWXYHNz07+2tvYmOpZ3d3fJX8fS/2QxfgceQd42BWOJUgAAAABJRU5ErkJggg==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;preferences 1&quot; title=&quot;&quot; src=&quot;/static/030a10e65ea82056069f4aa119604c6d/34f1d/preferences-1.png&quot; srcset=&quot;/static/030a10e65ea82056069f4aa119604c6d/772e8/preferences-1.png 200w,
/static/030a10e65ea82056069f4aa119604c6d/e17e5/preferences-1.png 400w,
/static/030a10e65ea82056069f4aa119604c6d/34f1d/preferences-1.png 457w&quot; sizes=&quot;(max-width: 457px) 100vw, 457px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Ama yukarıdan da göreceğiniz üzere kendi projelerim, iş projeleri, okumak/incelemek için indirdiğim projeler derken dev pathi karmakarışık bir hal aldı. Neredeyse 1 buçuk yıldır kullanmadığım ve “ne işe yarayacak ki” dediğim etiketler imdadıma koştu.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/cffdba3186ae9722a678efbc01824d9f/7f664/preferences-2.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 456px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 141%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAcCAYAAABh2p9gAAAACXBIWXMAAAsTAAALEwEAmpwYAAAEvklEQVRIx5WVS3PaVhTHZeIsOpOZLDKJO97Eu36JLrrpTPsduuu+HyAfIItqk+wybDJtkk5XTep2YjCIR+IHBoMRQjwE4iHAPCSEhCCAdNHpubKdl2GmYeY/Rxfd++Oc/733wGixA8b5698NOBMZyOQZAPhEhjZiFu8WzNQYM5Yxufb+Su1mmykVSgwzzQo+6KiM9PKf75VA+JkoVZ8MaxW/1lL8fDbnPz449qdOUv6To4Q/mUj6BV7wKw3F36g1qJ7g8+9SWfqZQrud7gYzH2ibdJDiog/75SooigKv0jIcFZvQxWepXAFRLEKWF6BcLENVqkJbaUOr2fLUaXVAFMQgwzC+w4NDH2M7yxsU+PLV3w+LFRlKgjD76c9Tm91L251q2Zblun1wcGTvh6M2ZmJLJcnG0q40r+APxmPxXQTeevbbMx+ztMkNHDB/PH/BJhMncJo8deKB127i7Rs4PkxAOnUKWCokjhI0EyhitoV8wZOYF0mpWAIuzO0h4vaL5y981FAPGI1E2IGqgVxvOkqr5TaaTWg0GlCv1zHWoVqVoVarwWAwAFVVPQ3UARmNRsDzvAcMBAIfgFwkxg66CpSFYyed4d10+hQhVQQ2PHBFqoAsy2CaJliWBePxGAzDIHSczWavAwPRODs7b4KVeeuIFdkdDYewXC5R5DJeyLZtWCwWXpxOp4TCr4DBYPAjIBdn36kKTORjRyhILp3oEOItXCXHcWA2m5HJZLIaGApxrK73QWkXnVxOdHVd9xbOZ3OYz1fr8ww/KTkWjLCK1YeEKjpFPu+a6BEtkWaySgSzn83mZDKdrs4wGgqwbX0KSVlzysW8SydSr9ZlR9+9m07IZF2GIS7EGgMdutW2I1Wrbq/XxyyWaz1cEgdUc05G4ynk+BUZvgmG2dpEg5hedcpZwTXwONCSaSafa46C5QLSLYfUBzMoCGfXgeFomNXOhyBna06hlHfp+TPNsefXOiDfsUlTRWBuBTAQecPOejWYilFHKEnu+fk53cX3wI/LnS/sT4GrMgxy+6w1MEAttBxezF14eFny5/5dATO05HXA/dA+a4xMMHXL0fWhO8SbQq/VOo1Rqm6SkTFes8uhEEsvujWxHDysHnCVNE27bA4aaKqKzUFfc7BjMVbBDpNInDiZzJl7lskCRjjLZiCX5SGTzkAaxeNzuVzGpiuCIOQJ9TqXy10HRrB9dbtd2ooc7HluuVgE2usKGCuVChQKF8+0A9EW1uv1qAi9oiszDIfDLH2J5TidXsett5qgUk+xRFNHjYZgDE0w0BY6D1uXB6Q2rOyH6OGvKi7WuurizBBJQpPIUW9JJofHxCokiKUkiZa1yNgwCfZCvHIT0u/3beonZviaAvf29i6A9D8lHo8/op2Dmm4adBfHYI1N0PQhnHd70MVj1FcHXmP1dhkjnUvXoJ9RCuQ4zgP6cHDj6dOnv6RSqRJuTpaLcAJ6KnAoGqPRC0UiUW8cef99lE8mk6Xd3d1HFPj48WPKYpitra2vMOygvkX9gPrxf4rO/Q71zebm5i2MG8yDBw8o03fv3r1b29vbW3fu3Nn+En2NH1x3GxmbN2/eZN5/7t69u7Gzs+PDl1+k+/fv07hxxfkP230wbJvUyFwAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;preferences 2&quot; title=&quot;&quot; src=&quot;/static/cffdba3186ae9722a678efbc01824d9f/7f664/preferences-2.png&quot; srcset=&quot;/static/cffdba3186ae9722a678efbc01824d9f/772e8/preferences-2.png 200w,
/static/cffdba3186ae9722a678efbc01824d9f/e17e5/preferences-2.png 400w,
/static/cffdba3186ae9722a678efbc01824d9f/7f664/preferences-2.png 456w&quot; sizes=&quot;(max-width: 456px) 100vw, 456px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;5 ana başlık belirledim, bunları yanda görüyorsunuz. dev pathindeki her projeyi bu etiketler ile etiketledim. Sadece dev pathi ile kalmadı tabi bu. Örneğin google drive klasörümde bulunan bir kitabı da Read etiketiyle etiketlediğim zaman finderdaki sidebardan sadece Read kısmına basarak erişebiliyorum, hangi pathte olduğu önemini yitiriyor.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/d5a1dbd1a87fb2db9b7a83138fe472c2/ef6b9/tags.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 80%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAACNklEQVQ4y6WTW27TQBSGU5CQWAbP7MACFsAWqBQpaVRBWRNv8MBzN8BDBMGhTVMaX8f2xLfEl8TGji/1ZA5jQ1NEFcDit3/Zls5883vOTAeGhx3l9P3jD2enTxHCHFIQs8aFfshhHXMYzTlhLHDTyZTTVI0zsdlYldWmVmNWJOUZ+34Ur+JOrXval9FQNr6CJCjEQDq1TYuOPo0oNjC1sEVVQW3el+6SMijVNZ16C4+6jksd26kCPwBxJr4BgAb48PJqNnbtBax8j6BFAOfIhMvJBJaeB2xWCO0VbDYbSJMU4jhunKZp4yRJSJ7lIEnSux1QEGa8gQ02OKj0uKBD1aIYIRp9i2meFrQMrykr3ueKGWzbfrsDagjxc9MErCGieBFMTB/SOAKy3QKtKOSrgo1kF73jWqQGmqZ5C2RxeVlWwDHnZB5ncGH5wBJCPQkpCRSrsgE2N61D/dB+oCg2CYOlS4w4h8/GAjRZgmSTArDyzMvbAUVR4G3HgTVrih7l8FFzwTXnQOi2WaFsmbUDIraGPmt9GARknW4gyksoiwK2bA1rCLkmLX9ZFflkk0CWZaQscvhdNw35Cfk78MpAvGrNIV5HpGDJfu3kDaQV0JIE3tE1CMIVKcuStlR1ByicnfOziykoqkoC3//TJt67sS3Luj0pqozGOtLBwJhGUQQsZRtvq6oCXdd3wAdHg6PnJ69PXg0Gg+Ner3fc7/f/2XU908tut/ukob3oHtaPA+b7/+mDOuF3FQ74CE+mmjkAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;tags&quot; title=&quot;&quot; src=&quot;/static/d5a1dbd1a87fb2db9b7a83138fe472c2/5a190/tags.png&quot; srcset=&quot;/static/d5a1dbd1a87fb2db9b7a83138fe472c2/772e8/tags.png 200w,
/static/d5a1dbd1a87fb2db9b7a83138fe472c2/e17e5/tags.png 400w,
/static/d5a1dbd1a87fb2db9b7a83138fe472c2/5a190/tags.png 800w,
/static/d5a1dbd1a87fb2db9b7a83138fe472c2/ef6b9/tags.png 832w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;Örneğin Review’a tıkladığımda etiketlediğim tüm projeleri görebiliyorum&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;hr&gt;
&lt;p&gt;Dosyalarımı yedeklemek için Google Drive kullanıyorum, bir süre önce Backup and Sync from Google ismine dönüşen program ile artık bilgisayardaki herhangi bir pathi de yedekleyebiliyorsunuz.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/5e892a570e5fcfa9aff9fcbef2b86990/ef6b9/drive.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 80%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB9klEQVQ4y6WT3W7TMBTHO5CQeAyueYMIeABeYUjd2ottPBR3cMH1XgCklk1uyyRo4nzZSe0kXdpuDel3PB/soHVDdIjSI/11ju3jn/xxTgUabyru6cfnnzqnL30/NHzXVyLGaDAy4rBnfLGo0UQXxlfUNlzHM3iPGyxkhqdinUuUXNt9pcbPsqusou0RaZ01nOA7YMsR1CcyYlyen53LHg2kRXryWxfLwKcyiRNJ1DolVKb9tBzHUVwMB0PAJn4HACXwadfCrct+CuPRSND0CtpeCI5lwfX1GKZ5DtlY+ckUJpMJZFlWSsdaeZ6L+WwOtm1/WAObzQZqdzpAHLu4YKn87DKpYlmIG6mSZFEUpX9AhRJEUfR+DTRNE7muC2a3K8IkhUE+g9VyofNASglCiNJvkDah8xhjd0AFQ57nAeNcrBa/QLewW38/vre+GWhjjNQEJEki5vP5b6f4LyDGForjGNI0LYGbIFsBfd9H+uuHw6GYzWa7A20Po3yag4Ktr7zTG3ZDgjzOdL2JhfqUnYEMmygiPqTqygoot7TiD2CfBuiScxj/yMRqtfpbET9Y2Jzzu04JSNhiPQ5xEkvdTsvlchvdqE4CSuka+OSwfvj6+OT4ba1WOzo4qB7V6/V/lt6j7KRarb4oafvVfe32lB7vqD19wp8t7vwp6rUy7gAAAABJRU5ErkJggg==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;drive&quot; title=&quot;&quot; src=&quot;/static/5e892a570e5fcfa9aff9fcbef2b86990/5a190/drive.png&quot; srcset=&quot;/static/5e892a570e5fcfa9aff9fcbef2b86990/772e8/drive.png 200w,
/static/5e892a570e5fcfa9aff9fcbef2b86990/e17e5/drive.png 400w,
/static/5e892a570e5fcfa9aff9fcbef2b86990/5a190/drive.png 800w,
/static/5e892a570e5fcfa9aff9fcbef2b86990/ef6b9/drive.png 832w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Drive klasörümde kitaplar, okuldaki projeleri içeren klasör, sunumlar, ekran görüntüleri ve sketch dosyalarını içen klasörler var. Ekran görüntüleri dikkatinizi çekmiş olabilir. Evet macteki ekran görüntülerini drive içerisindeki Screenshots isimli klasörde tutuyorum. Bu sayede bilgisayarı açamadığım durumda bile telefonumdan ekran görüntülerine erişebiliyorum.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/76ab4a32b1692b6ebe2688ec95e0e979/ef6b9/downloads.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 80%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAAB7klEQVQ4y6WT3W7aMBSA6SpN2mPsem8QbXuAvUIn0cJF2z3U7raLXfcFpqlaWRqkjhEIjp2EOCGDkJAfSCCuz2yk0k5lP4gjffKxdM5nS8euweXbGrr49OJz++IVxo6CEVawSZQojBXfGSqa4Shf2l3lRmsr5sBU6JAqruOuc1lLBMhAr8X+eRIlNRlPiNa6HNg/wOghZmOLey7lV1+vuENsPrBc/l0fcBsTPvIDTkzCLWLxcTAW+xH3Pb8KJyH09f57AFgLn3W6+rXvBRBNxswMptAyLLAJgTTLIE9TSOIY5vkc8jyHJEnWyFySZRkrFgUYhvFxI+z1dNV2bIinYTXOC25PU74sCy4K1txyvsm3UAnA87wPGyHGWHVdF0wTs2Q2g7uQnn8gg8la0X8vNBFShRQo9VhZLn9reii+yx8cuF34rdVSO50O6LrOJpPJVslOwramqQghIISwWAxgb6FlWWoURSBgZVHuLzRQX83yFBbzBSuK4lHzzsKuQ1STuiAmLIZS7i90+7rqEQzjMJRCvmNUj4SBZas/KYVZmrDVavW3R/zHh00pvf8pNnGu3SEFf+Rz+Z2Wy+Uu3FZVBWKwG+HTk+bJm7Pzs3eNRuP0+Lh+2mw2/xvZI+K8Xq+/XNuO6kdyORAc7smBvOEvsBv9RQW5BNAAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;downloads&quot; title=&quot;&quot; src=&quot;/static/76ab4a32b1692b6ebe2688ec95e0e979/5a190/downloads.png&quot; srcset=&quot;/static/76ab4a32b1692b6ebe2688ec95e0e979/772e8/downloads.png 200w,
/static/76ab4a32b1692b6ebe2688ec95e0e979/e17e5/downloads.png 400w,
/static/76ab4a32b1692b6ebe2688ec95e0e979/5a190/downloads.png 800w,
/static/76ab4a32b1692b6ebe2688ec95e0e979/ef6b9/downloads.png 832w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Downloads klasörümü de google driveda tutuyorum. Burası da dağınık değil. İndirdiğim dosya saklamaya değer ise bu klasörlerden birine giriyor, değil ise zaten cöpü boyluyor.&lt;/p&gt;
&lt;p&gt;Open in code adında ufak bir eklenti de kullanıyorum finder içerisinde. Bu ikona tıkladığımda o an bulunduğum pathi VSCode ile açıyor.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/96b9b099ca6d0a2c9a9753816c0cdd93/ef6b9/open-in-vscode.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 80%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAAAsTAAALEwEAmpwYAAAC1UlEQVQ4y6WTy47cRBSGJyAh8Ris8wYW8ADsERIJaqV7UCe8DhKLLNiBNMoKZYdYIKJMkvFMmo4yHd9ddvnWbY/bt7Z7xvb5qe6GnpFAJIgj/apTi/PVf6pOHeDJlwfa46Pbv549/sTQmWTqhuQxW1rlSyn2XElhXHo2fSNNzyaSqRlS+PsridtMMkRu6qZkCemq/qnYf5Sn+cEm3mMT+anhzqBrZudYjCzLpd+ePCdxAM0MTmevFbKZQ/PzGfGjI3JPZJonKYV+QIEftEmcQJkp3wPYAj88OT07NXQLget0JyrHw184vnv0Ct/+xIQ8/PxiDoc7sF+fo5hOUQYBqrpGVZYoy7Jr6gaqqv64Bz47PpZfTiawda2degt6aobi9JCWeUVp1ZBVFqQbFummST1AopA2gV3eCsH3/R/2QMaY7PsBPId1VlJg4kZYBD7W6/W2Js4u4MUp0osE7VW7waHruh2VqNsAOefXQFVVZFXTRMtu5+Y1XjoRXNuCZTGkyxRFk229dH2PnbGtxX8BKorsco5kHnYsb/DcCsBtG4ZuIBTOnJWoEc3uUHg7UFHeyL646DRe7IGGqkBTNVwsC8zzqx2Q8G4OTdOUY/H02UXSsazGqWjZMU1kWYZV1aDKxX3hPwBVQ5GLqkDbNB0vGky9GEkUYSVGoxeFizy/CXk78NyxZN3jqPOsc4o1TliIOAoRhRHyskBY7R6F8I5ArsxkT7S4FC27xZqODY9MTSVV1SiIYppnjaju6Wb0/X7f/g0Y2UyOuIdVmXdedUUvbDHYHqeyrKjtW0rqxV9D/E/aAj3Pu/4pzHJOuethEQXE0hKy5SMX81c3DZp6jTwucHl1icvLa22G/s+8b9sWtm3vgR/cG9377P6D+98cDofjL74ajD+/Oxgfjkbjw68Px6PhaDy8OxyPxP6mhsPhfhXxYDAYfLyl3Rnc2Sy3hN7/n7q1cfgHlQjpI3vOkqcAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;open in vscode&quot; title=&quot;&quot; src=&quot;/static/96b9b099ca6d0a2c9a9753816c0cdd93/5a190/open-in-vscode.png&quot; srcset=&quot;/static/96b9b099ca6d0a2c9a9753816c0cdd93/772e8/open-in-vscode.png 200w,
/static/96b9b099ca6d0a2c9a9753816c0cdd93/e17e5/open-in-vscode.png 400w,
/static/96b9b099ca6d0a2c9a9753816c0cdd93/5a190/open-in-vscode.png 800w,
/static/96b9b099ca6d0a2c9a9753816c0cdd93/ef6b9/open-in-vscode.png 832w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;hr&gt;
&lt;h3 id=&quot;apps&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#apps&quot; aria-label=&quot;apps permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Apps&lt;/h3&gt;
&lt;p&gt;Kullandığım yardımcı araçları anlatmaya başlayabilirim artık. 😄&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/94fdf9dd0de88736f48f10f8a9384e43/07a9c/utils.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 62.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAIAAAAmMtkJAAAACXBIWXMAAAsTAAALEwEAmpwYAAADBElEQVQozw2N728TZQCAT0OiDZm1W3t3b3u/e4Xd1us2yhTFdgTIgJF0QAdhDByjW12rk7LetB3N6NaWu/d+vW/vutFhBP2kiYufFBISYvQPMH4w8d+xH588T/IQO2OokXB2x3Ar2e0kPV312+O4rXbh9DP7dN9K7+spv53095J4W7brJ+ztk7YmGltxuCkaxKOEvVv7Z/PSr/rF568P39aU/R7cPIDf1uRe+XrlUdp5rjaOpLsPJfSm/7e7/PODyf7d9r/FhLMu6sSagr64/Uch+1M1e4i0375S+9X7NW2lYVOwrZTXUqiuPGnFy/dlbK6/qsx+f3PsIL/w51LCWhycb4z6cLFayrYWVW93djsvob2133cLr3YCBX+mei8Bi+U32uF/ednuf/Nd9foPV7n22nhpTjCvSpA4J3uNa42lT+yFlNnPP7ws2fXi0eONX4rK8k4uvzy6/SR/5Op/5VKOvt5aueSdF5+WzpbP8mZmcD4j+dHVWvIiTE8j8PVmdtI/w3tzM3rtyw20dBtm7hmBwgLQs2p3kvXSgvuRjKZE/7RonuIMIsn7bFU7eeXp5KdY3NM+S/mrtOOPbeDSnFGa2p9NmfRsTupMnfAmEigVR6rkqoI1zpvjrEHIElaYg1Ghp8g9VTi8ELebH2o/ZgpW/VqtGN/LK20udwM0RhNeQsKyiGTelTlbZkw5ZhAsj1gJ8/EuL3m87MkyViRr5gJc/7xSX765lcnVRuazoCkJiBUwwyGGddiYxQLI0ToBGBewCHAY8F0geEDwSbEncLjC3NEmluZjZfPYnQxlRgYBg+koooFDUxYgDRDuEBRtk1GXjKEIgyMsJlkc4rxpCr5859aDwCoXhSvByuXh5kgMk7RLkg4VselhCEI6CHYIOmwOmCIdknIjAw3cEMAfD7W23q2kQ9YQ5cboSjLcBGGXHrFByIoGYWxIZ453mECLiAYNEIJg2Bo4OmzTIw5NOulzL66ceqxMbEyf1zLzPhuG0Q/sWNBkhgz2uM4FOux7Lfb95v+QEgWkg0kTHAAAAABJRU5ErkJggg==&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;utils&quot; title=&quot;&quot; src=&quot;/static/94fdf9dd0de88736f48f10f8a9384e43/5a190/utils.png&quot; srcset=&quot;/static/94fdf9dd0de88736f48f10f8a9384e43/772e8/utils.png 200w,
/static/94fdf9dd0de88736f48f10f8a9384e43/e17e5/utils.png 400w,
/static/94fdf9dd0de88736f48f10f8a9384e43/5a190/utils.png 800w,
/static/94fdf9dd0de88736f48f10f8a9384e43/c1b63/utils.png 1200w,
/static/94fdf9dd0de88736f48f10f8a9384e43/07a9c/utils.png 1440w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;VLC, Shazam gibi bilinenler haricinde diğerlerini açıklayacağım.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Backup and Sync from Google&lt;/em&gt;: Google Drive uygulamasının yeni adı.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;KeepingYouAwake&lt;/em&gt;: Caffeine isimli bilgisayarın uykuya dalmasını engelleyen uygulamanın open source muadili.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;4K Video Downloader&lt;/em&gt;: Youtubedan video indirmek için kullanıdığım araç.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Mos&lt;/em&gt;: Yakın zamanda klavye ve mouse alarak evde maci masaüstü gibi kullanmaya başladım ancak ben scroll directionı natural kullandığım için mouse kullanırken reverse scrolling yapmam gerekiyordu. Ayrıca magic mouse olmadığı için smooth scrolling de yapamıyordum. Arayışlarım sonucunda bu uygulama ile iki sorunu da tek seferde çözdüm.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Kap&lt;/em&gt;: kısa gifler hazırlamak için kullandığım menübar uygulaması.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;App Cleaner&lt;/em&gt;: Birkaç mb olmasına rağmen kaldırmak istediğiniz uygulamanın işletim sistemindeki tüm izlerini silmenize yardımcı oluyor.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Itsycal&lt;/em&gt;: Ufak, sade bir takvim uygulaması.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Shiftit&lt;/em&gt;: Gün içinde en fazla kullandığım uygulama olabilir. ctrl+alt+cmd ile c / m / - /+/ sağ / sol / yukarı / aşağı gibi kısayolları olan pencereleri hizalamanıza yarayan efsane bir open source uygulama.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;ShowKeys&lt;/em&gt;: Hangi tuşa bastığınızı büyük bir şekilde konumlandırdığınız pencerede gösteren uygulama.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Spotify Notifications&lt;/em&gt;: Ben spotifyı 3. desktopta kullandığım için ismini bilmediğim bir şarkıda git gel toplam 4 defa kaydırma yapmam gerekiyordu. Bu yüzden githubda bu uygulamayı buldum, her yeni şarkı başladığında bildirim olarak gösteriyor. (eskiden spotify içerisinde olan bu özellik daha sonra kaldırılmış.)&lt;/p&gt;
&lt;hr&gt;
&lt;h3 id=&quot;terminal&quot; style=&quot;position:relative;&quot;&gt;&lt;a href=&quot;#terminal&quot; aria-label=&quot;terminal permalink&quot; class=&quot;anchor before&quot;&gt;&lt;svg aria-hidden=&quot;true&quot; focusable=&quot;false&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/a&gt;Terminal&lt;/h3&gt;
&lt;p&gt;Terminali full screen kullanan kişilerdenim, İkinci desktopta iTerm2 her zaman açık halde bekler. Mac kullananların bildiği üzere full screen appler yeni bir desktop olarak açılıyor. Ama hem ikinci desktopta hem de full screen nasıl kullanılıyor diye sormuş olabilirsiniz, iTerm2nin ayarlarında native full screen windows tikini kaldırdığınızda artık bulunduğunuz desktop içinde full screen kullanabilirsiniz.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/dbb68f7ab849843f5308b33ba9e55153/07a9c/terminal.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 62.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAANCAIAAAAmMtkJAAAACXBIWXMAAAsTAAALEwEAmpwYAAACPUlEQVQoz2NQtXKVMXaQM3WSN3OSN3VSMHNWMHeWMrAV1jQT0TKHICBbXNdK2dINgpQsXGWNHBXNXBn4Tbz4TLyAJK+xJ7ueK7uuC5Dk0HPl1HfjNHADkTDErufCbeQBUm/sCdHFIGDiCUT8xp6i5t4a7pEa7lHqbpEQpOoaoQZBbpFABJSSsPLjN/YQBGsBIpBmIVMvTn1XM9+4fXt2Hzx09MyZC6fPnD9z5uyhw8cuX75+5cr1y5evnb9w+e6tO0EZZcyaDsJm3kiazbzYdZ1tw9OvXLt+5/atp48fP3367P6T11eu3bpz69bdO3efPH788sXLH1+/RBfUMmrYCZujadZxsovMvHnn3r279+7du//s2bNXbz7cuPPg9u3bd+/cuXv37pOnz379+B5diFWzrpNNeMbZy7fu3AaB+/fvv33z5s6dOw8fPHz69OnrV69evnr1/dtXHJqBNkdkAN0M1AC0Fmj/02fPb9y+d/nypVu3bgFFXr9+/ev7N5yabSMyL1y+fvUKEFx99OgJUPX1a9cuXrp0+/adhw8f3n/45OmLNzHYNHuz6Tg5Rme/ePb8xfOn796+ef/u7fevX4Du/PLpIxB9/fz5w4f3/37/SihrYlC3FTb3QWgWNPXiNnDT8ojsnjqrZ+rsnulze6bN6Zs+b8KsBRNnLwSiSbMX9s+cP2PBUuvQFA5dZ6BLEZoh+nkN3ZhUrYGIUdUKjCwZlJGQCpC04NZ3AaoUQE4kcAR0P3ZkDkXIOoEIAOm2RCwk1XRrAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;terminal&quot; title=&quot;&quot; src=&quot;/static/dbb68f7ab849843f5308b33ba9e55153/5a190/terminal.png&quot; srcset=&quot;/static/dbb68f7ab849843f5308b33ba9e55153/772e8/terminal.png 200w,
/static/dbb68f7ab849843f5308b33ba9e55153/e17e5/terminal.png 400w,
/static/dbb68f7ab849843f5308b33ba9e55153/5a190/terminal.png 800w,
/static/dbb68f7ab849843f5308b33ba9e55153/c1b63/terminal.png 1200w,
/static/dbb68f7ab849843f5308b33ba9e55153/07a9c/terminal.png 1440w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;Tabi her seferinde -cmd+tab olmadığını varsayarsak- docktaki ikona tıklamak zahmetli olacağı için Pointer menüsü altından iTerm2’ye bir hotkey atadım (ctrl+t). Bu sayede hangi desktopta olursam olayım ctrl+t’ye basarak terminale geçebiliyorum. Tabi bir sorun daha var, mac klavyelerinde ctrl tuşu çok saçma bir yerde. Ben bu tuşu caps lock ile değiştirdim. Bu sayede serçe parmağımı saçma sapan bükmeden rahatlıkla ctrl tuşuna basabiliyorum.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Githubdan çektiğim dosyaları dev pathi altına çektiğimi söylemiştim. Ama terminalde cd yaptığım zaman ~/ pathine dönüyordu. Bunun için ve başka şeyler için de birkaç alias yazmam gerekti.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/864cfc5b5ebd5006545c3478f5cd565c/c391c/alias.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 673px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 37.5%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAICAIAAAB2/0i6AAAACXBIWXMAAAsTAAALEwEAmpwYAAABI0lEQVQY042R3UvCYBTGd1ta6UVBRUFYapku9TxHbWIIztxSnGXmMrc2v/qywP5/6CRIdJPBj5cfD+/Dc3EUaja11mseI+JhgScpuCqcbbLWqRYi42+UlNlQDZ/Iz7B3xo9FfjZys0N01+gyvLSct6yi/aZdjMs0LfBINvdwvUn1jf8sl7otvfOp07SWm+n8IbVV0pfWFsttq2S+l7Iv5dz0nMf7uMnCj8IOUS1M5m+MOT+JEtersXI7QX2V3V1qbVFjh6wVqgSpuvqNLhKYE1wgYWCeK/Hq1XGlp5KbhHOA2wg6EdyJyxvHvcgR7Ci64gn0T9CTPAVHiMFWkmYzXR/kMcywL1+FDLwCj0/hEAYaJio8Fa44eCjnSOBB4yeNJ2l4X+SKauK5T+SWAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;alias&quot; title=&quot;&quot; src=&quot;/static/864cfc5b5ebd5006545c3478f5cd565c/c391c/alias.png&quot; srcset=&quot;/static/864cfc5b5ebd5006545c3478f5cd565c/772e8/alias.png 200w,
/static/864cfc5b5ebd5006545c3478f5cd565c/e17e5/alias.png 400w,
/static/864cfc5b5ebd5006545c3478f5cd565c/c391c/alias.png 673w&quot; sizes=&quot;(max-width: 673px) 100vw, 673px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
&lt;/figure&gt;
&lt;p&gt;En alttaki png ve jpg aliasları aldığım screenshotı hangi dosya formatında kaydedeceğimi belirlemek için kullanıyorum. Örneğin twitterda png yerine jpg resim yüklüyorum çünkü png bazen patlıyor.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;Şimdilik aklıma gelenler bunlar, aklıma geldikçe eklemeler düzenlemeler yapmaya çalışacağım. Sizin de bu tarzda iyileştirmeleriniz varsa paylaşmaktan çekinmeyin.&lt;/p&gt;</content:encoded></item><item><title><![CDATA[iPhone X ve Garip Tasarımının Nedeni]]></title><description><![CDATA[Dün twitterda vakit geçirirken Yasir Buğra Eryılmaz’ın floodun gördükten sonra bunu görselleştirmek istedim. Flooda aşağıdan ulaşabilirsiniz…]]></description><link>https://ergenekonyigit.github.io/iphone-x-tasarimi/</link><guid isPermaLink="false">https://ergenekonyigit.github.io/iphone-x-tasarimi/</guid><pubDate>Sat, 16 Sep 2017 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;Dün twitterda vakit geçirirken &lt;a href=&quot;https://medium.com/@yasirbugra&quot;&gt;Yasir Buğra Eryılmaz&lt;/a&gt;’ın floodun gördükten sonra bunu görselleştirmek istedim.&lt;/p&gt;
&lt;p&gt;Flooda aşağıdan ulaşabilirsiniz.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://twitter.com/yasirbugra/status/908501033424494593&quot;&gt;Flood&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Yıllar boyunca birçok yerde telefon ikonu için aşağıdaki (solda) iPhone ikonu kullanıldı. Ancak son yıllarda akıllı telefonlarda çerçevelerin kapladığı alanı azaltma yarışına girildi. Apple da buna kayıtsız kalamadı ki 12 eylül 2017’de düzenlenen Keynote’unda iPhone X adında radikal tasarım değişikliklerine sahip bir cihaz tanıttı.&lt;/p&gt;
&lt;p&gt;Tim Cook’un iPhone X’i tanıtırken söylediklerinden anlaşılacağı üzere yeni iPhone tasarımını uzun bir süre göreceğiz.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;The first iPhone revolutionized a decade of technology and change the world in the process. Now 10 years later, it is only fitting that we are here in this place on this day to reveal a product that will set the path for technology for the next decade.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/e8950/iphone-old-new.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAIAAABr+ngCAAAACXBIWXMAAAsTAAALEwEAmpwYAAABK0lEQVQoz82SzU6DUBCFeVQfoitfwa1ujFs16rpNjN24MSmh2pJUmzaWn9ACxf5AusAWZjzjxQbYaTfenITvzOHAYq7GBxwtJ3k829S4zo7vRI2rDBZDFeGkOx4FZLoiAGxRznJ53Jt00sovHkUAWAwRqf6LQy2Tbjp026Fmn2DVp4s/913y1rzZigCwKlapYdF7xHEqAhiTarlr0avPs1gEgC2XYd9+UoBh1co2DQMOEhGga9fLQ7+U/quyz2EiAvy6PJ6zH4sAtTLWPg452ojKabFnbO/oPDtr56cPOaDZq+xZn5Bu8SgUAfT9qug7nq7o8ilvDwgCTJcyRaTu2DyR9fQcESCMWaXaQXd7f3vtiL0Fz1bsfPDnrvJSupWht2R/ze5CbKX8t/MF6eJVoZ12CaMAAAAASUVORK5CYII=&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;iphone old new&quot; title=&quot;&quot; src=&quot;/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/5a190/iphone-old-new.png&quot; srcset=&quot;/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/772e8/iphone-old-new.png 200w,
/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/e17e5/iphone-old-new.png 400w,
/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/5a190/iphone-old-new.png 800w,
/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/c1b63/iphone-old-new.png 1200w,
/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/29007/iphone-old-new.png 1600w,
/static/cd595b7b31cb05e5c5dd4766d3aa8fd8/e8950/iphone-old-new.png 2000w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;Yıllardır gördüğümüz iPhone ikonu (solda), ve önümüzdeki günlerde sıkça görmeye başlayacağımız iPhone ikonu (sağda)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Son yıllarda çıkan android telefonların genel görünümü aşağıdaki şekilde (solda). İki farklı ikona bakıldığında hangisinin iPhone olduğu rahatlıkla seçilebiliyor. Apple’ın da bu yeni-garip tasarımda başarmak istediği buydu ve başaracakmış gibi gözüküyor.&lt;/p&gt;
&lt;figure&gt;
  
  &lt;a class=&quot;gatsby-resp-image-link&quot; href=&quot;/static/91500881db575c7524c550ac1b331dce/e8950/android-vs-iphone.png&quot; style=&quot;display: block&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;
  
  &lt;span class=&quot;gatsby-resp-image-wrapper&quot; style=&quot;position: relative; display: block;  max-width: 800px; margin-left: auto; margin-right: auto;&quot;&gt;
    &lt;span class=&quot;gatsby-resp-image-background-image&quot; style=&quot;padding-bottom: 75%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAPCAIAAABr+ngCAAAACXBIWXMAAAsTAAALEwEAmpwYAAABF0lEQVQoz9WSzU7CUBSE+/7P4NpElxrcayKGhoKgCUiRUlLpDwi2ohYN5zhjm6ttTEx05cmXdKZzp4veY+kfxhLhY77Wo440ugQCFlNEmPxNR5H0ZwQCtizvPk6c3chxT87HBAIWLxEVadeXk74ctOSwJY2ewBapZWJvqetnAtGZVsptT24XmuYEoj2plh1PBqGGGRlEPP21XKTzlECY9LM8DDXKyDCirZW/Tf93Gb93FGvySCBqfxvWjXWxIW6izrRabo7F8XlJAKLpVsr2RGyPHwUQdu2qrgPZO93tXxCIq6CMix1LMl7PpU8g4rTcP8ssKpZukxOzfT/vtlEvWw1WerfSp239UP6q/pJp+KCze9p6+RfzDr3hWrQah0PIAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;&quot;&gt;
      &lt;img class=&quot;gatsby-resp-image-image&quot; style=&quot;width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;&quot; alt=&quot;android vs iphone&quot; title=&quot;&quot; src=&quot;/static/91500881db575c7524c550ac1b331dce/5a190/android-vs-iphone.png&quot; srcset=&quot;/static/91500881db575c7524c550ac1b331dce/772e8/android-vs-iphone.png 200w,
/static/91500881db575c7524c550ac1b331dce/e17e5/android-vs-iphone.png 400w,
/static/91500881db575c7524c550ac1b331dce/5a190/android-vs-iphone.png 800w,
/static/91500881db575c7524c550ac1b331dce/c1b63/android-vs-iphone.png 1200w,
/static/91500881db575c7524c550ac1b331dce/29007/android-vs-iphone.png 1600w,
/static/91500881db575c7524c550ac1b331dce/e8950/android-vs-iphone.png 2000w&quot; sizes=&quot;(max-width: 800px) 100vw, 800px&quot;&gt;
    &lt;/span&gt;
  &lt;/span&gt;
  
  &lt;/a&gt;
    
  &lt;figcaption&gt;Son yıllarda android telefonların genel görünümü (solda), yeni iPhone ikonu (sağda)&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;p&gt;Edit: The Verge’de de bu konuyla ilgili bir yazı yazılmış. &lt;a href=&quot;https://www.theverge.com/2017/9/14/16306244/apple-iphone-x-design-notch&quot;&gt;Link&lt;/a&gt;&lt;/p&gt;</content:encoded></item></channel></rss>