<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom"><title>K M Masum Habib</title><link href="//masumhabib.com/" rel="alternate"></link><link href="//masumhabib.com/feeds/all.atom.xml" rel="self"></link><id>//masumhabib.com/</id><updated>2015-08-09T01:49:00-07:00</updated><entry><title>Chiral Tunneling of Topological States: Towards the Efficient Generation of Spin Current Using Spin-Momentum Locking</title><link href="//masumhabib.com/blog/chiral-tunneling-of-topological-states-towards-the-efficient-generation-of-spin-current-using-spin-momentum-locking/" rel="alternate"></link><updated>2015-08-09T01:49:00-07:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2015-08-09:blog/chiral-tunneling-of-topological-states-towards-the-efficient-generation-of-spin-current-using-spin-momentum-locking/</id><summary type="html">&lt;p&gt;Our research on topological insulator pn junction is published in
Physical Review Letters. Given below is abstract. Full article can be
found
&lt;a class="reference external" href="/pages/publications/articles/Habib_PRL15.pdf"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/chiral-tunneling-of-topological-states-towards-the-efficient-generation-of-spin-current-using-spin-momentum-locking/images/PRL15.png" /&gt;
&lt;/div&gt;
&lt;div class="section" id="abstract"&gt;
&lt;h2&gt;&lt;em&gt;Abstract&lt;/em&gt;&lt;/h2&gt;
&lt;p&gt;We show that the interplay between chiral tunneling and spin-momentum
locking of helical surface states leads to spin amplification and
filtering in a 3D topological insulator (TI). Our calculations show that
the chiral tunneling across a TI pn junction allows normally incident
electrons to transmit, while the rest are reflected with their spins
flipped due to spin-momentum locking. The net result is that the spin
current is enhanced while the dissipative charge current is
simultaneously suppressed, leading to an extremely large, gate-tunable
spin-to-charge current ratio (∼20) at the reflected end. At the
transmitted end, the ratio stays close to 1 and the electrons are
completely spin polarized.&lt;/p&gt;
&lt;/div&gt;
</summary><category term="Topological Insulator"></category><category term="Research"></category></entry><entry><title>PlotPub: Publication Quality Graph v2.0 released</title><link href="//masumhabib.com/blog/plotpub-publication-quality-graph-v2-0-released/" rel="alternate"></link><updated>2015-03-19T14:41:00-07:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2015-03-19:blog/plotpub-publication-quality-graph-v2-0-released/</id><summary type="html">&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/pages/projects/publication-quality-graphs-matlab/images/plotpub-2.0/plotMarkers.png" /&gt;
&lt;/div&gt;
&lt;p&gt;I am pleased to announce the release of the PlotPub: Publication Quality
Graphs v2.0. It is a free and open source MATLAB library for
creating&amp;nbsp;beautiful, publication quality figures&amp;nbsp;from instantly generated
MATLAB figures or saved MATLAB fig files. This easy to use library can
export figures in EPS, PDF, JPEG, PNG and TIFF with adjustable
resolution.&lt;/p&gt;
&lt;div class="section" id="new-features-of-v2-x"&gt;
&lt;h2&gt;New features of v2.x&lt;/h2&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Simple and elegant object oriented approach: all aspects of the
MATLAB figure is encapsulated in the Plot class.&lt;/li&gt;
&lt;li&gt;Create new plots, open saved figures or change existing figure using
the same call, &lt;tt class="docutils literal"&gt;Plot()&lt;/tt&gt;.&lt;/li&gt;
&lt;li&gt;Control every aspect of a MATLAB figure using the Plot class object.&lt;/li&gt;
&lt;li&gt;Property changes are immediately visible, useful when using from the
command window&lt;/li&gt;
&lt;li&gt;Even easier to use.&lt;/li&gt;
&lt;li&gt;Fully compatible to v1.x.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="download"&gt;
&lt;h2&gt;Download&lt;/h2&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="/projects/publication-quality-graphs-matlab/source/PlotPub-v2.0.zip"&gt;PlotPub-v2.0.zip&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="documentation"&gt;
&lt;h2&gt;Documentation&lt;/h2&gt;
&lt;p&gt;Please visit the following pages for more information:&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="/projects/publication-quality-graphs-matlab/"&gt;Project
page&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="/projects/publication-quality-graphs-matlab/plotpub-v2-0-documentation/"&gt;Tutorial and reference
manual&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="https://github.com/masumhabib/PlotPub"&gt;GitHub page&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
</summary><category term="Publication Quality Graphs"></category></entry><entry><title>ঠাট্টা করছেন, তাই না ফাইনম্যান? - ০১</title><link href="//masumhabib.com/blog/%E0%A6%A0%E0%A6%BE%E0%A6%9F%E0%A7%8D%E0%A6%9F%E0%A6%BE-%E0%A6%95%E0%A6%B0%E0%A6%9B%E0%A7%87%E0%A6%A8-%E0%A6%A4%E0%A6%BE%E0%A6%87-%E0%A6%A8%E0%A6%BE-%E0%A7%A6%E0%A7%A7/" rel="alternate"></link><updated>2015-01-17T03:48:00-08:00</updated><author><name>masum</name></author><id>tag:masumhabib.com,2015-01-17:blog/ঠাট্টা-করছেন-তাই-না-০১/</id><summary type="html">&lt;p&gt;&lt;strong&gt;মূল: Surely You’re Joking, Mr. Feynman! – Richard Feynman&lt;/strong&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;রিচার্ড ফাইনম্যান (মে ১১, ১৯১৮ – ফেব্রুয়ারি ১৫, ১৯৮৮)ঃ বিখ্যাত আমেরিকান
তত্ত্বীয় পদার্থবিজ্ঞানী। কোয়ান্টাম ইলেকট্রোডাইনামিক্সে বিশেষ অবদানের জন্য
১৯৬৫ সালে নোবেল পুরষ্কার পেয়েছেন।&lt;/p&gt;
&lt;p&gt;তাঁর বর্ণাঢ্য জীবনের নানা ঘটনা নিয়ে লেখা &amp;quot;Surely You're Joking,
Mr. Feynman!&amp;quot; বইয়ের বাংলা অনুবাদ এই লেখাটি।&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2  class="center"&gt; প্রথম পর্বঃ সুদূর রকএ্যাওয়ে থেকে এম, আই, টি &lt;/h2&gt;&lt;h3 class="center"&gt; ও রেডিও ঠিক করে চিন্তা দিয়ে &lt;/h3&gt;&lt;p class="center"&gt;&lt;strong&gt;পৃষ্ঠা - ০১&lt;/strong&gt;&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০২/"&gt;পরের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;এগারো/বারো বছর বয়সে আমি বাসায় একটা পরীক্ষাগার বানিয়েছিলাম। পরীক্ষাগারের মূল
কাঠামো ছিল একটা কাঠের বাক্সের ভিতরে রাখা কতগুলি তাক। আমার একটা হিটার ছিল,
সেখানে আমি আলু আর চর্বি দিয়ে ফ্রেঞ্চ ফ্রাই বানাতাম। আর ছিল একটা ব্যাটারি এবং একটা
বাল্ব ব্যাংক।&lt;/p&gt;
&lt;p&gt;বাল্ব ব্যাংকটা বানিয়েছিলাম কয়েকটা বাল্ব-সকেটকে একটা কাঠের পাটাতনে স্ক্র দিয়ে লাগিয়ে।
আমি জানতাম তার এবং সুইচ বিভিন্নভাবে জোড়া লাগিয়ে আমি বিভিন্ন ভোল্টেজ বানাতে
পারব। কিন্তু আমি জানতামনা যে বাল্বের বৈদ্যুতিক রোধ তাপমাত্রার উপর নির্ভরশীল। ফলে
বাল্ব ব্যাংক সার্কিট থেকে পাওয়া ভোল্টেজ আমার হিসেবের সাথে মিলত না।  কিন্তু তাতে কি?
সিরিজে লাগানো বাল্বগুলি থেকে যে সুন্দর, অনুজ্জ্বল দ্যুতিটা বের হত, সেটা ছিল দেখার মত।&lt;/p&gt;
&lt;p&gt;আমি এই যন্ত্রে একটা ফিউজও লাগাতে চেয়েছিলাম। যেন উল্টাপাল্টা শর্টসার্কিট হলে ফিউজটা
পুড়ে যায়। কিন্তু বাসার প্রধান ফিউজের চেয়ে দুর্বল একটা ফিউজ আমার দরকার ছিল। কোথায়
পাই সেটা? একটা বানিয়েই ফেললাম। একটা নষ্ট ফিউজের সকেটের চারদিকে পতলা টিনের পাত
পেঁচিয়ে তৈরি হল আমার একেবারে নিজস্ব ফিউজ। সেই ফিউজের সমান্তরালে লাগালাম একটা
পাঁচ ওয়াটের বাল্ব। ফলে, যখনই ফিউজটা পুড়ে যেত, সাথেসাথে বাল্বটাও জ্বলে উঠত। বাল্বটা ছিল
সুইচবোর্ডের উপর একটা বাদামী কাগজে মোড়া, জ্বললেই লাল টকটকে একটা আলো বের
হত। উল্টাপাল্টা কিছু হলে সুইচবোর্ডের দিকে তাকালেই লাল রংয়ের আলোটা দেখতে পেতাম।
ওখানেই আছে আমার পোড়া ফিউজ। মজাই মজা।&lt;/p&gt;
&lt;p&gt;আমি রেডিও শুনতে পছন্দ করতাম। শুরু করেছিলাম একটা কেনা ক্রিস্টাল রেডিও দিয়ে। একটা
এয়ারফোন কানে লাগিয়ে রেডিও শুনতে শুনতে ঘুমিয়ে পড়তাম। আর বাবা-মা বাইরে গেলে গভীর
রাতে বাড়ি ফিরে আমার ঘরে এসে এয়ারফোনটা খুলে দিত। আমার ছোট্ট মাথায় যে কী খেলা করে
সেটা ভেবে তাঁদের দুঃশ্চিন্তার কোন শেষ ছিল না।&lt;/p&gt;
&lt;p&gt;এরকম সময়ে আমি একটা চোর ধরার যন্ত্র আবিষ্কার করেছিলাম। জটিল কিছু না – একটা বিশাল
ব্যাটারীর সাথে একটা বৈদ্যুতিক ঘন্টা তার দিয়ে জোড়া দেওয়া। কেউ দরজাটা খুললেই সেটা
তারটাকে ব্যাটারীর সাথে চেপে ধরত আর ঘন্টাটা তখন বেজে উঠত।&lt;/p&gt;
&lt;p&gt;এক রাতে আমার বাবা-মা বাইরে থেকে বাসায় ফিরলেন। তারপর আমার এয়ারফোন খোলার জন্য
তাঁরা নিঃশব্দে, চুপিচুপি আমার দরজা খুললেন যেন আমি জেগে না যাই। হঠাৎ বিকট শব্দে আমার
চোর ধরার ঘন্টা বেজে উঠলো – বং বং বং বং বং। আর আমি বিছানা থেকে লাফিয়ে উঠে আনন্দে
চিৎকার দিলাম, “কাজ করেছে! কাজ করেছে!!”&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০২/"&gt;পরের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</summary><category term="বাংলা"></category><category term="অনুবাদ"></category><category term="ঠাট্টা করছেন তাই না ফাইনম্যান?"></category><category term="Bangla"></category></entry><entry><title>ঠাট্টা করছেন, তাই না ফাইনম্যান? - ০২</title><link href="//masumhabib.com/blog/%E0%A6%A0%E0%A6%BE%E0%A6%9F%E0%A7%8D%E0%A6%9F%E0%A6%BE-%E0%A6%95%E0%A6%B0%E0%A6%9B%E0%A7%87%E0%A6%A8-%E0%A6%A4%E0%A6%BE%E0%A6%87-%E0%A6%A8%E0%A6%BE-%E0%A7%A6%E0%A7%A8/" rel="alternate"></link><updated>2015-01-17T03:48:00-08:00</updated><author><name>masum</name></author><id>tag:masumhabib.com,2015-01-17:blog/ঠাট্টা-করছেন-তাই-না-০২/</id><summary type="html">&lt;p class="align-center"&gt;&lt;strong&gt;পৃষ্ঠা - ০২&lt;/strong&gt;&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০১/"&gt;আগের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০৩/"&gt;পরের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;আমার একটা ফোর্ড কয়েল (গাড়ীর ইঞ্জিনের স্পার্ক কয়েল) ছিল আর স্পার্ক টারমিনালটা ছিল
সুইচবোর্ডের উপর। আর রেইথিওন কোম্পানীর একটা আর, এইচ, টিউব ছিল যার মধ্যে ছিল আরগন
গ্যাস। স্পার্ক টারমিনালে টিউবটা লাগালেই এর মধ্যে রক্তবর্ণের দ্যুতি খেলা করত। অসাধারণ একটা
ব্যাপার।&lt;/p&gt;
&lt;p&gt;একদিন আমি ফোর্ড কয়েলটা নিয়ে খেলছিলাম – স্পার্ক দিয়ে কাগজ ফুটো করছিলাম – এমন সময়
কাগজে আগুন ধরে গেল। একটু পরই আমার হাতে ছ্যাঁকা লাগতে শুরু করলে আমি কাগজটাকে
একটা ধাতব ময়লা ফেলার ঝুড়িতে ফেলে দিলাম। ওই ঝুড়িতে অনেকগুলি খবরের কাগজ ছিল।
আর যায় কোথায়! খবরের কাগজ তাড়াতাড়ি পুড়ে বলে ঘরের মধ্যে বেশ বড় একটা অগ্নিকুন্ড তৈরি
হল। আমার মা বসার ঘরে তাঁর বান্ধবীদের সাথে বসে তাস খেলছিলেন। আমি তাড়াতাড়ি দরজাটা
বন্ধ করে দিলাম যেন তিনি আগুন দেখতে না পান। পাশে একটা সাময়িকী পড়ে ছিল। সেটা তুলে
আমি ঝুড়িতে ফেললাম যেন আগুন কমে আসে।&lt;/p&gt;
&lt;p&gt;আগুন নিভে যাওয়ার পর আমি সাময়িকীটা সরিয়ে ফেললাম, কিন্তু তাতে ঘরটা ধোঁয়ায় ভর্তি হয়ে
গেল। ঝুড়িটা তখনও অনেক গরম ছিল। তাই ধোঁয়ার হাত থেকে বাঁচতে একজোড়া প্লায়ার দিয়ে
ঝুড়িটাকে বয়ে নিয়ে জানালায় ধরে রাখলাম।&lt;/p&gt;
&lt;p&gt;কিন্তু বাইরে বেশ বাতাস ছিল আর তাতেই হল সর্বনাশ। আবার আগুন জ্বলে উঠল। এবার কিন্তু
সাময়িকী আমার হাতের নাগালের বাইরে। সাময়িকটা নেওয়ার জন্য আমি আগুনসহ ঝুড়িটা আবার
জানালা থেকে ভিতরে আনলাম। লক্ষ্য করলাম জানালায় পর্দা ঝুলছে! সর্বনাশ!!&lt;/p&gt;
&lt;p&gt;যাইহোক, শেষপর্যন্ত সাময়িকীটা এনে আগুন নিভিয়ে ফেলতে পারলাম। এবার সাময়িকীটা হাতে
রেখেই ঝুড়িটা ঝাঁকিয়ে জ্বলন্ত ছাই জানালা দিয়ে ২/৩ তলা নিচের রাস্তায় ফেলে দিলাম। এরপর
বাইরে এসে দরজা বন্ধ করে মাকে বললাম, “মা, বাইরে খেলতে যাচ্ছি”। জানালা দিয়ে আস্তে
আস্তে ধোঁয়া বেরিয়ে গেল।&lt;/p&gt;
&lt;p&gt;আমি মোটর দিয়েও বেশ কয়েকটা জিনিস বানিয়েছিলাম। আরেকবার আমার কেনা ফটোসেলের
জন্য একটা এম্প্লিফায়ার বানিয়েছিলাম। এটা দিয়ে আমি একটা বৈদ্যুতিক ঘন্টা নিয়ন্ত্রণ করতে
পারতাম। ফটোসেল এর উপর হাত নিয়ে গেল ঘন্টাটা বেজে উঠত। আমি খুব বেশি ‘গবেষনার’
সুযোগ পেতাম না। মা আমাকে জোর করে খেলতে পাঠিয়ে দিত। কিন্তু বাসায় থাকলে আমি
পরীক্ষাগারে নানান খুটখাট করতাম।&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০১/"&gt;আগের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০৩/"&gt;পরের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</summary><category term="বাংলা"></category><category term="অনুবাদ"></category><category term="ঠাট্টা করছেন তাই না ফাইনম্যান?"></category><category term="Bangla"></category></entry><entry><title>ঠাট্টা করছেন, তাই না ফাইনম্যান? - ০৩</title><link href="//masumhabib.com/blog/%E0%A6%A0%E0%A6%BE%E0%A6%9F%E0%A7%8D%E0%A6%9F%E0%A6%BE-%E0%A6%95%E0%A6%B0%E0%A6%9B%E0%A7%87%E0%A6%A8-%E0%A6%A4%E0%A6%BE%E0%A6%87-%E0%A6%A8%E0%A6%BE-%E0%A7%A6%E0%A7%A9/" rel="alternate"></link><updated>2015-01-17T03:48:00-08:00</updated><author><name>masum</name></author><id>tag:masumhabib.com,2015-01-17:blog/ঠাট্টা-করছেন-তাই-না-০৩/</id><summary type="html">&lt;p class="align-center"&gt;&lt;strong&gt;পৃষ্ঠা - ০৩&lt;/strong&gt;&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০২/"&gt;আগের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;হরেকমালের দোকান থেকে আমি অনেকগুলি রেডিও কিনেছিলাম। আমার বেশি টাকা ছিল না,
কিন্তু পুরাতন নষ্ট রেডিওগুলো সস্তায় পাওয়া যেত। আমি সেগুলো কিনে ঠিক করতে চেষ্টা
করতাম। সাধারণতঃ এগুলো ঠিক করা বেশ সোজা ছিল – হয়ত একটা তার খোলা থাকত বা
একটা কয়েল পোড়া থাকত বা কয়েলের অংশবিশেষ খোলা থাকত – ফলে আমি বেশ সহজেই
কিছু নষ্ট রেডিও ঠিক করে ফেলতে পারতাম। এগুলোর একটা দিয়ে আমি টেক্সাসের ওয়াকো
রেডিও ধরতে পেরেছিলাম – আহা!&lt;/p&gt;
&lt;p&gt;এই একই রেডিওতে আমি স্ক্যনেকট্যাডি শহরের রেডিও স্টেশন, ডব্লিউ জি এন শুনতে পারতাম।
তখন আমরা বাচ্চারা – আমার বোন, আমা চাচাতো/খালাতো ভাইবোনেরা এবং আমাদের পাড়ার
বাচ্চারা – নিচতলায় বসে ‘ইনো ক্রাইম ক্লাব’ নামের একটা ধারাবাহিক নাটক শুনতাম। তখনকার
দিনে এটাই ছিল বাচ্চাদের ধ্যানজ্ঞান। তো যাহোক, একদিন আমি আবিষ্কার করলাম, এই নাটকটা
ডব্লিউ জি এন চ্যানেলে নিউইয়র্কের ১ ঘন্টা আগেই প্রচারিত হয়। কাজেই, অন্য সবাই শোনার ১
ঘন্টা আগেই আমি ল্যাবে বসে আমার রেডিওতে নাটকটি শুনে ফেললাম। আর যখন সবাই ‘ইনো
ক্রাইম ক্লাব’ শোনার জন্য নিচতলায় জড় হল আমি তখন বললাম, “দেখ, অমুক চরিত্রটা অনেকদিন
ধরেই নাটকে আসছে না, আমি বাজি ধরে বলতে পারি আজ সে এসে বিপদ থেকে উদ্ধার করবে।”&lt;/p&gt;
&lt;p&gt;দুই সেকেন্ড পরেই, বুপ-বুপ, সেই চরিত্রটা চলে এল! আর আমার ভবিষ্যতবাণী নিয়ে সবার মধ্যে
একটা তোলপাড় হয়ে গেল। পরে আমি আরো দু-একটা ভবিষ্যতবাণী করলাম। আর তাতেই তারা
বুঝে গেল যে নিশ্চয়ই কোন একটা চালাকি আছে – আমি নিশ্চয়ই কোনভাবে আগেভাগে জেনে
ফেলেছি। পরে আমি ওদের সব খুলে বললাম।&lt;/p&gt;
&lt;p&gt;তারপরে কি হল, নিশ্চয়ই বুঝতে পারছেন। তারা আর ১ ঘন্টা দেরি করে নাটক শুনতে রাজী নয়।
তারপর থেকে তারা সবাই দোতলায় আমার ল্যাবে এসে ভাঙ্গাচোরা রেডিওতে ‘ইনো ক্রাইম ক্লাব’ শুনত।&lt;/p&gt;
&lt;p&gt;ওই সময়ে আমরা একটা বড় বাড়িতে থাকতাম; এই বাড়ীটা আমার দাদু তাঁর ছেলেদের দিয়ে
গিয়েছিলেন এবং তাঁর ছেলেদের বাড়ি ছাড়া আর তেমন কোন সম্পদ ছিল না। বিশাল এই কাঠের
বাড়িটার চারপাশে আমি তার টানিয়েছিলাম আর সব ঘরেই প্লাগ ছিল। ফলে আমি সবসময়ই
দোতলায় ল্যাবে রাখা রেডিও শুনতে পারতাম।  আমার একটা লাউডস্পিকারও ছিল – পুরোটা
না, হর্ন ছাড়া বাকি অংশটা ছিল।&lt;/p&gt;
&lt;p&gt;একদিন আমি এয়ারফোনটা কানে লাগিয়ে তারসাথে লাউডস্পিকারটা কানেকশন দিতেই একটা
মজার জিনিস আবিষ্কার করলামঃ আমি স্পিকারে আঙ্গুল রাখলাম, সাথেসাথে তার শব্দ এয়ারফোনে
শুনতে পেলাম; তারপর স্পিকারে আঙ্গুল দিয়ে আঁচড় কাটলাম, সেই শব্দও এয়ারফোনে শুনতে
পেলাম। তারমানে, স্পিকারও মাইক্রোফোনের মত কাজ করতে পারে। এমনকি এরজন্য ব্যাটারীও
দরকার হয়না। স্কুলে যখন আমরা আলেক্সান্ডার গ্রাহাম বেলকে নিয়ে কথা বলছিলাম, তখন আমি
এই পরীক্ষাটা সবার সামনে করে দেখিয়েছিলাম।&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/ঠাট্টা-করছেন-তাই-না-০২/"&gt;আগের পৃষ্ঠা&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;(চলতে পারে)&lt;/p&gt;
</summary><category term="বাংলা"></category><category term="অনুবাদ"></category><category term="ঠাট্টা করছেন তাই না ফাইনম্যান?"></category><category term="Bangla"></category></entry><entry><title>Publication Quality Subfigure in Inkscape</title><link href="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/" rel="alternate"></link><updated>2014-09-28T10:57:00-07:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2014-09-28:blog/publication-quality-subfigure-in-inkscape/</id><summary type="html">&lt;p&gt;From Wikipedia, the free encyclopedia:&lt;/p&gt;
&lt;blockquote&gt;
Inkscape is a free and open source software vector graphics editor.
Its goal is to implement full support for the Scalable Vector
Graphics (SVG) 1.1 standard. It also supports various other formats
for Import/Export.&lt;/blockquote&gt;
&lt;p&gt;Using &lt;a class="reference external" href="/projects/publication-quality-graphs-matlab/"&gt;PlotPub&lt;/a&gt;, you can create publication quality figures using MATLAB.
However, it does not support sub plots yet. Here, I am going to show you how to
create publication quality subfigures using
&lt;a class="reference external" href="http://www.inkscape.org/"&gt;Inkscape&lt;/a&gt; and &lt;a class="reference external" href="/projects/publication-quality-graphs-matlab/"&gt;PlotPub&lt;/a&gt;.&lt;/p&gt;
&lt;div class="contents topic" id="contents"&gt;
&lt;p class="topic-title first"&gt;Contents&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference internal" href="#generating-eps-files-using-plotpub" id="id1"&gt;Generating EPS files using PlotPub&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#combining-eps-files-using-inkscape" id="id2"&gt;Combining EPS files using Inkscape&lt;/a&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="reference internal" href="#import" id="id3"&gt;Import&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#annotate" id="id4"&gt;Annotate&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#export" id="id5"&gt;Export&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="reference internal" href="#downloads" id="id6"&gt;Downloads&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="generating-eps-files-using-plotpub"&gt;
&lt;h2&gt;&lt;a class="toc-backref" href="#id1"&gt;Generating EPS files using PlotPub&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;So, finally, you have nailed it. After months (seconds) of
extreme-hard-work (scratching-your-head), you have just got this
state-of-the-art, ground-breaking result. You have shown that
instantaneous power of an induction motor can be expressed as a product
of instantaneous voltage across and instantaneous current through the
motor ;). Now it is time to publish the result and let the world know
who is the boss :D.&lt;/p&gt;
&lt;p&gt;So, you grabbed your computer and generated three EPS files (plotV.eps,
plotI.eps and plotP.eps) using PlotPub (download the MATLAB script from
the downloads section):&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_plotV.png" /&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_plotI.png" /&gt;
&lt;/div&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_plotP.png" /&gt;
&lt;/div&gt;
&lt;p&gt;Now that you have three separate figures, the question is, how to
combine them into one. No worries, Inkscape covers you.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="combining-eps-files-using-inkscape"&gt;
&lt;h2&gt;&lt;a class="toc-backref" href="#id2"&gt;Combining EPS files using Inkscape&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a class="reference external" href="http://www.inkscape.org/en/download/"&gt;Download&lt;/a&gt; and install Inkscape
on your computer. The installation should be easy. But if you need,
&lt;a class="reference external" href="http://wiki.inkscape.org/wiki/index.php/Installing_Inkscape"&gt;help&lt;/a&gt;
is closer than you think.&lt;/p&gt;
&lt;div class="section" id="import"&gt;
&lt;h3&gt;&lt;a class="toc-backref" href="#id3"&gt;Import&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;To start, open Inkscape and click the &lt;strong&gt;File &amp;gt; Import&lt;/strong&gt; menu. A dialog
box will appear. Browse your file system to select the voltage figure
(plotV.eps) file and click &lt;strong&gt;Open&lt;/strong&gt;. Make sure the import settings look
like the following.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_import_settings.png" /&gt;
&lt;/div&gt;
&lt;p&gt;Click &lt;strong&gt;OK&lt;/strong&gt; to complete the import. If your figure looks too small, you
can change the zoom level from the bottom-right of your Inkscape window:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_zoom.png" /&gt;
&lt;/div&gt;
&lt;p&gt;Similarly, import plotI.eps and plotP.eps.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="annotate"&gt;
&lt;h3&gt;&lt;a class="toc-backref" href="#id4"&gt;Annotate&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Choose the &lt;strong&gt;Select and transform object&lt;/strong&gt; tool from the left toolbar:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_select_tool.png" /&gt;
&lt;/div&gt;
&lt;p&gt;and select any one of the figures. Now you should
be able to move the figure by dragging-and-dropping or by pressing the
arrow keys. Now move the figures to arrange them one beneath the other.
To align the figures, select them all then click &lt;strong&gt;Object &amp;gt; Align and
Distribute&lt;/strong&gt; menu. Now select &lt;strong&gt;Align right sides&lt;/strong&gt; from the toolbox on
the right hand side:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_align_right.png" /&gt;
&lt;/div&gt;
&lt;p&gt;Now let's add labels to the figure. To add text, select &lt;strong&gt;Create text
and edit objects&lt;/strong&gt; from the left toolbox:&lt;/p&gt;
&lt;div class="figure align-center"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_edit_text.png" /&gt;
&lt;/div&gt;
&lt;p&gt;and click on the voltage plot and type &lt;strong&gt;(a)&lt;/strong&gt;. Now increase the font
size from the toolbox:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_font.png" /&gt;
&lt;/div&gt;
&lt;p&gt;Similarly create &lt;strong&gt;(b)&lt;/strong&gt; and
&lt;strong&gt;(c)&lt;/strong&gt; labels and put them on current and power plots. When you are
done, your figure should look like the following.&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_combined1.png" /&gt;
&lt;/div&gt;
&lt;p&gt;At this stage, it is a good idea to save your work. Click &lt;strong&gt;File &amp;gt;
Save&lt;/strong&gt;, provide a file name, choose &lt;strong&gt;Inkscape SVG (*.svg)&lt;/strong&gt; as file
type and click &lt;strong&gt;Save&lt;/strong&gt;.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="export"&gt;
&lt;h3&gt;&lt;a class="toc-backref" href="#id5"&gt;Export&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;To export your figure as an EPS file, select &lt;strong&gt;File &amp;gt; Save a Copy&lt;/strong&gt;
menu. Make sure you select &lt;strong&gt;Encapsulated PostScript (*.eps)&lt;/strong&gt; as the
file type and click &lt;strong&gt;Save&lt;/strong&gt;. &lt;strong&gt;Encapsulated PostScript&lt;/strong&gt; dialog box
will appear. Make sure your options look like:&lt;/p&gt;
&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/images/inkscape_tutorial_EPS_options.png" /&gt;
&lt;/div&gt;
&lt;p&gt;and click OK. This will create and EPS file containing three figures
combined. Easy, right?&lt;/p&gt;
&lt;p&gt;To export a PNG file, click &lt;strong&gt;File &amp;gt; Export Bitmap&lt;/strong&gt; menu, the &lt;strong&gt;Export
Bitmap&lt;/strong&gt; dialog will appear. Select &lt;strong&gt;Drawing&lt;/strong&gt; tab from the &lt;strong&gt;Export
Area&lt;/strong&gt;, enter 600 as &lt;strong&gt;dpi&lt;/strong&gt; and choose a proper file name and location,
and hit &lt;strong&gt;Export&lt;/strong&gt;. A PNG image will be created.&lt;/p&gt;
&lt;/div&gt;
&lt;div class="section" id="downloads"&gt;
&lt;h3&gt;&lt;a class="toc-backref" href="#id6"&gt;Downloads&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;The download package contains the MATLAB script, the EPS files and the
SVG files.&lt;/p&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;&lt;a class="reference external" href="//masumhabib.com/blog/publication-quality-subfigure-in-inkscape/source/inkscape_tutorial_source.zip"&gt;Source files&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Inkscape is a very powerful tool that can be used to modify&amp;nbsp;anything and
everything of your figure. To do that, you first need to ungroup the
figure. Select the figure you want to modify and then press Ctrl+Shift+G
multiple times to ungroup everything. Now you should be able to
add/edit/move any object in the figure. Click ...&amp;nbsp;no, wait, that is
enough for today.&lt;/p&gt;
&lt;p&gt;Good luck with your Nobel prize though :-D.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Last update: 12:18 PM, September 28, 2014.&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
</summary><category term="Publication Quality Graphs"></category><category term="Inksape"></category><category term="How To"></category></entry><entry><title>Publication Quality Graph v1.3 released</title><link href="//masumhabib.com/blog/publication-quality-graph-v1-3-released/" rel="alternate"></link><updated>2014-09-23T22:38:00-07:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2014-09-23:blog/publication-quality-graph-v1-3-released/</id><summary type="html">&lt;div class="figure"&gt;
&lt;img alt="" src="//masumhabib.com/pages/projects/publication-quality-graphs-matlab/images/plotpub-1.4/plotMarkers.png" /&gt;
&lt;/div&gt;
&lt;p&gt;I am pleased to announce the release of the Publication Quality Graphs
v1.3. It is a free and open source MATLAB library for
creating&amp;nbsp;beautiful, publication quality figures&amp;nbsp;from instantly generated
MATLAB figures or saved MATLAB fig files. This easy to use library can
export figures in EPS, PDF, JPEG, PNG and TIFF with adjustable
resolution.&lt;/p&gt;
&lt;div class="section" id="what-s-new-in-v1-3"&gt;
&lt;h2&gt;What's New in v1.3?&lt;/h2&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Several bugs are fixed including marker spacing.&lt;/li&gt;
&lt;li&gt;New options for axis color, axis line width, tick direction, tick
length, minor ticks, legend box, legend text color etc.&lt;/li&gt;
&lt;li&gt;New, more appealing default look.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;div class="section" id="download"&gt;
&lt;h2&gt;Download&lt;/h2&gt;
&lt;ul class="simple"&gt;
&lt;li&gt;Please visit the&amp;nbsp;&lt;a class="reference external" href="/projects/publication-quality-graphs-matlab-v1-x/"&gt;project
page&lt;/a&gt; for
tutorial, documentation and download.&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
</summary><category term="Publication Quality Graphs"></category></entry><entry><title>How to Install the Boost Library with MPI and without Root Access</title><link href="//masumhabib.com/blog/how-to-install-the-boost-library-with-mpi-and-without-root-access/" rel="alternate"></link><updated>2014-03-04T11:54:00-08:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2014-03-04:blog/how-to-install-the-boost-library-with-mpi-and-without-root-access/</id><summary type="html">&lt;p&gt;&lt;strong&gt;UPDATE-1:&lt;/strong&gt; For Boost v1.56.0,
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;boost_1_56_0/tools/build/v2/user-config.jam&lt;/span&gt;&lt;/tt&gt; is not used by the build
system, use &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;boost_1_56_0/project-config.jam&lt;/span&gt;&lt;/tt&gt; instead.&lt;/p&gt;
&lt;p&gt;Boost is huge collection of C++ libraries. It is complementary to the
standard C++ library. Like all other libraries, you'll need root access
to install the Boost library on Unix and Unix like systems. If you are
not the system admin, you can compile and install it in your home
folder. In this tutorial I'll show how to compile and install Boost in
your home directory without root access.&lt;/p&gt;
&lt;p&gt;Boost library has a C++ wrapper (&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;boost::mpi&lt;/span&gt;&lt;/tt&gt;) for lower level MPI
routines. By default, the MPI libraries are not enabled in boost. In
this tutorial, we will discuss how to enable and compile &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;boost::mpi&lt;/span&gt;&lt;/tt&gt;
or any other libraries that needs compilation.&lt;/p&gt;
&lt;p&gt;In this tutorial I assume that you are familiar with command line and
GNU/Linux. The following procedure should be similar in other Unix like
operating systems.&lt;/p&gt;
&lt;p&gt;Download the latest version of boost source code from
&lt;a class="reference external" href="http://www.boost.org/users/download/"&gt;here&lt;/a&gt;, put it under
&lt;tt class="docutils literal"&gt;/home/username/src&lt;/tt&gt; folder and untar the archive.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; ~/src
tar -xvf boost_1_55_0.tar.gz
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;A new folder named &lt;tt class="docutils literal"&gt;boost_1_55_0&lt;/tt&gt; will be created. To configure
boost for your host/cluster, change directory to &lt;tt class="docutils literal"&gt;boost_1_55_0&lt;/tt&gt; and
use &lt;tt class="docutils literal"&gt;bootstrap.sh&lt;/tt&gt; command.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="nb"&gt;cd&lt;/span&gt; boost_1_55_0
./bootstrap.sh --help
./bootstrap.sh --show-libraries
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Here, the &lt;tt class="docutils literal"&gt;./bootstrap.sh &lt;span class="pre"&gt;--help&lt;/span&gt;&lt;/tt&gt; command will show you a help
message and &lt;tt class="docutils literal"&gt;./bootstrap.sh &lt;span class="pre"&gt;--show-libraries&lt;/span&gt;&lt;/tt&gt; all available
libraries you need to compile.&lt;/p&gt;
&lt;p&gt;In order to install Boost in your home directory, use &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;--prefix&lt;/span&gt;&lt;/tt&gt;
option for &lt;tt class="docutils literal"&gt;bootstrap.sh&lt;/tt&gt;. You can enable or disable libraries using
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;--with-libraries&lt;/span&gt;&lt;/tt&gt; or &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;--without-libraries&lt;/span&gt;&lt;/tt&gt; options, respectively.&lt;/p&gt;
&lt;p&gt;To build Boost with MPI, use:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;./bootstrap.sh --prefix&lt;span class="o"&gt;=&lt;/span&gt;/home/username/usr --with-libraries&lt;span class="o"&gt;=&lt;/span&gt;mpi
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;If you want to build everything issue the following command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;./bootstrap.sh --prefix&lt;span class="o"&gt;=&lt;/span&gt;/home/username/usr --without-libraries&lt;span class="o"&gt;=&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;To compile &lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;boost::mpi&lt;/span&gt;&lt;/tt&gt;, we need to find out the MPI wrapper for C++
compiler (&lt;tt class="docutils literal"&gt;mpic++&lt;/tt&gt;). The &lt;tt class="docutils literal"&gt;mpic++&lt;/tt&gt; script comes with MPICH2 (and
probably with OpenMPI) library. To find the path of &lt;tt class="docutils literal"&gt;mpic++&lt;/tt&gt;, issue
the following command:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;$ which mpic++
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;In standard GNU/Linux installations, &lt;tt class="docutils literal"&gt;mpic++&lt;/tt&gt; is located at either
&lt;tt class="docutils literal"&gt;/usr/local/bin&lt;/tt&gt; or &lt;tt class="docutils literal"&gt;/usr/bin&lt;/tt&gt;. To build MPI add full path to
&lt;tt class="docutils literal"&gt;mpic++&lt;/tt&gt; or just &lt;tt class="docutils literal"&gt;mpic++&lt;/tt&gt; at the end of
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;boost_1_55_0/tools/build/v2/user-config.jam&lt;/span&gt;&lt;/tt&gt; file:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c1"&gt;# MPI&lt;/span&gt;
using mpi : /usr/bin/mpic++ &lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;or,&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c1"&gt;# MPI&lt;/span&gt;
using mpi : mpic++ &lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Configuration is done, let's make and install it:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;./b2 install &lt;span class="p"&gt;|&lt;/span&gt; tee install.log
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;the log will be saved in install.log file so that you can go back andcheck if something goes wrong.&lt;/p&gt;
&lt;p&gt;Boost libraries will be installed in &lt;tt class="docutils literal"&gt;/home/username/usr/lib&lt;/tt&gt; and the
header files will be installed in &lt;tt class="docutils literal"&gt;/home/username/usr/include/boost&lt;/tt&gt;
folder.&lt;/p&gt;
&lt;p&gt;Include boost in your program using:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="c1"&gt;#include &amp;lt;boost/mpi.hpp&amp;gt;&lt;/span&gt;
&lt;span class="c1"&gt;#include &amp;lt;boost/serialization/string.hpp&amp;gt;&lt;/span&gt;
&lt;span class="c1"&gt;#include &amp;lt;boost/serialization/access.hpp&amp;gt;&lt;/span&gt;
&lt;span class="c1"&gt;#include &amp;lt;boost/serialization/split_free.hpp&amp;gt;&lt;/span&gt;
namespace &lt;span class="nv"&gt;mpi&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; boost::mpi&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;etc. To compile your program, you will need to add
&lt;tt class="docutils literal"&gt;&lt;span class="pre"&gt;-I/home/username/usr/include&lt;/span&gt;&lt;/tt&gt; option while invoking the compiler.&lt;/p&gt;
</summary></entry><entry><title>Leaving Arch Linux for Raspbian on RPi</title><link href="//masumhabib.com/blog/leaving-arch-linux-for-raspbian-on-rpi/" rel="alternate"></link><updated>2012-09-30T22:52:00-07:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2012-09-30:blog/leaving-arch-linux-for-raspbian-on-rpi/</id><summary type="html">&lt;p&gt;I am done with &lt;a class="reference external" href="http://archlinux.org"&gt;Arch Linux&lt;/a&gt;. I love the
simplicity of Arch. I love &amp;quot;The Arch Way.&amp;quot; I love the pacman package
manager. But the arch guys change things too often. It is too bleeding
edge for me. I had enough. I have removed it from my laptop, my wife's
laptop and from my &lt;a class="reference external" href="http://raspberrypi.org"&gt;Raspberry Pi&lt;/a&gt; (RPi).&lt;/p&gt;
&lt;p&gt;About a year ago, I came across Arch Linux. I went to their website,
read their introduction, and fell in love with &amp;quot;The Arch Way.&amp;quot;
Afterwards, I removed ubuntu from my laptop and installed arch following
their beginners' guide. I learned a ton about linux during the
installation. I got it right at the first attempt. I enjoyed being in
charge of everything on my computer.&lt;/p&gt;
&lt;p&gt;But it cost me too much time. Every now and then after a system update
one or two package would break, something would not work, some too much
up-to-date software would contain so many bugs that those become
unusable.&lt;/p&gt;
&lt;p&gt;While I was keeping my own machine quite up-to-date by updating
two/three times a week, I was not updating my wife's laptop that
frequently. As a result, I forgot that they have moved &lt;tt class="docutils literal"&gt;/lib&lt;/tt&gt; to
&lt;tt class="docutils literal"&gt;/usr/lib&lt;/tt&gt; and that if you are not careful enough you could break your
system. Murphy's law was correct, I was not careful enough and I broke
the system. It took me a few hours of wrestling with the system
involving &lt;tt class="docutils literal"&gt;chrooting&lt;/tt&gt; from an ubuntu live system. At this point, I
thought that arch was taking too much time. After that I just removed
arch from our laptops and installed ubuntu.&lt;/p&gt;
&lt;p&gt;A few weeks back, I was able to break the &lt;a class="reference external" href="http://archlinuxarm.org"&gt;Arch Linux
Arm&lt;/a&gt; running on my RPi that hosts this
website. I was upgrading from soft-float kernel to latest hard-float
kernel featuring the turbo mode. Apparently, my &lt;tt class="docutils literal"&gt;/boot&lt;/tt&gt; partition was
not mounted by default and so while upgrading the system, the firmware
and the kernel was not updated but all the libraries were updated. As a
result, I had hard-float enabled library and soft-float enabled kernel.
Moreover, I forgot about the &lt;tt class="docutils literal"&gt;/lib&lt;/tt&gt; and &lt;tt class="docutils literal"&gt;/usr/lib&lt;/tt&gt; stuff. Voila, I
broke my system. Unfortunately, this time I was not able to fix it. I
was not able to &lt;tt class="docutils literal"&gt;chroot&lt;/tt&gt; the RPi since I did not have an arm
hard-float kernel installed anywhere.&lt;/p&gt;
&lt;p&gt;The next story was short, I gave up. I installed raspbian in my RPi in
new SDCARD, moved my Wordpress installation to a it.&lt;/p&gt;
&lt;p&gt;I am not going back to Arch Linux, ever. I learned a lot of stuff from
it, but I don't need it anymore. I just can't afford the cost (time).&lt;/p&gt;
</summary></entry><entry><title>New website</title><link href="//masumhabib.com/blog/new-website/" rel="alternate"></link><updated>2012-08-25T17:40:00-07:00</updated><author><name>K M Masum Habib</name></author><id>tag:masumhabib.com,2012-08-25:blog/new-website/</id><summary type="html">&lt;p&gt;After a week of hard work, tweaking and searching for a perfect CMS,
finally, I am satisfied with my web server setup. The hardest part was
to decide on a CMS. After a lot of testing I have settled in Wordpress.
My web server is running well. Apache, MySQL and PHP are playing nice
together.&lt;/p&gt;
&lt;p&gt;My web server runs on a &lt;a class="reference external" href="http://raspberrypi.org"&gt;Raspberry Pi&lt;/a&gt;, a
credit card sized, $25 computer based on ARM processor capable of
running GNU/Linux. It is a cute little computer sitting quietly at a
corner of my home consuming very little power. It is not a work horse
but its good enough for serving web pages for my wife and myself.&lt;/p&gt;
&lt;p&gt;Previously, I installed &lt;a class="reference external" href="http://archlinuxarm.org"&gt;Arch Linux Arm&lt;/a&gt; on
my Raspberry Pi. But later I installed
&lt;a class="reference external" href="http://www.raspbian.org/"&gt;Raspbian&lt;/a&gt;, a Debian based distribution
optimized for the Raspberry Pi.&lt;/p&gt;
&lt;p&gt;For the DNS service, I use free dynamic DNS provided by
&lt;a class="reference external" href="https://www.dnsdynamic.org"&gt;DNSdynamic&lt;/a&gt;. If everything works out I
am going to register my own domain name for this website.&lt;/p&gt;
&lt;p&gt;As I said, the hardest part was finding a perfect CMS for me. I have
tested Joomla, Drupal and Wordpress. Initially I was inclined to Joomla
since I used it &lt;a class="reference external" href="http://teacher.buet.ac.bd/masum_habib"&gt;before&lt;/a&gt;. But
after some testing I found that it is easy to modify wordpress themes
and I can control everything and anything I like. So, here I am with my
shining new website generated by wordpress with a customized theme.&lt;/p&gt;
&lt;p&gt;This is a brief history of this website. I am planning on writing some
tutorials on how to set up Raspbian/Debian, Apache, MySQL, PHP,
wordpress ... the whole webserver. So, stay tuned.&lt;/p&gt;
</summary></entry></feed>