Today I attended Career Talk at CSE Festival BUET, 2013 and talked about “Entrepreneurship”, here is the slide
[slideshare id=17808792&doc=entrepreneurship-buetcsefestival-2013-130328101235-phpapp01]
Today I attended Career Talk at CSE Festival BUET, 2013 and talked about “Entrepreneurship”, here is the slide
[slideshare id=17808792&doc=entrepreneurship-buetcsefestival-2013-130328101235-phpapp01]
দুই একটা দিন আমার খুব খিদে লাগে, মনে হয় এক হাঁড়ি ভাত খেয়ে ফেলি,
খিদেটা যত বেশি পেটে তার বেশি কাজ করে মাথায়…
চেতনায় খিদে, বোধে খিদে, চিন্তায় খিদে, দুঃচিন্তায় খিদে –
খিদে ! খিদে !! খিদে !!! আপাদমস্তক শুধু খিদে, মনে হয় যেন
মাউস খেয়ে ফেলি, কিবোর্ড খেয়ে ফেলি, চিবিয়ে তছনছ করে ফেলি টিভির রিমোট ।।
বাম মস্তিষ্কে খিদে, ডান মস্তিষ্কে খিদে। আমি শুধু খাই খাই করি।
আমার খেতে ইচ্ছে করে আমার নিজের চোখ যা দিয়ে আমি স্বপ্ন দেখি,
মাথার ভেতর খাওয়ার ইচ্ছেগুলো হাসফাঁস করে।
আমার খেতে ইচ্ছে করে সকাল, আমি সময়কে খেতে চাই।
সকাল খেয়ে চুরমার করে আমি দুপুর করি। দুপুর খেয়ে আমি ডেকে আনতে চাই গহীন অন্ধকার রাত।
কোন কোন দিন রাত বাড়ার সাথে সাথে খিদে বাড়তে থাকে।
আমি আমার খিদের অনুভূতিকে খেতে চাই, তারপর সেই খাওয়ার অনুভূতিকে খাব।
আমি একটি টিভি চ্যানেল খুলে আমার খাওয়ার ইচ্ছেগুলো প্রচার করব টেকনাফ থেকে তেঁতুলিয়া।
আমি দুঃখ খাব,ভালোবাসা খেয়ে বাঁধাব বদহজম !
আমি কলহ খাব, ক্রোধ খাব, খাওয়া আমার অধিকার, আমার স্বাধীনতা।
————————-
মানচুমাহারা, ২৬/০৩/২০১৩
উৎসর্গঃ নিজেকে
Ref: jQuery Masonry
I think many of you face issue with bootstrap hidden. After a hidden tab is made visible many things doesn’t work for the new visible content as it’s container was hidden, jquery or other js library fails to get various property, example: height, width etc and even some common issues like scrollbar, masonry etc script doesn’t work. So I have a solution for this.
Here is the common declaration about a bootstrap based tab.
[code language=”html”]
<div class="tabbable"> <!– Only required for left/right tabs –>
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1" data-toggle="tab">Section 1</a></li>
<li><a href="#tab2" data-toggle="tab">Section 2</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab1">
<p>I’m in Section 1.</p>
</div>
<div class="tab-pane" id="tab2">
<p>Howdy, I’m in Section 2.</p>
</div>
</div>
</div>
[/code]
The above code will make a tabber based on BT. So now suppose in tab content pane we added Jquery Masonry. On first load the first tab will be visible and it’s masonry will work properly and 2nd tab will not as it should be actually but you will be unhappy about it and tear … 🙂 So here I am trying to how we can make this possible to work properly.
Let For adding masonry the html code for tab here.
[code language=”html”]
<div class="tabbable"> <!– Only required for left/right tabs –>
<ul class="nav nav-tabs">
<li class="active"><a masonid="mymasontabcon1" href="#tab1" data-toggle="tab">Section 1</a></li>
<li><a masonid="mymasontabcon1" href="#tab2" data-toggle="tab">Section 2</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab1">
<div id="mymasontabcon1">
<div class="itembox">hi there</div>
<div class="itembox">hi there</div>
<div class="itembox">hi there</div>
</div>
</div>
<div class="tab-pane" id="tab2">
<div id="mymasontabcon1">
<div class="itembox">hi there</div>
<div class="itembox">hi there</div>
<div class="itembox">hi there</div>
</div>
</div>
</div>
</div>
[/code]
Check in the above code for each anchor in li(tab) I added something like
masonid=”mymasontabcon1″ here attribute masonid is the div id of the div which we want to apply masonry. So suppose on dom ready we added masonry once.
Here we I did is calling the reload method of jquery masonry script but that need to be done after the tab’s container is shown. Otherwise we will not get proper output. I did this for each toggle of any tab, same thing is coded in the tab’s plugin included with BT.
[code language=”javascript”]
jQuery(document).ready(function(){
//this will certain happen when tab show method is done, that means we reload the masonry after the tab container is shown.
jQuery(‘body’).on(‘click.tab.data-api’, ‘[data-toggle="tab"], [data-toggle="pill"]’, function (e) {
e.preventDefault();
var mytarget = jQuery(this).attr(‘cbmasonid’);
//it is taken that already masonry is added in each tab.
jQuery("#"+mytarget).masonry(‘reload’ ); //here we call the reload method.
})
});
[/code]
সেই বনমানুষের কথা মনে আছে ?
সভ্যতার জ্ঞান ছাড়াই যে ফসল ফলিয়েছিল, অজান্তে যে চাষ করেছিল উর্বর মাটিকে।
আজ আমি এক মাটির কথা বলব, তার নাম বনমাটি।
সৃষ্টির শুরু থেকে প্রতিদিন সূর্য ছুঁয়ে যায় বনমাটিকে,
সূর্যের সাথে তার কোন বিশেষ সখ্যতা ছিল তা নয়, না ছিল পানির সঙ্গে !
তবু পানিতে ভিজেছিল বনমাটি অনেকবার ।।
বনমাটি অধির আগ্রহ নিয়ে অপেক্ষা করে, একদিন বীরদর্পে বনমানুষ হাজির হবে তার অকৃত্রিম লাঙ্গল নিয়ে,
সূর্যের প্রখর তাপ উপেক্ষা করে বনমানুষ হাজির হবে।
বাতাসের সাথে বনমাটির আজন্ম বন্ধুত্ব।
পৃথিবীর অজানা অচেনা অলিগলি পাড়ি দিয়ে বাতাস বনমাটির বার্তা বয়ে নিয়ে যায় সেই আদিম মানুষের কাছে।
ঠিক কবে তা কেউ জানে না, তবে একদিন বনমাটি আর বনমানুষের দেখা হয়। তাদের নতুন নাম হয় মাটি আর মানুষ।
১৪।০৩।২০১৩
উৎসর্গঃ পৃথিবীর প্রথম বনমাটিকে।
—————————-
বিঃ দ্রঃ এই লেখাটির নাম কেন শুধু বনমাটি হল তা প্রশ্ন করা যাবে না।
বিঃ দ্রঃ২ এই লেখার প্রথম পাঠক বন্ধু সুজিত মনের ভেতর বনমাটির যে অর্থ মজুদ করেছে তা ভুল।
বিঃ দ্রঃ৩ বানান ভুল গুলো নিজ গুনে ক্ষমা করবেন। স্যার হুমায়ুন আহমেদ যদিও তার একটা লেখায় বলেছেন, মানুষ হিসাবে ভুল করার অধিকার আমি রাখি।
IF you are working with linkedin api and parsing status and share items for any user or company page then this small code will help to parse the status or share text (comes from api) to 1. linkify 2. Tagging 3. Linkify hashtag
Please note that linkedin doesn’t support any native @ handle for it’s own user based but all @ handle are for twitter user.
[code language=”php”]
/**
* Linkify url and hashtag
*
* @param type string $status_text
* @return type string
*/
function linkify_linkedin_status($status_text){
// linkify URLs
$status_text = preg_replace(
‘/(https?:\/\/\S+)/’,
‘<a href="\1">\1</a>’,
$status_text
);
// linkify twitter users
//please note that any thing tagged using @ in linkedin takes to twitter
$status_text = preg_replace(
‘/(^|\s)@(\w+)/’,
‘\1@<a target="_blank" href="http://twitter.com/\2">\2</a>’,
$status_text
);
// linkify hash tags
$status_text = preg_replace(
‘/(^|\s)#(\w+)/’,
‘\1#<a target="_blank" href="http://www.linkedin.com/signal/?keywords=%23\2">\2</a>’,
$status_text
);
return $status_text;
}
[/code]
Q: jQuery TinyScrollbar doesn’t work in hidden container or tab or div : Why ?
Answer:
I think this is problem with jquery or as how the DOM works. When any parent div is hidden using css property display:block; jquery can not determine the width, height etc for any child element (example div) and this also happens for jquery tinyscrollbar plugin. I wasted almost 4/5 hours to get what the hell is happening as I was trying to add custom scrollbar in a tabber, tab tab tab … pa pa pa. But it was not working for inactive tabs (divs)
Solutions: After debuging jquerytinyscrollbar plugin’s js code I found
for method “update” it had code like
[code language=”javascript”]
oViewport[ options.axis ] = oViewport.obj[0][ ‘offset’+ sSize ];
oContent[ options.axis ] = oContent.obj[0][ ‘scroll’+ sSize ];
[/code]
and for hidden tab those oViewport.obj[0][ ‘offset’+ sSize ] and oContent.obj[0][ ‘scroll’+ sSize ] gives wrong height or width or just 0. So tha scrolling ratio doesn’t work which is calculated just after that like
[code language=”javascript”]
oContent.ratio = oViewport[ options.axis ] / oContent[ options.axis ];
[/code]
What we tried is we used another jquery plugin named jquery Actual which helps to get actual attributes of hidden element.
http://dreamerslab.com/blog/en/get-hidden-elements-width-and-height-with-jquery/
https://github.com/dreamerslab/jquery.actual/blob/master/jquery.actual.js
So add the jquery actual plugin first then include the jquery tinyscrollbar plugin. Now you need to be little brave to modify the jquery tinyscrollbar plugin.
So now update the update method like this
[code language=”javascript”]
oViewport[ options.axis ] = oViewport.obj[0][ ‘offset’+ sSize ];
oContent[ options.axis ] = oContent.obj[0][ ‘scroll’+ sSize ];
sSizecb = sAxis ? ‘width’ : ‘height’;
var oViewportaxis = $(oWrapper).children(‘div.viewport’).actual(sSizecb) ;
var oContentaxis = $(oWrapper).children(‘div.viewport’).children(‘div.overview’).actual(sSizecb) ;
oViewport[ options.axis ] = oViewportaxis;
oContent[ options.axis ] = oContentaxis;
[/code]
Download the full source code from here.
Also while adding tinyscrollbar I used some extra care, for inactive tabs more careeeeeeeeeeee.
Here are more sample codes if that helps ,
Please note that for making the scrollbar compatible with tinyscrollbar we need to add some extra div like “overview”
[code language=”javascript”]
jQuery(document).ready(function(){
//height is asumed 200px
//for scrollbar one, element id scrollbar1
jQuery(‘#scrollbar1’).children().wrapAll(‘<div class="viewport"><div class="overview"></div></div>’);
jQuery(‘#scrollbar1’).prepend(‘<div class="scrollbar"><div class="track"><div class="thumb"><div class="end"></div></div></div></div>’);
jQuery(‘#scrollbar1’).tinyscrollbarcb();
for scrollbar two , element id scrollbar2,
jQuery(‘#scrollbar2’).children().wrapAll(‘<div class="viewport"><div class="overview"></div></div>’);
jQuery(‘#scrollbar2’).prepend(‘<div class="scrollbar"><div class="track"><div class="thumb"><div class="end"></div></div></div></div>’);
jQuery(‘#scrollbar2’).children(‘div.viewport’).css({height:"200px"});
jQuery(‘#scrollbar2’).children(‘div.scrollbar’).css({height:"200px"});
jQuery(‘#scrollbar2’).children(‘div.scrollbar’).children(‘div.track’).css({height:"200px"});
jQuery(‘#scrollbar2’).tinyscrollbarcb();
});
[/code]
Thanks for reading.
Also Follow the Twitter hastag #shahbag
Bangladeshi Youth gathered at Shahbag for the 4th day and continuing for death penalty of all 1971 war criminals
http://storify.com/manchumahara/hang-the-1971-war-criminals-shahbag-dhaka-banglade
1.
মাঝে মাঝে ভালো থাকাটাও হয়ে যায় একঘেঁয়ে,
কোন বিরোধীদল নাই, তৃতীয় পক্ষ কিংবা তত্ত্বাবধায়ক নাই,
একটি বিশেষ গনতান্ত্রিক রাস্ট্রের এক মাত্র নাগরিক আমি ||
2.
বুয়া লাপাত্তা হবার শেষ দিন যা রান্না করেছিল তা আস্তে আস্তে হাড়ি কড়াইতে পঁচা শুরু করেছে। আমি প্রতিদিন সকালে ঘুম থেকে উঠে ঢাকুন তুলে তরকারী কতখানি পচলো সেইটা পরীক্ষা করি। প্রতিদিন একটু একটু গন্ধ বাড়ছে। আজকে দেখলাম তারকারীর উপাদান গুলোর চেহারা অচীন হয়ে গেছে। কোনটা আলু আর কোনটা গাজর বুঝা যাচ্ছে না। মানুষ মরে গেলে এমন করে একদিন একদিন পঁচে যায় আর অচেনা হতে শুরু করে।
3.
এর আগে যেদিন তালাচাবি আর মানি ব্যাগ নিয়ে ক্যাউ ক্যাউ করেছিলাম, সেদিন বাসায় ফিরে দেখলাম আসলে আমি তালা প্রথমে ঠিক অর্ডারে লাগাইছিলাম, পরে কি চিন্তা করে আবার ভুল করলাম, আসল ভুল ছিল মানি ব্যাগ ফেলে আসা।
4.
One day I will tell you a tale 🙂
বিঃ দ্রঃ ছোট বেলায় আমি ইংলিশ প্যান্ট পড়তাম
আজকের এই গল্প বিবর্ণ হবে আগামী কাল, আসবে ফিরে নতুন মোড়কে।
ভালোবাসা ফের বন্ধী হবে নতুন মলাটের গম গম গন্ধে, আহ 🙂
এই উচ্ছ্বাস কিংবা ‘আবারো হাসিমুখ’ শিরোনাম হবে অননুমোদিত উদ্ধত চিৎকারে !
বৃত্ত বন্ধী কিংবা গর্তবাসী নয়, বেঁচে থাকা হোক কেন্দ্র এবং পরিধির দ্বন্দ্ব মুক্ত।
…………………………।
২৫।০১।২০১৩ (ইং), মানচুমাহারা
কয়েকটি স্বস্তা চকোলেট, পাঁচ টাকার ঝালমুড়ি,
আর কমসহযোগীতামূলক ঠান্ডা বাতাস,
পথ এবং পথিকের সেই চিরচেনা গল্পের একটা ছোট খন্ড ।।
নতুন আর পুরানা দিনের সেতু বন্ধন খুঁজতে পথিকের স্বরবর্ণের ব-ফলা আর ব্যঞ্জনবর্ণের য-ফলা …
একীভূত হয়ে একটা বড় বাবুদের গল্প ফাঁদে !
পথের কাছে পথিক অচেনা নয়, কম চেনা ।
পথিকের কাছে পথ সবসময় অচেনা, নতুন , আহ, মায়ারে 🙁
পথা একা না পথিক একা ? যুদ্ধ ?
তৃতীয় পক্ষ বটবৃক্ষ, শান্তি চাই নইলে জাত যাবে তো !
………………।
২৭।০১।২০১৩, মানচুমাহারা
ডায়েরীর পাতাঃ