Tuesday, May 12, 2009
Today's hard disks mostly have 500 gigabits per square inch and the above hints that 1Tb is the upper limit here. This is called the data density barrier.
But wait, there may be a way to break the barrier. A new scheme of data-recording is being studies (mainly in Segate). The new technology is HAMR, Heat Assisted Magnetic Recording.
The main problem with traditional ferromagnetic materials are their unstability in high data density. But, there exists some other material which can hold stability of the data bits. They can hold magnetization in spots just a few nanometers across.
Then why are we using cobalt alloy instead of those materials? Because, recording on such material requires a very large magnetic field. This is a problem, such large magnetic field cannot be used inside a hard disk. If we could change magnetic field directions of the single data bit areas on our will, the problem would have been solved.
This is where HAMR comes to rescue. Study showed that if the area is heated up first, data can be recorded with small magnetic field! In HAMR, the bit area is heated up with tightly focused light sopt. Sounds like a problem solved? Not fully really. Another challenge comes in when we try to heat up a single bit area with light. Light's diffraction limit prevents lenses from focusing it down to less than half of its wavelength. So, the lower limit here is around 200nm with the best lenses around.
“One of the main issues is to be able to deliver an adequate amount of light energy into a small spot size,” says Sakhrat Khizroev, an electrical engineering professor at the University of California, Riverside
Segate designed a recording-head which is reported to be able to concentrate light onto spots just 70nm wide.
Other technologies are also competing for a role in future hard-disk drive recording. Khizroev, for example, is making lasers for a HAMR disk that focus power on 30-nm spots. He deposits aluminum films on semiconducting diode lasers and then etches tiny apertures in the film to focus the emitted light. The technique, which he says has generated commercial interest, can be pushed to 10 nm or even less.
Meanwhile, hard-disk maker Hitachi Global Storage Technologies, in San Jose, Calif., is working on bit-patterned media. The idea is to create isolated islands of magnetic material on a nonmagnetic disk to serve as bits. Instead of hundreds of grains, each bit could then contain just a few magnetic grains, which stay strongly coupled, or even one grain, so they don’t flip their magnetization due to heat. Bit-patterned media could even be combined with HAMR.
Which of these technologies will eventually replace present-day magnetic recording is anyone’s guess.
IEEE Spectrum March 2009
Online edition of the article available at:
Sunday, February 15, 2009
Most public-key cryptography based system uses RSA. In RSA, a message is encrypted with a publicly available key and decrypted with a secret key, which is mathematically related with the public key. This is proven to be an effective one and being used successfully.
But, in future, RSA (and similar) cryptography may not survive. The reason is Quantum Computing. Researchers are optimist to built practical Quantum Computer within next 10/15 years. Now, the question is, how Quantum Computer can be a threat to RSA.
Quantum Computers uses Qubits (instead of bits of classical computing) for computations. A Qubit is essentialy an atom showing quantum mechanical behavior. Like normal bit, Qubits can be used to represent 0/1 by up or down spin of the atom. But, Qubit has the advantage of quantum superposition. A classical bit has exact probability (0.5) to be in the state 0 or 1. But, Qubit in quantam mechanics has a probability distribution function of any value between them in a given time. In short, at any given time:
- n bits can be one of 2^n states
- n Qubits can be in upto 2^n states simultaneously.
This can be a great advantage for parallel computing. And, that would shorten the time needed to break a strong 1024-bit RSA code from billions of years to a matter of minutes (though not in all cases, but still this is a threat)
Using larger sized key may do sometimes. Fortunately, not all types of cryptography are vulnerable. There are four types of schemes that are immune to quantum computing:
- Hash based signature scheme
- Error correcting code scheme
- Multivariate public-key cryptosystems
- Lattice system scheme (still research ongoing)
For the time being, our systems are safe. But after 10/20 years we may need new schemes or use primenumbers consisting of thousands of digits for RSA.
Time will say, but seems in future there are good research and contribution potentials in the field of cryptography.
Tuesday, March 27, 2007
BASIS (Bangladesh Association of Software & Information Services), the largest representative trade body of Software and ITES industry in Bangladesh, is organizing this mega exposition from 28th March -1st April, 2007 at Bangladesh-China Friendship Conference Centre, Dhaka.
IT Innovation Search Program AABISHKARER KHOJE is organized by Bangladesh Association of Software & Information Services (BASIS) as a part of the BASIS SOFTEXPO 2007.
One of the Top Ten Innovative Projects of Bangladesh is selected for IT Entrepreneurship Development Program Basis SoftExpo 2004, Dhaka.
Short Listed Projects :
1.Tele-Control Over Large Geographical Area
2.Voice Activated Electronic Device
3.RUET's First Intelligent Robot
4.Voice and Visual Command Controlled Robot
5.Secured Personal Information Access System Using Telephone
6.A/V Broadcast System of Cable TV
7.TV Over LAN
8.Home Security System
9.Multi Speaker Detector/ Separator
10.Simulation of 8085 Assembly Language Programming Kit
And we are glad to announce that our project Voice Activated Electronic Device is ranked as 2nd .
Our team members are:
1. Khaled Mahmud - CSE L4/T2 - 0105025
2. Humayun Arafat Sagar – CSE – L4/T2 - 0105023
3. Naznin Fauzia Laboni – CSE – L4/T2 -0105014
4. A.F.M. Nooruzzaman – CSE – L4/T2 - 0105027
5. Inaba Bhuiyan – CSE – L4/T2 - 0105029
So, we are getting a stall in the SOFTEXPO-2007 to present our project to the entrepreneurs and interested IT personals.
The fair is open for all.
Thursday, March 01, 2007
After landing your first IT job
To thrive and survive in a new career, first and foremost, you need skill to get the job done, eagerness to demonstrate the ability to learn new stuff and quality to apply the learning. People and communication skills are also essential to showcase your capability. And your out-of-college skill alone may not be enough to ride in corporate-highway. Positive attitude, good communication, professionalism, sense of humor etc will play a key role in your success. There is always room to improve and a few how-to-get-it-right things are mentioned here.
- After landing in a job, first couple of days, make it high priority getting settle down with cubicle, work station, network access, HR-Paper works etc.
- If company offers sessions such as new-hire-orientation, ergonomic classes, and HR-Benefits' briefings, do not miss them. Collect all brochures or notes and read them to make your decisions.
- Identify the key people or team members that you would be working with. Whoever you meet with keep a positive attitude, look in the eyes of that person, introduce yourself politely with a smile.
- After introductory Hi-Hello days are over, someone in the team, will give you an overview about the projects in hand. You might not be able to capture all the knowledge transferred to you, so get a pen and paper ready to take notes before you go for such session with a peer or manager.
- Before start writing code you might want to look into, if there is any, source code management system or version control system(such as CVS, Perforce, VSS etc) which is the repository of the source codes for the projects. This will help you to find the existing approved/project code that has been written by others. Also it might provide you some clues to solve a new problem that you've been trying for last few days since you've joined.
- It's a good idea to ask your manager or peer whether the team follows any specific coding guide lines or development practices that you're not aware of.
- In first few months (say first three) people usually won't expect you to do a critical project, all by yourself. Though it would be great if you can do it. For a good first-hand impression, you need to work hard to demonstrate the skills that you've mentioned in your resume. If you've said that you know programming C language well, people would expect you understand most aspects of C language. Remember your learning capability is the key to success in your job. What really matters to your manager/supervisor far more than anything else, is your basic technical skill and ability to understand new technology quickly. So make sure, while company's money will pay your bills / fills your wallet, you take time to learn and contribute to the company. Do not worry even if it costs few extra hours on top of regular business hours. Moving forward, this definitely will pay off.
- First few days/weeks spend as much time as possible to understand system that you'd be working with. But do not show too much seriousness to your peer. Just relax and learn the projects while making most out of it. If all the applications you're assigned to work run on unix only and you never have used UNIX, do not get nervous, take little time to learn few basic UNIX operating system command first. Then, if needed, learn advance stuff. Do not just sit down because you never used UNIXes. Go some extra mile, If you never have done linux , install linux at your home and do practice, if need to be break it and rebuild. The bottom line: try to get a handle as much as possible within short period of time. Even if you've found yourself in the middle of nowhere do not panic. Remember first few days is not getting job done, but to learn what you need to do for the job and familiar with tools and techniques that you'll be using. If every one uses VI/VIM editor and you are not familiar with any other editors in UNIX, get your feet wet with VI. Do not read manual only do it hands-on.
- Do not keep asking silly/easy questions to your peers at office. It's good to ask/clarify a question and you should not be afraid doing so. But for simple queries you can always take advantage of google/wikipedia. For instance, if you're looking for differences between xterm and vt100 terminal emulator you probably would be able to get the answer in few clicks at google searching. Asking too many silly questions will leave an impression that you're not analytical or thoughtful. Also it might well advance show that you're a very junior person before even you've a chance to show your ability. Remember in the usenet, people always want you to go through the existing archive before asking questions. Same here, do your own home work, before asking simple questions. That way even if you ask silly ones you'd be able to grasp the depth.
- If you think that it would be better to learn some stuff, ask your boss whether is it ok to buy a book or online subscription such as safaribookonline / elementk or other sources (such as short courses offered by some institution say Berkeley extension).
- If you'd like to get noticed quickly, take initiative. If there is anything that you could lend a hand, do not hesitate to bring it to the attention to your boss. Ask him what is his goal for the team for next few months and let him know your strengths in areas where you feel you could fill void on top of your day-to-day job responsibility.
- Do not allow recurring mistakes to happen repeatedly or regular basis. If lead developer ask you to indent your code properly, try to follow it. Make sure you do not get same warning from your superior for same thing again and again. It will create a very poor impression about your work-ethics. If you really think the suggestion does not make sense, try to come up with alternative ideas. But be confident enough that your ideas have solid base, and in line with industry standard or at the least follow current standards.
- If this is your first job you might not have a fat wallet. Still every now and then try to join with a peer for lunch. It does not have to be in regular basis. It will help build relationship not only as friend but also as team. Remember you do not need to pay for your colleague's lunch unless you want to. And no one expect here that you pay for his/her lunch, even it is some one of opposite sex. If the company has video game console, pool/billiard, foosball facility try to enjoy it with a peer or join with a group. That way you will not feel lonely or left alone. Always think yourself as part of the group and integrate yourself. If you're shy, it might be hard to make friends. But there are some easy techniques how to break ice. Find out some online resources for this matter.
- If you're not 100% sure about the outcome of anything, do not try to correct a senior person how to do it. Just a simple example, if a senior person is trying to see all the files in a directory of linux system, he simply typed ls, do not jump on suggesting right way that he should have typed ls -lart. There is possibility that he might have already made an alias for his command to do so.
- Do not visit porn/adult/offensive sites using your computer at office or at home using office laptop. Some companies do not mind but others are very restrictive regarding offensive material. It could even infect virus in your computer. You probably do not end up at the source of virus across the company network.
- Do not install third party tools in your office computer w/o knowing the policy for such provisions. Do not install pirated software in your office laptop or desktop.
- Keep your personal e-mails personal. Means use a third party account such as (gmail/yahoo) for your personal emails. Because most cases your company owns your email box. Though they won't intrude your mail box, but there is no guarantee.
- Do come up with new ideas in your job. Remember the idea behind companies like Google, Cisco, Yahoo, Sun Microsystem all were (the ideas behind) incubated at Stanford University by the graduate students while doing research/graduate thesis. Find out ways to do things differently and efficiently.
- If you've decided to leave the company, do not start using your sick-leaves in a hurry. Do not stock up you home desk with company's stationery. By any chance if you do not like your job, leave with dignity and in a graceful and professional manner. If possible send a nice note to everyone, that you're leaving and use an email address do they need to contact with you again. Remember you might need some of these people in future for reference purpose.
- Maintain a professional attitude but do not be too phony in a casual setting.
- Keep in touch with the latest technology in your area of interest/work. Pay attention to blogs, technical journals.
- Do not use middle finger in pointing something.
- Do not stick any political logo/political picture in your cubicle.
- Do not use a pirated/illegal/restricted copy of software at your office computer. Say your boss has bought a software with single user license. Do not use the key to activate same copy for you, even if it allows you to do so. This is a violation of software licensing.
- Try to avoid speaking your own language with a peer in front of other team mates who does not speak same.
- Limit visiting online sites frequently which are not directly related to your office purpose. Do not click on spam email links to see what's been sent. It might open up a can of porn sites, that might leave you an embarrassing situation especially when you'd be unable to close your browsers.
- If not needed, do not talk about politics and religion. Do not talk some one's sexual orientation(gay/lesbian/bi
- If you build up intimate relationship with someone, if it's a woman, remember ... against her will is against the law.
- Do not keep saying 'pardon me', 'excuse me' , 'I'm sorry' repeatedly and on every occasions.
- Do not nod to yes with everything from your supervisor or other team members or other departments. In one of my jobs, in a role some what close to sys-admin, I used to say yes whoever request anything. This creates a miserable situation in time management and getting core things done. Before saying yes, try to analyze the situation. Also you supposed to get to-do items mainly from your boss. So take cautions when you say yes.
- Never ask/talk about other salaries, and don't disclose yours unnecessarily.
- Always maintain a sense of good humor, but do not be funny/sarcastic all the times. Do not always take comments personally unless it was really meant to hurt you, such as 'Dude, what the f***ing code you've written, that has broken everything'. If this is not the type of code you always write, take it easy.
- During weekend/after hours do not take a outside friend to use company facilities, such as Gym, Hot tub etc, unless there is a provision to do so. Whenever in confusion check the rules with HR/Facilities for guests.
- Just before earning announcement, sometime company executives send confidential emails to employees about the summary of earnings and future forecast. Do not forward those emails to a friend asking him to buy stock as you already know the rosy details of the earnings before it disclosed to share holders.
- Do not work lot of extra hours without producing solid results. This would show that you work hard but not smart.
- Do not misuse copier-printer-phone for personal purpose. That's been said, do not waste 1 hour to go out for copying/printing. Make a balance between personal use and official use.
- Always maintain a mild tone when you're in command mode. For instance, instead of telling some one ... I've told you to do this. Have you done that? You could rephrase this as ... Do you've a chance to look into the issue? Remember being polite won't cost you anything. You still probably would receive the same answer but with win-win situation, even if the answer is negative.
- Get along with others, especially, if you're a low performer and unable to show visibility through your work. It will at least help you in the long run professionally and technically.
- keep learning new stuff, and stay on top of your academic/job related matters. If you know some areas better keep a blog or join a group where you can contribute to it through online. This will pay off in your current job as well as any future endeavors. Not to mention this will bring both money and honey in no time. People always respect someone who knows his/her areas better.
- If this is your first job, first thing you need to put on shelf is your shyness. Being polite is good, but being shy will keep you in the bay from promotion and team work. At back-home if you're shy, people may not care about it. But here in North America, it could develop an impression that you're not able to communicate and co-operate in a team environment.
- Before communicating through e-mails or answering phone calls in office try to get familiar with online netiquette and phone etiquette. There are thousands of free online resources that could help you mastering in this arena. If you'd like to learn about online etiquette, A good place to start at RFC 1855(written in simple English, even non technical people can understand). In general, remember few rules:
- Understand different email attributes such as cc, bcc, urgent flags etc.
- Communicate with short sentences and with clarity. Always try to speak to the point before explaining it details.
- Do not send an email written in all capital letters.
- Always check spelling and grammar of your email. Now a days almost all mail clients have built-in checker.
- Do not send a MB attachment with an email to clog the mail traffic. If possible upload it to an internal server and send the link to your audience.
- In all cases, if possible, prefer plain-text message over html mail
- Try your best effort not to send typical formatted emails, or configuration files/source code through email. You should not assume that everybody is using same mail client as you do. The person who will execute your formatted source code might not get the same compile/run time error/success that you have had, because of the extra characters embedded in it. It may even create some non-desirable outcome.
- If you need to use email signature use it line with company's policy for official email.
- If you meet new people in meeting or in hallway try to introduce yourself in a professional manner.
- If you're in a conference call and try to make point , make sure you tell you name before dropping your thoughts. Remember everyone might not recognize you from your voice.
- When requesting meeting or scheduling it through software, make sure you mention meeting agenda. Incase if you've an office in east and another in west coast in North America, try to mention the meeting time clearly such as PST, EST, PDT etc. Do not simply rely on outlook or other scheduler to tell your participants about the timing of the meeting, even though it will automatically do so.
- Activate your voice mail in your phone with a professional greeting.
- Do not solely depend on email, on time sensitive issues, say we are releasing this product at 5 PM. Your audience might not be checking emails to get this important message.
- Do not solely trust emails. People has personal setting for spam/virus filter. Your message might end up at junk email, depending on the setting of the user. For instance if a mail sent to All caps with subject such as. PROJECT LAUNCH AT 3PM, might go to junk. If the user set all caps subject to be considered as junk/spam mail.
- Do not forward sensitive confidential emails by electronic communication to people outside your office. Your electronic communication will speak against you if further problem arises down the road.
- If you're asking someone a question, and the person is not able to understand , try to rephrase it with different words keeping the main theme in it.
- Distribute meeting notes, know how to use conference calls, send meeting minutes right after the meeting.
Relationship with boss/manager/supervisor
- Try to keep an open and honest relationship with your boss.
- Do anything that could boost the image of your boss. For instance pick up an open source code, blend it with something so that it could be a good use for something. Even a process improvement work, or a new tool that your boss find helpful for the entire team. Just show your presence in a way that resemble 'I can do' attitude.
- Be proactive ..., do not always wait for someone to tell you to do something. But make sure you talk with superiors prior to implement some important changes, such as re factoring entire procedural code base with object oriented methodology.
- Remember to look at eyes of your boss while talking whether it's a man or woman. Looking eyes gives an impression that you're not nervous and are not hiding anything.
- If your peers or a members of another team ask you to do some stuff, do not allocate time or accept it w/o consulting your boss first. Remember you're working for your boss, not for others.
Explore company's benefit package:
- Explore all the benefits that your company offers. For instance Adobe Systems offers employees up to ten thousand US dollar per year for courses taken related to their positions in the company. You can even enroll in MBA course, provided your manager approves it. Not to mention that this is extra money on top of your salary.
- Take advantage of company software, laptops, communication/electronic devices, company sponsored (subsidized) product such as gymnasium membership, books, online membership etc.
- Do not go office, when you've severe flu, cold or other sick symptoms which is very noticeable as well as painful to you. Your benefits include some sick leave. Use it as appropriate, but do not misuse it especially Fridays in Summer.
- If possible always participate 401K or other ways (flexible saving accounts) to get some free money that company matches up to certain percentage based on your contribution. If you don't participate, you're simply losing this free money.
- Participate in Stock purchase plan. Usually you'd be able to sell them 15% higher on the day it's been transferred to you. Follow the guidelines and move on your discretion.
- Some companies allow employees to buy software with nominal fees. If you need to buy useful software, do so under this category.
- If the company offers subsidized Gym for your physical exercise, if possible take advantage of it to keep your health in shape.
- Always flush the toilet after using it. Think about a situation you're coming out of the toilet w/o flushing it and your boss is getting in there.
- If there is a bathroom, for people with disability, try not to use it if you've other options open.
- Plan ahead. Do not surprise people with anything other than good professional charisma. Do not just tell your boss that your mother has found a lovely sweet heart for you to marry in back-home and you want to leave next week. Be diplomatic for that unexpected situations.
- If you've a job that requires lot of travels, feel free to use a credit card that has cash-back bonus. This will add some extra savings in your pocket with no/little cost to you.
- If you donate money to any charity, explore the company's donation matching rules. It might add extra money to your donation from company's pocket up to certain limit without costing you anything.
Monday, February 19, 2007
Department of CSE, BUET is going to arrange CSE DAY 2007 on 20th February, 2007 (Tuesday). There will be a panel discussion, prize giving ceremony and cultural evening in CSE DAY 2007. Registration information and complete schedule for CSE DAY 2007 are given below.
Topic: Computer Science and Engineering in Global Context
Venue: BUET Auditorium Seminar Room
Time: 3:30 PM - 5:00 PM
Asar Prayer and Refreshments
Time: 5:00 PM - 5:30 PM
Prize Distribution and Cultural Program
Venue: BUET Central Auditorium
Time: 6:30 PM - 8:30 PM
Dinner will be provided at the end of the cultural program.
Alumni: Tk. 500 per person
Guest: Tk. 200 per person
Registration Deadline: 11:00 AM, 20th February 2007 (Tuesday)
Please contact the following persons for registration.
S.M. Shahriar Nirjon (email@example.com, 0152329623)
Lecturer, CSE, BUET
Md. Ehtesamul Haque (firstname.lastname@example.org, 01199032314)
Lecturer, CSE, BUET
Ahmed Khurshid (email@example.com, 01711355260)
Lecturer, CSE, BUET
Md. Abedul Haque (firstname.lastname@example.org, 01817602397)
Lecturer, CSE, BUET
Mohammad Moazzem Hossain (email@example.com, 01720179969)
Lecturer, CSE, BUET
Md. Yusuf Sarwar Uddin (firstname.lastname@example.org, 0152358680)
Assistant Professor, CSE, BUET
Dr. Md. Humayun Kabir (email@example.com)
Assistant Professor, CSE, BUET
Dr. Md. Mostofa Akbar (firstname.lastname@example.org)
Associate Professor, CSE, BUET
Hope to see you all in CSE DAY 2007.
Dept. of CSE
Monday, January 29, 2007
Right now, Bangla wikipedia is the largest Bangla language Website in the whole world. Among 250 languages of Wikipedia, it ranks 43rd in terms of total article count.
Over the last year, we have taken initiatives to draw more contributors to Bangla wikipedia. In December, volunteers of Bangla Wikipedia visited various Mughal-era monuments of Old Dhaka and took more than 300 pictures, all of which were released under a free license ... these photos are completely free and open for all to use, without any restrictions of copyrights. (Some of the photos can be seen at: http://commons.wikimedia.org
But we need more people, and this is where YOU can help.
*Check out a brief intro to Wikipedia at http://www.ragibhasan.com/wikipedia
*Please visit http://bn.wikipedia.org to check out the Wikipedia,
*Sign up for it at http://bn.wikipedia.org/wiki
*We also need a lot of photos of monuments and artifacts of the
country. You can upload any such photos (under a free license) at
[[Category:Bangladesh]] in the description form).
*And join our organization Bangla_Wiki\'s mailing list at
Why contribute? The world we live in is becoming digital, and in 50
years, anything not represented digitally will simply be forgotten or
Bangla is our own language, and we need to bring the knowledge of the
whole world to it, so that the children of tomorrow will have a source
to look into. Even more, we need to represent the culture and heritage
of Bangladesh and West Bengal ....
No one from other countries and cultures will come and save our own
history. No foreigner will write in Bangla about the glory of the
Lalbagh fort, or the game "Dariabandha". We need to do this ourselves.
So, this is a call to all Bangla speakers, please join the collective
effort to preserve Bangla language, culture, and heritage at the
Feel free to contact me about any question. Also, you can email the
mailing list at http://groups.yahoo.com/group
Dept of Computer Science
University of Illinois at Urbana-Champaign
201 N Goodwin Avenue
Urbana IL 61801
Wednesday, December 13, 2006
BUET CSE Department of Head Dr. Muhammad Masroor Ali gave us the permission to use the Microcomputer lab and allocated a Lab assistant to help us with the arrangement. Without his technical and moral support it was simply impossible to arrange and finish such an effective workshop in BUET. A special thank goes to our sir from all of us.
We also have 4 lecturers from CSE departments in the workshop. Md. Mostofa Ali Patwary, Chowdhury Sayeed Hyder, S.M. Shahriar Nirjon, Md. Abul Hassan Samee. Thanks to them also to inspire us.
In total we have 66 participants. Our Lab was fully occupied and few were standing and sharing chairs.
In the workshop we worked on the view of Open source and basic Linux installing, partitioning the hard disk and few frequent Linux commands. The program started at 2:30 pm sharp.
First, Mustafa Sarwar Nasif started with the basic question what the Open Source is. Then Khaled Mahmud continued the discussion interactively. Few questions came from the audience. And the discussion was up to 3:15 pm. Then Md. Ayub Ali and Sajid started with hard disk partitioning and basic Linux installation problems. After that, few Linux commands were introduced so that new users can easily start with the Linux. And we finished with the C/ C++ compiling and debugging examples for the junior batch of CSE, BUET.
In the last we have announced of an upcoming boot camp after the eid vacation. The date is not fixed yet. The date will be announced soon.
Our BUET OSN yahoo group link:
Thank u everybody in the workshop to make it a successful one. And the enthusiasm showed by all is praise worthy.