این سایت برای پیشرفت موسیقی کشور است و وابسته به هیچ گروه و سایت بیگانه نیست
ورود به انجمن
پلاگین معروف و پر کاربردی براتون گذاشتم که معمولا برای دو صدا کردن وکال استفاده میشه
و کاربردهای فراوانی دارد
براتون یه سیتی سایزر شبیه سازی ارگ رو گذاشتم که صداهای جالبی دارد
و میتوانید آن را در رایانه خودتان تجربه کنید
دانلود در ادامه
برای دریافت مطالب به ادامه مطلب بروید
برای دریافت مطالب به ادامه مطلب بروید
به ادامه مطلب بروید
برای نمایش تمامی آکوردها به ادامه مطلب بروید
نکته کلیدی برای جلوگیری از هک شدن وبلاگ:
۱- برای جلوگیری از هک شدن وبلاگمان اولین اقدام انتخاب یک پسوورد (رمز) مناسب است.
۲- در انتخاب رمز دقت داشته باشیم که رمزمان کوتاه نباشد(بیش از ۹ کاراکتر باشد).
۳- سعی کنیم رمزمان معنای خاصی نداشته باشد که دیگران از آن آگاهی داشته باشند(مانند شماره تلفن، شماره شناسنامه، شماره دانشجویی و …).
۴- در انتخاب رمز سعی کنیم از ترکیب حروف و اعداد استفاده کنیم.
۵- سعی کنیم تعدادی از حروف را بزرگ و تعدادی را بصورت کوچک در پسوورد وارد کنیم.
۶- سعی کنیم در رایانه هایی که توسط دیگران هم مورد استفاده قرار میگیرد(رایانه غیر شخصی) پسووردمان را به حافظه مرورگر نسپاریم(برای هر بار وارد شدن مرورگر از ما پسوورد بخواهد).
۷- در ساخت وبلاگ های گروهی حتما توجه داشته باشیم که حدود اختیارات دیگر نویسندگان را تعیین کنیم.
۸- در پست هایی که برای مشاهده آن ها رمز گذاری میکنیم یادمان باشد رمزی به غیر از رمز وبلاگمان قرار دهیم.
۹- به هر کسی اطمینان نکنیم و اگر رمز را بطور موقت در اختیار کسی قرار دادیم حتما مجددا رمز را تغییر دهیم.
۱۰- و به یاد داشته باشیم که هیچ وبلاگی ممکن نیست هک شود مگر اینکه خودمان اشتباهاتی داشته باشیم، پس به دنبال مقصر نباشیم.
هدف اين متن چيست؟
من به عنوان ويراستار «فايل اصطلاحات هکرها» و نويسندهی تعدادی از مطالب مشهور ديگر مانند آن، اغلب اوقات از مبتديان نامههايی دريافت میکنم که از من میپرسند(به اين مضمون) «من چگونه میتوانم ياد بگيرم که يک هکر ماهر باشم؟»
قبل از اين در سال ۱۹۹۶ من متوجه شدم که فهرست پرسشهای متداول يا متن اينترنتی ديگری که به اين سوال مهم توجه کند، وجود ندارد. بنابراين من نوشتن اين متن را شروع کردم و هماکنون بسياری از مردم آن را به عنوان يک منبع معتبر مطالعه میکنند.
با وجود اين من ادعا نمیکنم که تنها صاحب نظر در اين مورد هستم. اگر شما چيزی را که اينجا میخوانيد دوست نداريد، راهنمای خودتان را برای هکر شدن بنويسيد.
اگر شما اين مطلب را از منبع اصلی آن نمیخوانيد بهتر است بدانيد که نسخهی اصلی آن در آدرس http://htbh.meisam.infoاست
توجه: ليستی از پرسشهای متداول در انتهای اين متن وجود دارد. لطفاً آنها را قبل از آنکه برای من سوالی در مورد این متن بفرستيد، -دو بار- بخوانيد.
ترجمههای متعددی از اين متن وجود دارد:عربی،بلغارستانی، کاتالونيائی، چينی(سادهشده)، دانمارکی، هلندی، فارسی، فنلاندی، آلمانی، عبری، ایتاليايی، ژاپنی، لهستانی، پرتغالی(برزیلی)، اسپانيايی، ترکی، سوئدی و انگليسی
قابل ذکر است از آنجايی که اين متن گاهگاهی تغيیر میکند آنها ممکن است به درجات متفاوتی قديمی باشند.
شکل ۵ نقطه در داخل ۹ مربع که اين متن به وسيلهی آن تزئين شده است ،یک glider ناميده میشود. که طرح سادهای با تعدادی خاصيت تعجب آور در نوعی شبيه سازی رياضی به نام زندگی(Life) است. اين موضوع هکرها را برای سالهای زيادی مجذوب کرده بود
من فکر میکنم که آن نشانهی خوبی است برای آنچه هکرها شبيهش هستند:
مجرد، در اول با ظاهری کمی اسرارآميز اما يک دروازه به کل دنيا همراه با يک منطق پيچيده. مطالب بيشتری را در مورد نشان glider اينجا بخوانيد.
يک هکر کيست؟
فايل اصطلاحات هکرها شامل تعدادی از تعاريف برای واژهی هکر است. اکثراً شامل انجام کارها با مهارت فنی و اشتياق در حل مسائل و غلبه بر محدوديتها. ولی اگر شما میخواهید بدانید که چگونه یک هکر شوید، تنها دوتا از آنها به دردتان میخورد.
جامعهای با يک فرهنگ اشتراکی متشکل از برنامهنويسان خبره وجود دارد که پیشینهی آن به دهههای قبل و زمان اولين کامپيوتر کوچک و آزمايشهای اوليهی آرپانت بازمیگردد.
اعضای اين جامعه اصطلاح هکر را به وجود آوردند. هکرها اينترنت را ساختند. هکرها سيستمعامل يونيکس را تبديل به سيستمعاملی کردند که اکنون میبينيد. هکرها يوزنت را اداره میکنند. هکرها وب را به وجود آوردند. اگر شما بخشی از اين فرهنگ هستيد، اگر شما در آن همکاری کردهايد و اگر افراد ديگر اين جامعه شما را يک هکر میدانند، پس شما يک هکر هستيد.
نگرش هکرها محدود به فرهنگ هکرهای کامپيوتر نيست. افرادی وجود دارند که منش هکرها را در موضوعات ديگر مانند الکترونيک يا موسيقی نيز بکار میبرند.
درواقع شما میتوانيد آن را در بالاترين سطح از هر شاخهی علم يا هنر بيابيد.
هکرهای کامپيوتر اين روح اصلی را در موضوعات ديگر نيز به رسميت میشناسند و میتوان به آنها نيز هکر گفت.
- و برخی معتقدند ماهيت اصلی هکر بودن مستقل از واسطههای خاصی است که هکرها با آنها کار میکنند. اما بقيهی اين متن به مهارتها و منشهای هکرهای کامپيوتر و عقايد رايج در مورد فرهنگ اشتراکی که سرچشمهی واژهی هکر است، خواهدپرداخت.
گروه ديگری از مردم وجود دارند که با سروصدای زيادی خودشان را هکر مینامند. اما آنها هکر نيستند. آنها (اکثراً پسرهای نوجوان) افرادی هستند که به صورت غير مجاز به کامپيوترها دسترسی پبدا میکنند يا از سيستمهای تلفن سوء استفاده میکنند.
هکرهای واقعی اين افراد را کرکر(Cracker) مینامند و کاری به آنها ندارند. اکثر هکرهای واقعی معتقدند که کرکرها تنبل و بیمسئولیت بوده و چندان هم باهوش نيستند. اشيايی که میتوانند سيستمهای امنيتی را از کار بياندازند، شما را هکر نمیکنند، همانطور که «روشن کردن اتوموبيل با تکهای سيم شما را مهندس مکانيک نمیکند»، .
متاسفانه اکثر روزنامهنويسان و نويسندگان به اشتباه واژهی هکر برای معرفی کرکرها بهکار میبرند و اين کار هکرها را بسيار عصبانی میکند.
تفاوت اساسی اين است: هکرها چيزهايی میسازند، کرکرها آنها را خراب میکنند.
اگر شما میخواهيد هکر شويد، به خواندن ادامه دهيد. اما اگر میخواهيد کرکر شويد، گروه خبری alt.2600 را بخوانيد و آماده باشيد که به زودی در زندان کارمجانی انجام دهيد. آنوقت متوجه خواهيد شد که آنقدرها که فکر میکرديد، باهوش نبوديد. و این تمام چيزی است که من به شما در مورد کرکرها میگويم.
مرامنامهی هکری
۱-جهان مملو از مسائل جذاب است که در انتظار حل شدن به سر میبرند
۲-هيچ مسئلهای نبايد دو بار حل شود
۳-کسالت و بیگاری مضر هستند
۴-آزادی خوب است
۵-نگرش جايگزينی برای مهارت نيست
هکرها مشکلات را حل میکنند و سازنده عمل میکنند. آنها به آزادی و کمک داوطلبانهی دوجانبه اعتقاد دارند. برای پذيرفته شدن به عنوان يک هکر، شما بايد به نحوی رفتار کنيد مانند آنکه خودتان اين نوع نگرش را داريد و برای اینکه اینگونه رفتار کنید شما باید واقعاً به آن اعتقاد داشته باشيد .
اما اگر شما فکر میکنيد که نگرش اجتماعی هکرها فقط راهی برای پذيرفته شدن در اين فرهنگ است، شما اصل موضوع را فراموش خواهيد کرد. تبديل شدن به فردی که به اين موضوعات اعتقاد دارد، برای کمک به يادگيری و با انگيزه نگاهداشتن شما مهم است. مانند همهی هنرهای سازنده، بهترين راه برای استاد شدن پيروی کردن از خط فکری استاد است. نه فقط به صورت فکری بلکه همچنين به صورت حسی. يا مانند آنچه اين شعر مدرن Zen میگويد:
تا که راه یابی:
به استاد بنگر
به دنبالش باش
با او برو
از نگاه او بنگر
استاد شو
پس اگر شما میخواهيد يک هکر بشويد، جملات زير را تکرار کنيد تا به آنها اعتقاد پيدا کنيد.
۱-جهان مملو از مسائل جذاب است که در انتظار حل شدن به سر میبرند
هکر بودن بسيار هیجانانگیز است. اما اين نوع هیجان به تلاش زيادی نياز دارد و تلاش محتاج انگيزه است.ورزشکاران موفق انگيزهی خودشان را از لذتی که در غلبهی آنها بر محدوديتهای فیزیکی بدنشان در آنها به وجود میآيد، بدست میآورند. بهطور مشابه برای هکر بودن شما بايد انگيزهی اوليه را از حل مشکلات و افزايش مهارتها و تمرين هوش خود بدست آوريد.اگر شما جزو افرادی نيستيد که ذاتاً اينگونه فکر میکنند، برای هکر شدن بايد چنين شويد.
در غيراينصورت شما خواهيد ديد که انرژی هکری شما به وسيلهی عواملی مانند سکس و پول و مشهورشدن تضعيف میشود
(همچنين شما بايد ايمان به ظرفيت يادگيری خودتان را بيشتر کنيد -باور داشته باشيد که حتی اگر تمام چيزهايی که برای حل مسئله لازم است را ندانيد، اگر فقط از عهدهی قسمت کوچکی از آن برآييد و آن را ياد بگيريد، به اندازهای که برای حل مسئله لازم است ياد خواهيد گرفت- و به همين شيوه ادامه دهيد تا مسئله حل شود)
۲-هيچ مسئلهای نبايد دو بار حل شود
ذهنهای سازنده، منابع باارزش و محدودی هستند. آنها نبايد برای دوباره اختراع کردن چرخ تلف بشوند در حالی که مسائل جذاب بسيار زيادی وجود دارد.
برای رفتار کردن مانند يک هکر، شما بايد اعتقاد داشته باشيد که زمان فکر کردن هکرهای ديگر بسيار پرارزش است. بنابراين به اشتراک گذاشتن اطلاعات تقريباً يک کار اخلاقی است. مسائل را حل کنيد و سپس راهحل را منتشر کنيد تا هکرهای ديگر بتوانند به عوض دوباره حل کردن مسائل حل شده، مسائل جديد را حل کنند.
(لازم نيست معتقد باشيد که بايد همهی یافتههای خودتان را منتشر کنيد. گرچه هکرهايی که اين کار را انجام میدهند بيشترين احترام را در ميان هکرهای ديگر دارند. اين با معيارهای هکرها سازگار است که به اندازهی کافی از آنها بفروشيد تا بتوانيد ضروريات خود و نيازهای کامپیوترتان را تامين کنيد. خوب است که از مهارتهای هکری خودتان برای تامين خانواده يا حتی ثروتمند شدن استفاده کنيد. مادامی که وظيفهی خودتان را به هنرتان و هکرهای ديگر فراموش نکنيد)
۳-کسالت و بیگاری مضر هستند
هکرها (و به طور کلی افراد خلاق) هيچ وقت نبايد کسل بشوند يا کارهای سخت و تکراری انجام بدهند. زيرا در اينگونه موارد آنها به کاری که میتوانند انجام دهند (حل مسائل جديد) نمیپردازند و اين بیفايده بودن هر کسی را میرنجاند. بنابراين خستگی و مشقت نهفقط ناخوشايند بلکه واقعاً مضر هستند.
برای رفتار کردن مانند يک هکر، شما بايد کاملاً ايمان داشته باشيد که میخواهيد ناخودآگاه از چيزهای کسل کننده تا آنجا که ممکن است دور شويد.نه فقط به خاطر خودتان بلکه برای هر کس ديگر (مخصوصاً هکرها).
(يک استثنای بارز در اينجا وجود دارد. هکرها ممکن است بعضی اوقات کارهايی را انجام بدهندکه برای يک ناظر تکراری يا خسته کننده به نظر بيايد. به عنوان تمرين ذهنی يا به منظور به دست آوردن يک مهارت يا انجام دادن تمرينات مخصوص، شما به طرز ديگری نمیتوانيد عمل کنيد. اما شما در اين انتخاب آزادی داريد.- هيچ فرد اندیشمندی، نبايد به اجبار در وضعيتی قرار گيرد که او را کسل کند.)
۴-آزادی خوب است
هکرها به طور طبيعی مخالف استبداد هستند. هر کسی که بتواند به شما دستور بدهد، میتواند شما را از حل کردن مسائلی که مجذوبشان شدهايد باز دارد. و مسلماً به طوری که ذهنهای مستبد کار میکند، معمولاً دليلهای احمقانه و وحشتناکی برای چنين کاری پيدا میکنند. پس با روش استبدادی هر کجا که آن را يافتيد بايد مبارزه کنيد وگرنه شما و ديگر هکرها را خفه میکند.
(اين به معنای جنگ با تمام قدرتها نيست -کودکان بايد راهنمایی(تادیب) شوند، خلافکاران بايد محدود بشوند. يک هکر ممکن است موافق باشد که نوعی از قدرت را به منظور به دست آوردن چيزی که او میخواهد، بپذيرد. اما اين يک معاملهی آگاهانه و محدود است. آنجايی که فردی تسليم خواستههای ديکتاتور میشود، يک پيشنهاد نيست.)
ديکتاتورها در سانسور و پنهانکاری موفق هستند. آنها برای همکاریهای داوطلبانه و به اشتراک گذاشتن اطلاعات مزاحمت ايجاد میکنند. آنها فقط مشارکت در کارهايی را میپسندند که خودشان آن را کنترل کنند. پس برای رفتار کردن مانند يک هکر، شما بايد يک دشمنی ذاتی با سانسور، پنهانکاری، فريبدادن و استفاده از زور برای تحت فشار قرار دادن افراد مسئول را در خود پرورش دهيد و بر طبق این عادت عمل کنید.
۵-نگرش جايگزينی برای مهارت نيست
برای هکر شدن شما بايستی تعدادی از اين نگرشها را در ذهنتان توسعه بدهيد. اما کپی برداری محض از عقايد به تنهايی شما را هکر نمیسازد همانگونه که شما را قهرمان ورزشی يا ستارهی راک نمیکند. هکر شدن به هوش، تمرين، از خود گذشتگی و سختکوشی نياز دارد.
بنابراين شما بايد ياد بگيريد که به منش اتکا نکنيد و به هر نوع توانايی احترام بگذاريد. هکرها اجازه نمیدهند که ژستها وقت آنها را تلف کنند. اما آنها احترام زيادی برای توانايی قائلاند. مخصوصاً توانايی در زمينهی هکری. اما توانايی در هر کاری خوب است. توانايی در بدست آوردن مهارتهايی که افراد کمی میتوانند در آن زمينه به درجهی استادی برسند، خيلی خوب است و توانايی در مهارتهايی که مستلزم زکاوت، مهارت و تمرکز هستند بهترين است.
اگر شما به توانايی احترام بگذاريد، از توسعهی توانايیهای خود لذت خواهيد برد و سختکوشی و فداکاری بيشتر از مشقت به کاری مشتاقانه بدل خواهد شد. اين طرز فکر برای هکر شدن حياتی است.
مهارتهای بنيادی هکرها
۱-چگونه برنامه نوشتن را ياد بگيريد
۲-يکی از يونيکس های منبعباز را بدست بياوريد و ياد بگيريد که چگونه آن را بکار ببريد
۳-یاد بگيريد که چگونه از وب استفاده کنيد و HTML بنويسيد
۴-اگر زبان انگليسی شما خوب نيست، آن را ياد بگيريد
داشتن منش هکرها برای هکر شدن حياتی است اما مهارتها اهميت بيشتری دارند. منش جايگزينی برای مهارت نيست. مجموعهای از مهارتهای پايه وجود دارند که شما بايستی برای هکر شدن داشته باشيد. اين مهارتها با گذشت زمان، هنگامی که تکنولوژی مهارتهای جديدی را میسازد و مهارتهای قديمی را منسوخ میکند، به آرامی تغيير میکنند. در گذشته برنامهنويسی به زبان ماشين شامل این مجموعه بود و تا اين اواخر زبان HTML جزو این مهارتها نبود. اما اکنون بهوضوح شامل موارد زیر است:
۱-چگونه برنامه نوشتن را ياد بگيريد
البته اين يک مهارت پايهای برای هکرهاست. اگر شما هيچ کدام از زبانهای برنامهنويسی را بلد نيستيد، من به عنوان شروع پايتون را به شما پيشنهاد میکنم. پايتون با ظرافت طراحی شده و به خوبی مستند سازی شده است و نسبتاً ابتدایی است.
با وجود اينکه پايتون به عنوان اولين زبان برنامهنويسی برای یادگيری خوب است ولی تنها يک اسباب بازی نيست. پايتون خيلی قدرتمند و انعطاف پذير بوده و برای پروژههای بزرگ مناسب است. من يک ارزيابی از پايتون را با جزئيات کامل نوشتهام. منابع آموزشی خوبی در سايت پايتون در دسترس هستند.
جاوا نيز زبان خوبی برای آموزش برنامهنويسی است. جاوا از پايتون مشکلتر است ولی کدهای سريعتری توليد میکند. فکر میکنم به عنوان زبان دوم برنامهنويسی خیلی خوب باشد.
متاسفانه منابع پيادهسازی شرکت Sun هنوز اختصاصی هستند. به علت وجود يک مفسر منبعباز خوب برای جاوا اين امر چندان بحث زيادی به وجود نمیآورد. مشکل واقعی توابع کتابخانهای هستند که با زبان منتقل میشوند. توابع کتابخانهای منبعباز نسبت به توابع Sun ضعيفتر هستند. بنابراين اگر شما تصميم داريد که جاوا را ياد بگيريد، به عوض وابستگی به کد اختصاصی Sun با يک پيادهسازی منبعباز کار کنيد.
اما توجه کنيد که اگر تنها يک يا دو زبان برنامهنويسی را بلد باشيد، به مهارتهای يک هکر دست پيدا نخواهيد کرد يا حتی صرفاً يک برنامهنويس هم نخواهيد شد. شما بايد بياموزيد که بهطور کلی چگونه در مورد مسائل برنامهنويسی مستقل از هر زبانی فکر کنيد. برای اينکه يک هکر واقعی شويد، شما بايد به سطحی برسيد که بتوانيد با ارتباط دادن موضوعات موجود در راهنما به دانستههای خود، در طی چند روز يک زبان را ياد بگيريد. بنابراین شما بايستی چندين زبان کاملاً متفاوت را ياد بگيريد.
اگر شما بهطور جدی به برنامهنويسی بپردازيد، مجبوريد که زبان C که زبان هستهی يونيکس است را ياد بگيريد. زبان ++C خيلی شبيه C است. اگر شما يکی از آنها را بدانيد، ياد گيری ديگری چندان مشکل نخواهد بود. با وجود اين هيچ کدام از آنها بهعنوان اولين زبان برنامهنويسی برای يادگيری خوب نيستند. درواقع هرچه بيشتر از برنامهنويسی با زبان C اجتناب کنبد، بازدهی بیشتری خواهيد داشت.
زبان C بسيار کارآمد است و در استفاده از منابع سيستم بسيار صرفهجويی میکند. متاسفانه زبان C کارآیی خودش را با نياز به کدنويسی سطح پايين برای مديريت منابع سيستم (مانند حافظه) بدست میآورد. همهی کدهای سطح پايين پيچيده و مستعد باگ هستند و وقت زيادی را در مرحلهی اشکال زدايی به خود اختصاص میدهند. با کامپيوترهای امروزی و قدرتی که آنها دارند، اين معمولاً معاملهی خوبی نيست. بهتر است از زبانهايی استفاده کنيم که کمی وقت کامپيوتر را تلف کنند ولی از زمان شما بسيار مفيدتر استفاده کنند. مانند پايتون .
زبانهای برنامهنويسی ديگری که اهميت ويژهای برای هکرها دارندشامل Perl و LISP میشوند. Perl به دلیل کاربردی بودن ارزش يادگيری دارد. Perl به طور گستردهای در صفحات وب فعال و مديريت سيستمها استفاده میشود. بنابراين حتی اگر شما برنامهای به زبان Perl ننويسيد، بايد بتوانيد برنامههايی را که به زبان Perl نوشته شدهاند را بخوانيد. اکثر افراد از Perl در جایی استفاده میکنند که من به شما پایتون را توصیه کردم (خودداری از برنامهنويسی به زبان C در کارهايی که به امکانات C نيازی ندارد). شما نياز پيدا خواهيد کرد که کدهای نوشته شده توسط آنها را بخوانيد.
LISP به دليل ديگری ارزش يادگيری دارد. LISP به روشنفکری عميقی نياز دارد که پس از یادگیری آن را به دست خواهید آورد.اين تجربه شما را برنامه نويس بهتری خواهد کرد. حتی اگر چندان برنامهای با LISP ننويسيد. (شما به راحتی میتوانيد با نوشتن و تغيیر دادن محيط ويرايش Emacs تجربهی مقدماتی با LISP را بدست آوريد)
بهترين روش يادگيری همهی زبانهای گفته شده (پايتون، جاوا، ++C/C، پرل و LISP) است. اين زبانها علاوه بر اينکه مهمترين زبانهای برنامهنويسی در دنيای هک هستند، نمايانگر خط مشیهای متفاوت در برنامهنويسی نيز میباشند و هرکدام معلومات باارزشی به شما میدهند.
من نمیتوانم در اينجا دستورالعمل کاملی در مورد اينکه چگونه برنامه بنويسيد ارائه دهم. کتابها و دورههای آموزشی نيز چنين کاری نمیکنند. (بيشتر و شايد همهی هکرها خودشان مهارتهايشان را ياد گرفتهاند) برنامهنويسی يک مهارت پيچيده است. شما میتوانيد امکانات يک زبان برنامهنويسی -قسمتی از دانش مورد نياز برای برنامهنويسی- را از کتابها ياد بگيريد. اما طرز فکری که اينگونه اطلاعات را به مهارتهای کاربردی تبديل میکند، تنها به وسيلهی تمرين و کارآموزی بدست میآيد و اين يعنی ۱)خواندن کد و ۲)نوشتن کد.
يادگرفتن برنامهنويسی مانند يادگيری خوب نوشتن يک زبان طبيعی است. بهترين روش برای اين کار خواندن برنامههايی است که به وسيلهی استادان نوشته شده است. پس از آن سعی کنيد خودتان برنامههايی بنويسيد و دوباره خيلی بيشتر بخوانيد، کمی بيشتر بنويسيد، خيلی بيشتر بخوانيد... اين چرخه را ادامه دهيد تا زمانی که برنامههای شما قدرت و کارايی برنامههای نوشته شده نوسط استادان را بدست آورند.
سابقاً يافتن سورسکدهای خوب کار سختی بود. به دليل اينکه تعداد کمی کد منبع از برنامههای بزرگ برای خواندن و تغيير دادن در اختيار هکرهای تازهکار بود. اما اکنون اين وضعيت به طرز چشمگیری تغيير کرده است. نرمافزارهای منبعباز، ابزارهای برنامهنويسی و سيستمهای عامل (که همهی ّنها به وسيلهی هکرها تهيه شدهاند) اکنون به سادگی در دسترس هستند. که مرا به نوشتن مبحث بعدی ترغیب میکند.
۲-يکی از يونيکس های منبعباز را بدست بياوريد و ياد بگيريد که چگونه آن را بکار ببريد
من فرض میکنم که شما صاحب يک کامپيوتر شخصی هستيد يا به يک کامپيوتر شخصی دسترسی داريد. همهی کودکان امروزه يک کامپيوتر دارند. مهمترين قدمی که هر مبتدی در جهت بدست آوردن مهارت های هک میتواند بردارد، تهيهی يک نسخه از Linux يا BSD Unix، نصب کردن آن بر روی کامپيوتر خود و به کار بردن آن است.
درست است که سيستمعاملهای ديگری نيز به جز يونيکس وجود دارند اما آنها در قالب دودويی منتشر میشوند و شما نمیتوانيد سورس کد آنها را بخوانيد يا تغيير دهيد. سعی برای يادگيری هک بر روی سيستمهای دارای ويندوز، MacOS و يا هر سيستم منبع بستهی ديگر مانند تلاش برای یادگیری رقص در لباش شوالیه است .
تحت OS/X اين مسئله امکان پذير است اما فقط بخشی از این سيستم منبع باز است و به احتمال زياد شما را به بنبست خواهد کشاند و بايد مواظب باشيد که به کد اختصاصی اپل عادت نکنيد. اگر شما بر روی يونيکس تمرکز کنيد، با چشمان بسته نيز چيزهای مفيدی ياد میگيريد.
يونيکس سيستم عامل اينترنت است. شما میتوانيد بدون دانستن يونيکس از اينترنت استفاده کنيد. اما بدون داشتن درک درستی از يونيکس هرگز هکر اينترنتی خوبی نخواهيد شد. به همين دليل امروزه جامعهی هکرها شديداً يونيکس محور است. (اين موضوع همواره صادق نبوده و برخی از هکرهای قديمی از اين موضوع راضی نيستند.اما همزيستی بين يونيکس و اينترنت به قدری محکم است که حتی قدرت مايکروسافت هم نمیتواند جلوی آن را بگيرد.)
پس يک يونيکس را انتخاب کنيد. من خودم لينوکس را دوست دارم اما انتخابهای ديگری نیز وجود دارند. (شما میتوانيد همزمان لينوکس و ويندوز را بر روی سيستم خود اجرا کنيد) آن را ياد بگيريد، بکار ببريد و تغيير دهيد. به وسيلهی آن از اينترنت استفاده کنيد. سورس کد آن را بخوانيد و تغيير دهيد. شما ابزارهای برنامهنويسی بهتری به دست خواهيد آورد. که هر سيستم ويندوز در رويای بهدست آوردن آنهاست. (شامل C، LISP، Python و Perl) و اين شما را سرگرم خواهد کرد. و شما بدون آنکه متوجه شويد معلومات زيادی کسب خواهيد کرد و هنگامی که مانند يک استاد به مسائل نگاه کنيد به اين موضوع پیمیبريد.
برای بدست آوردن اطلاعات بيشتر در مورد يادگيری يونيکس Loginataka را ببينيد. شما ممکن است مايل باشيد که نگاهی نيز به «هنر برنامهنويسی در يونيکس» بياندازبد
برای بدست آوردن اطلاعات بيشتری در مورد لينوکس، سايت «لينوکس آنلاين» را ببينيد. شما میتوانيد از آنجا لينوکس را داونلود کنيد يا (يک ايدهی بهتر) يک گروه محلی از کاربران لينوکس را بيابيد که به شما در نصب لينوکس کمک کنند. از ديدگاه يک کاربر جديد لينوکس، همهی توزيعهای لينوکس بسيار به هم شبيه هستند.
شما میتوانيد منابع کمکی يونيکس برکلی را در http://www.bds.org بيابيد.
من يک متن در مورد اطلاعاتی که مبتديان برای کار با يونيکس و اينترنت لازم دارند نوشتهام.
اگر شما يک مبتدی هستيد من نصب هيچکدام (يونيکس و لينوکس) توسط خودتان را توصيه نمیکنم.برای نصب لينوکس، يک گروه محلی از کاربران لينوکس را پيدا کنيد و از آنها کمک بخواهيد.
۳-یاد بگيريد که چگونه از وب استفاده کنيد و HTML بنويسيد
اکثر دستاوردهای جامعهی هکرها کارهايشان را در پشت پرده انجام میدهند. آنها به کارکرد کارخانهها، ادارات و دانشگاهها کمک میکنند بدون آنکه تاثير قابل رويتی بر زندگی ديگران بگذارند. در اين ميان وب يک استثنای بزرگ است. سرگرمی بزرگ هکرها که حتی سياستمداران اعتراف میکنند که در حال تغيير دادن دنياست. به اين دليل (و دلايل زياد ديگر) لازم است بدانيد که با وب چگونه کار کنید.
اين بدان معنا نيست که فقط استفاده از يک مرورگر را ياد بگيريد. (هر کسی میتواند اين کار را انجام دهد) شما بايد HTML (زبان نشانه گذاری وب) را یاد بگیرید. اگر شما برنامهنويسی بلد نيستيد، نوشتن HTML به شما تعدادی عادت ذهنی میدهد که اين عادات به يادگيری شما درآينده کمک خواهد کرد. پس يک صفحهی خانگی درست کنيد و سعی کنيد که از XHTML که زبان دقيقتری نسبت به HTML سنتی است، بيشتر استفاده کنيد. (آموزشهای مقدماتی خوبی در اين زمينه وجود دارد. مانند اين)
اما صرفاً داشتن يک صفحهی خانگی شما را يک هکر نمیکند. اينترنت پر از صفحات وب است. اکثر آنها بیهدف، بیمحتوا، آشغال و آشغالهای بسيار جذاب هستند. يادتان باشد که محتوای تمام آشغالها يکسان است. (برای اطلاعات بيشتر در اين مورد صفحهی جهنم HTML را ببينيد)
برای مفيد بودن صفحهی شما بايد بامحتوا باشد. صفحهی شما بايد جالب باشد و/يا برای هکرهای ديگر مفيد باشد. اين موضوع ما را به بحث بعدی میکشاند.
۴-اگر زبان انگليسی شما خوب نيست، آن را ياد بگيريد
شخصاً به عنوان يک فرد انگليسی زبان آمریکایی قبلاً از اين پيشنهاد ناراضی بودم.چرا که ممکن بود به عنوان نوعی استعمارطلبی فرهنگی تلقی شود. اما افراد متعددی که زبانهای مادری ديگری داشتند از من خواستند که بگويم انگليسی زبان کاربردی فرهنگ هکرها و اينترنت است. شما بايد برای فعاليت در جامعهی هکرها آن را بدانيد.
در گذشته حوالی سال ۱۹۹۱ من ياد گرفتم که اکثر هکرهايی که انگليسی را به عنوان زبان دوم ياد گرفتهاند، حتی آنهایی که زبان مادری یکسانی دارند نيز آن را در بحثهای فنی بکار میبرند. من فهميدم که زبان انگليسی دايرهی لغات وسيعتری نسبت به هر زبان ديگری دارد و ابزار بهتری برای کار است. به همين دليل ترجمههای کتابهای تخصصی که به زبان انگليسی نوشته شدهاند زمانی که تمام کلمات آنها ترجمه میشوند، اغلب خوب نيستند.
لينوس توروالدز که يک فنلاندی است. کد لينوکس خودش را به زبان انگليسی توضيح داد (او تابحال هرگز به طرز ديگری عمل نکرده است). تسلط او به زبان انگليسی عامل مهمی در ايجاد يک جامعهی جهانی از توسعه دهندگان برای لينوکس بود. اين نمونه ارزش پيروی دارد.
وضع فرهنگ هکرها
۱-نرمافزار منبعباز بنويسيد
۲-به تست و اشکالزدایی نرمافزارهای منبعباز کمک کنيد
۳-اطلاعات مفيد را منتشر کنيد
۴-به انجام کارهای زيربنايی کمک کنيد
۵-در انتشار فرهنگ هکرها همکاری کنيد
مانند اکثر فرهنگهايی که مبتنی بر اقتصاد پولی نيستند، جامعهی هکرها بر پايهی شهرت و اعتبار استوار است. شما سعی میکنيد که مسائل جالب را حل کنيد اما اينکه آنها چقدر جالب هستند و اينکه راهحل شما واقعاً چقدر خوب است، موضوعی است که در آن فقط افرادی که از نظر فنی همسطح شما و بالاتر هستند میتوانند نظر بدهند. هنگامی که شما وارد بازی هکرها میشوید ياد میگيريد که مدارجتان را با -توجه به نظری که ديگران راجع به مهارت شما دارند- بالاتر از ديگران نگاه داريد. (به همين دليل شما يک هکر واقعی نمیشويد مگر آنکه هکرهای ديگر شما را هکر بنامند) اين واقعيت با تصويری از هکری به عنوان کاری در انزوا به فراموشی سپرده شده است.
همچنين با يک تابو در فرهنگ هکری(که البته در حال از بين رفتن است ولی کماکان وجود دارد) برخلاف پذيرفتن اينکه خود فرد يا اعتبار او در بين ديگران در انگيزهی فرد موثر هستند. انسان شناسان جامعهی هکرها را فرهنگ هدیه مینامند. شما اعتبار و مقام به دست میآوريد ولی نه به وسيلهی تسلط داشتن بر ديگران، زيبايی يا داشتن آنچه ديگران میخواهند. بلکه با بخشش مخصوصاً در اختيار ديگران قرار دادن خلاقيت و حاصل مهارتهای خود.
به طور کلی ۵ نوع کار وجود دارد که شما میتوانيد با انجام آنها در بين هکرها محبوبيت کسب کنيد:
۱-نرمافزار منبعباز بنويسيد
اولين(مهمترين و متداولترين) کار، نوشتن برنامههايی که هکرهای ديگر فکر میکنند جالب يا مفيد هستند و انتشار کد منبع آنها در ميان هکرهاست. (در گدشته ما به چنين کارهايی Free Software میگفتيم. اما اين اصطلاح مردم بسيار زيادی که نمیدانستند Free در اينجا به چه معنايی است را گيج میکرد. بنابراين اکثر ما (بر طبق آمار حاصل از محتوای صفحات وب، با حداقل نسبت ۲ به ۱) اکنون ترجيح میدهيم که ار اصطلاح نرمافزار Open Source استفاده کنيم)
محترمترين افراد در جامعهی هکرها افرادی هستند که برنامههای بزرگ و توانمند نوشتهاند که افراد بسياری به آن نرمافزارها احتياج دارند و آن نرمافزارها را در کل جامعهی هکرها منتشر کردهاند تا همهی افراد بتوانند از آن استفاده کنند.
۲-به تست و اشکالزدایی نرمافزارهای منبعباز کمک کنيد
همچنين کسانی که عهدهدار اشکاليابی و اشکالزدايی نرمافزارها میشوند نيز مفيد هستند. در دنيای امروزی ما ناگزیر به صرف بيشتر وقت توسعهی نرمافزارهايمان در مرحلهی اشکال زدايی هستیم. به همين دليل هر نويسندهی نرمافزار منبع باز به شما خواهد گفت که آزمايشگران خوب مرحلهی بتا (آزمايشگران مرحلهی بتا کسانی هستند که میدانند که چگونه علائم اشکال را دقيق توضيح دهند، محل اشکالات را به خوبی مشخص کنند و میتوانند با اشکالاتی که در نسخههای اوليه وجود دارد کنار بيايند و چند روش تشخيص محل عيب ساده را انجام بدهند) به اندازهی طلای هموزنشان ارزشمندند به قدری که حتی یکی از آنها میتوانند مرحلهی اشکال زدايی را از يک کابوس طولانی و خسته کننده را به يک دردسر عبرتآموز تبديل کنند.
اگر شما يک مبتدی هستيد، سعی کنيد که برنامهی در دست توسعه که مورد علاقهی شما باشد، پيدا کنيد و تلاش کنيد تا يک آزمايشگر مرحلهی بتای خوب باشيد. يک فرآيند طبيعی برای پيشرفت از کمک به آزمايش نرمافزارها تا اشکال زدايی آنها و از اشکال زدايی تا تغيير دادن آنها وجود دارد.
به اين ترتيب شما چيزهای زيادی ياد میگيريد و روابط خوبی با کسانی که در آينده به شما کمک خواهند کرد، پيدا میکنيد.
۳-اطلاعات مفيد را منتشر کنيد
يک کار خوب ديگر جمعآوری و انتشار اطلاعات مفيد و جالب در صفحات وب يا متونی مانند «مجموعهی پرسشهای متداول» و در اختيار ديگران قرار دادن آنها است. گردانندگان مجموعههای پرسشهای متداول بزرگ در زمينههای فنی، تقريباً به اندازهی نويسندگان نرمافزارهای منبعباز محبوبيت کسب میکنند.
۴-به انجام کارهای زيربنايی کمک کنيد
جامعهی هکرها (و به تبع آن توسعهی فنی مهندسی اينترنت) به وسيلهی داوطلبان پيشرفت میکند. کارهای ضروری و خسته کنندهی بسياری وجود دارند که برای ادامهی پيشرفت لازم است انجام داده شوند. مانند مديريت فهرستهای پستی، نظارت بر گروههای خبری، مديريت و نگهداری سايتهای بزرگ آرشيو نرمافزارها، توسعهی RFC ها و استانداردهای فنی ديگر نظير آنها.
افرادی که چنين کارهايی را به خوبی انجام میدهند، در بين ديگران بسيار مورد احترام قرار میگيرند. زيرا هر کسی میداند که اين کارها به مقدار زيادی وقت نياز دارند و به اندازهی بازی با کدمنبع نرمافزارها جالب نيستند. انجام چنين کارهايی نشانهی فداکاری افراد است.
۵-در انتشار فرهنگ هکرها همکاری کنيد
و بالاخره شما میتوانيد در انتشار خود فرهنگ هکرها مفيد باشيد. (برای مثال با نوشتن يک مقالهی دقيق و صحيح در مورد اينکه چگونه يک هکر بشويم ) شما هنگام شروع در موقعیتی نيستيد که بتوانيد چنين کاری را انجام بدهيد مگر آنکه برای مدتی در بين هکرها باشيد و به خاطر يکی از چهار شيوهی بالا مشهور شده باشيد.
جامعهی هکرها به طور مشخص رهبری ندارد. اما اين فرهنگ قهرمانها، پيشکسوتان، مورخان و سخنگويان خودش را دارد.اگر شما به مدت زيادی در بين هکرها باشيد، احتمالاً به يکی از اين گروهها خواهيد پيوست. اما مراقب باشيد:هکرها آشکارا پيشکسوتان خودشان را اذيت میکنند. پس مسلماً رسيدن به اين درجه از شهرت، بيشتر از تلاش برای بدست آوردن آن خطرناک است. شما بايد مراقب جايگاه خودتان باشيد و به جای تلاش برای رسيدن به شهرت کاری کنيد که اين موقعيت در مسير شما قرار گيرد. اين باعث پيشرفت شما خواهدشد و سپس در مقام خودتان متواضع و مهربان باشيد.
ارتباط بين هکر و نرد(Nerd)
برخلاف تصور مردم برای هکر شدن لازم نيست که يک نرد باشيد .گرچه اين سودمند است و اکثر هکرها در واقع نرد هستند. داشتن روابط اجتماعی خوب به شما کمک میکند که بر روی مسائل واقعاً مهم مانند فکر کردن و هکری تمرکز کنيد. به همين دليل اکثر هکرها عنوان نرد را برای خود انتخاب کردهاند و حتی اصطلاح غليظتر geek را به نشانهی افتخار به کار میبرند. اين راهی برای نشان دادن استقلال آنها از عرف معمول در جامعه است.
برای بحث گستردهتر در اين مورد صفحهی geek را ببينيد.
اگر شما میتوانيد بهخوبی بر روی هکری تمرکز کنيد تا يک هکر خوب باشيد و هم به زندگیتان برسید، اين خوب است. امروزه اين کار بسيار راحتتر از زمانی است که من يک مبتدی بودم (در دههی ۱۹۷۰).
امروزه برخورد هکرها با افراد مبتدی بسيار دوستانهتر است. همچنين تعداد افرادی که متوجه میشوند هکرها اغلب عاشقان خوب و همسردار هستند، در حال افزايش است.
اگر شما به دليل نرد بودن، به هکری علاقهمند هستيد، اين هم خوب است. حداقل شما مشکل تمرکز حواس نداريد. شايد شما هم بعداً از انزوا خارج شويد.
نکات مهم
دوباره میگويم برای هکر شدن شما ناچاريد که طرز فکر هکرها را يادبگيريد. کارهايی وجود دارند که شما هنگامی که در کنار کامپيوتر نيستيد، میتوانيد انجام بدهيد. اين کارها به هکر شدن شما کمک میکنند اما جايگزينی برای هکری نيستند (هيچ چيز ديگری نيست) اما اکثز هکرها اين کارها را انجام میدهند و احساس میکنند که اينها به نوعی به اساس هکری ارتباط دارند.
ياد بگيريد که زبان مادری خودتان را به خوبی بنويسيد. گرچه اين پندار عمومی که هکرها نويسندگان خوبی نيستند، وجود دارداما تعداد زيادی از هکرها (شامل تمام هکرهای ماهری که من میشناسم) نويسندگان بسيار توانايی هستند. داستانهای علمی-تخیلی بخوانيد و به بحثهايی در مورد داستانهای علمی-تخیلی بپيونديد (اين يک روش خوب برای آشنا شدن با هکرها و هکردوستان است).
يکی از شاخههای هنرهای رزمی را ياد بگيريد. شيوهی پرورش ذهنی که برای هنرهای رزمی لازم است، در بسياری از جهات با کاری که هکرها انجام میدهند، مشابه است. پرطرفدارترين شاخهها در ميان هکرها، هنرهای رزمی بدون سلاح هستند. مانند: نکواندو، کاراته، وينگ چون، آيکيدو و جوجيتسو. هنرهای شمشير بازی غربی و آسيايی نيز طرفداران قابل ملاحظهای دارند. در جاهايی که شليک با هفتتير قانونی است، اين شاخه نيز طرفداران زيادی از اواخر دههی ۹۰ پيدا کرده است. بهترين هنرهای رزمی برای هکرها آنهايی هستند که به پرورش ذهنی، تمرکز اعصاب و کنترل خود بيشتر از قدرت، ورزشگرايی و سختی جسمی اهميت میدهند.
مديتيشن را به طور منظم تمرين کنيد. Zen همواره در ميان هکرها محبوب است. (شما میتوانيد از Zen استفاده کنيد بدون اينکه مجبور شويد به مذهب جديدی روی بياوريد يا از مذهبی که داريد دست بکشيد.) سبکهای ديگر نيز مفيد هستند اما مراقب باشيد يکی از آن سبکهايی را انتخاب کنيد که نيازی به باور عقايد ديوانهوار نداشته باشد.
مهارتهای شنوايی خودتان را در زمينهی موسيقی توسعه دهيد. باد بگيريد که بتوانيد از نوع خاصی از موسيقی را درک کرده و از آن لذت ببريد. ياد بگيريد که چگونه يک ساز را خوب بنوازيد يا چگونه آواز بخوانيد.
مهارت خودتان را در جناس و بازی با کلمات بيشتر کنيد.
هر قدر که تعداد بيشتری از اين کارها را از قبل انجام بدهيد، استعداد ذاتی شما برای هکر شدن به همان اندازه بيشتر است. دليل انجام اين کارها به طور واضح معلوم نيست اما آنها به ترکيبی از مهارتهای نيمکرهی راست و چپ مغز ارتباط دارند که به نظر میآيد مهم باشد. هکرها بايد در لحظهای که به مسئلهای فکر میکنند، هم به تفکر منطقی قادر باشند و هم به نمودهای ظاهری مسئله توجه کنند.
زمانی که کار میکنيد، چنان با شور و شوق کار کنيد که انگار بازی میکنيد و چنان با دقت بازی کنيد که انگار کار میکنيد. برای هکرهای واقعی مرزی ميان بازی، کار، علم و هنر وجود ندارد. اين موضوعات با يکديگر ادغام میشوند تا يک سازندگی سطح بالاو مفرح به وجود آورند. شما نبايد به دامنهی کوچکی از مهارتها محدود بشويد.
گرچه معمولاً هکرها خوشان را به عنوان برنامهنويس معرفی میکنند اما اکثر آنها در زمينههای مرتبط نيز مهارت دارند. مديريت سيستم، طراحی صفحات وب و اشکال يابی سخت افزار کامپيوترهای شخصی موارد رايج هستند. يک هکر که مديريت سيستم را بر عهده دارد، به احتمال زياد در اسکریپت نويسی و طراحی صفحات وب مهارت دارد.
هکرها هيچگاه کاری را نصف و نيمه انجام نمیدهند. اگر آنها در زمينهای وقت صرف میکنند، حتماً تصميم گرفتهاند در آن زمينه بسيار خوب باشند.
و بالاخره چند کار که نبايد انجام بدهيد:
هرگز از نامهای مستعار احمقانه و پرزرقوبرق استفاده نکنيد
هرگز در جنگهای سرزنش ديگران در يوزنت (يا هر جای ديگری) شرکت نکنيد.
هرگز خودتان را يک ولگرد اينترنت (Cyber Punk) نناميد و هيچ گاه وقت خودتان را با کسی که چنين کاری را انجام میدهد، تلف نکنيد.
هرگز نوشتههای پر از غلط املائی و دستور زبانی را پست يا ميل نکنيد.
تنها چيزی که با انجام اين کارها به دست میآوريد، شهرت يافتن به عنوان يک احمق است. هکرها حافظهی طولانی مدتی دارند. ممکن است قبل از اينکه در ميان هکرها پذيرفته شويد، مجبور باشيد که سالها با سابقهی دسته گلهايی که به آب دادهايد، زندگی کنيد.
مشکلات ناشی از اسامی مستعار يا هويتهای مجازی نياز به شرح و توضيح بيشتری دارد:
پنهان کردن هويت خود پشت يک نقاب رفتار بچهگانه (و احمقانه)ی افرادی از قبيل کرکرها، قفلشکنان و گونههايی ديگر از زندگی سطح پايين است. هکرها هيچوقت چنين کاری انجام نمیدهند. هکرها با کارهايی که انجام میدهند، افتخار میکنند و دوست دارند که اين کارها با نام واقعی آنها پيوند بخورد. پس اگر شما نقابی بر چهره داريد، آن را برداريد. در ميان هکرها آن نقاب شما را فقط به عنوان يک بازنده معرفی خواهد کرد.
منابع ديگر
پل گراهام مقالهای به نام هکرهای بزرگ و مقالهی دیگری به نامدر حال تحصیل نوشته است که حاوی اطلاعات زيادی است.
Peter Seebach گردانندهی يک فهرست پرسشهای متداول در مورد هکرها است. اين پرسشها مخصوص مديرانی است که نمیدانند چگونه با هکرها رفتار بکنند.
مقالهای به نام «چگونه يک برنامهنویس بشويم» وجود دارد که يک مکمل عالی برای اين متن است. اين متن توصيههای با ارزشی در مورد کد نويسی، طرز فکر برنامه نويسان و چگونگی همکاری در يک تيم برنامهنويسی دارد.
همچنين من يک مقاله در مورد تاريخ جامعهی هکرها نوشتهام.
من مقالهای به نام The Cathedral and the Bazaar نوشتهام که حاوی توضيحات بسياری در مورد نحوهی کارکرد جامعهی لينوکس و جنبش منبعباز است. من همچنين در Homesteading the Noosphere مستقيماً به نتايج اين موضوع پرداختهام.
Rick Moen مقالهی فوقالعادهای در مورد اينکه «چگونه يک گروه کاربران لينوکس را اداره کنيم» نوشته است.
من با Rick Moen در نوشتن مقالهای به نام «چگونه سوالات خود را زيرکانه بپرسيم» همکاری کردهام. اين مقاله به شما کمک میکند سوالات خود را به روشی بپرسيد که راحتتر به جواب برسيد.
اگر شما به مطالبی در مورد چگونگی کارکرد کامپيوترهای شخصی، يونيکس يا اينترنت نياز داشتيد، مبانی کارکرد يونيکس و اينترنت را ببينيد.
اگر تصميم گرفتيد که نرمافزاری را منتشر کنيد يا الحاقيههايی برای نرمافزارهای مختلف بنويسید، اين راهنمای قدمبهقدم تمرين نحوهی انتشار نرمافزارها را دنبال کنيد.
اگر شما از شعرهای Zen خوشتان آمده، ممکن است مايل باشيد که Rootless Root: The Unix Koans of Master Foo را ببينيد.
س: آيا شما به من هکر شدن را ياد میدهيد؟
ج: از زمانی که برای اولين بار اين مقاله را منتشر کردم، هر هفته چندين درخواست از افراد مختلف دريافت میکنم که از من میخواهند مهارتهای هکری را به آنها ياد بدهم. ولی متاسفانه من وقت و انرژی کافی برای اين کار ندارم. پروژههای هکری خود من و مسافرتهايم به عنوان يک مدافع جنبش منبع باز، ۱۱۰٪ از وقت مرا میگيرد. حتی اگر وقت هم داشته باشم، هکری يک طرزفکر است و مهارتها را بايد خودتان ياد بگيريد.
شما خواهيد ديد که هکرهای واقعی همواره میخواهند به شما کمک کنند اما اگر از آنها بخواهيد که تمام چيزهايی را که در مورد هکری بلدند را به شما ياد بدهند، آنها به درخواست شما اعتنايی نخواهند کرد. اول سعی کنيد که مهارتهايی را بدست آوريد. نشان دهيد که در حال سعی کردن هستيد و اينکه شما توانايی آنرا داريد که خودتان ياد بگيريد سپس از هکرهای ديگر يک سوال مشخص بپرسيد.
اگر شما میخواهيد برای راهنمايی گرفتن به يک هکر ميل بزنید، نکاتی وجود دارد که بايد از قبل آنها را بدانيد:
اولاً ما متوجه شديم افرادی که در نوشتن نامههای خودشان کمتوجه هستند، معمولاً در فکر کردن نيز بیدقت تر از آن هستند که بتوانند يک هکر خوب بشوند. پس دقت کنيد تا کلمات را با املای صحيح بنويسيد و دستور زبان را درست به کار برده و از نشانهگذاری خوب استفاده کنيد. در غير اينصورت احتمالاً به درخواست شما توجهی نخواهد شد.
ثانياً هيچگاه درخواست نکنيد که جواب شما به آدرسی فرستاده شود که با آدرس ايميلی که شما از آن نامه را فرستادهايد، متفاوت است. افرادی که چنين کارهای را انجام میدهند، معمولاً کسانی هستند که از حسابهای دزديده شده استفاده میکنند و ما علاقهای نداريم که به دزدها کمک کنيم.
س: چگونه میتوانم شروع کنم؟
ج: بهترين روش برای آغاز رفتن به جلسات گروه کاربران لينوکس است. شما میتوانيد چنين گروههايی را در صفحهی اصلی اطلاعات لينوکس (LDP) پيدا کنيد. احتمالاً يکی از اين گروهها در نزديکی شما قرار دارد و شايد به يک کالج يا دانشگاه وابسته باشد. اگر از اعضای گروه بخواهيد، به شما يک لينوکس میدهند و مطمئناً به شما در نصب و راهاندازی آن کمک خواهند کرد.
س: چه وقت بايد شروع کنم؟ آيا سن من برای يادگيری بالاست؟
ج: در هر سنی که مشا قصد داريد شروع کنيد،يک سن خوب است. اکثر افراد در بازه سنی۱۵ تا ۲۰ سال علاقهمند میشوند ولی من استثنائاتی را در هر در دو جهت میشناسم.
س: چه مقدار طول میکشد تا من هکری را ياد بگيرم؟
ج: اين بستگی به مقدار هوش و پشتکار شما دارد. اکثر افراد اگر بر روی اين موضوعات تمرکز کنند، مهارتهای مورد انتظار را در طی ۱۸ ماه تا ۲ سال بدست میآورند. اما فکر نکنيد که تصور شما به همين جا ختم میشود. اگز شما يک هکر واقعی باشيد، مابقی عمرتان را به يادگيری و بهتر نمودن مهارتهايتان اختصاص خواهيد داد.
س: آيا ويژوال بيسيک و سیشارپ زبانهای برنامهنويسی خوبی برای شروع یادگيری هستند؟
ج: اگر شما چنين سوالی را میپرسيد، مطمئناً به اين معنی است که شما قصد داريد که هکری را تحت ويندوز ياد بگيريد. اين ايده به خودی خود بد است. هنگامی که من سعی برای هک کردن تحت ويندوز را با سعی برای يادگيری رقص هنگامی که داخل قالبی قرار داريد، مقايسه کردم، شوخی نمیکردم. به طرف ويندوز نرويد چون خيلی بد است و هيچوقت خوب نخواهد شد.
مشکلات خاصی در رابطه با ويژوال بيسيک و سیشارپ وجود دارد. مهمترينشان اين است که کد توليد شده توسط آنها حملپذير نيست (قابل اجرا در سيتم عامل ديگری نيست). گرچه نمونههای اوليهای از نرمافزارهای منبعباز توسط آنها نوشته شده است، اما استانداردهای ECMA به جز دستهی کوچکی از خصوصيات رابط کابری آنها از بقيه پشتيبانی نمیکند. تحت ويندوز اکثر پشتيبانی کتابخانهای دادهها به يک شرکت خاص (مايکروسافت) تعلق دارد.
اگر شما کاملاً مراقب امکاناتی که از آنها استفاده میکنيد -بيشتر از آنچه يک فرد مبتدی میتواند- نباشيد، به طور قطع سرانجام در يکی از سکوهايی که مايکروسافت از آنها پشتيبانی میکند، محدود خواهيد شد. اما اگر شما با يونيکس آغاز بکنید، زبانهای برنامهنويسی خيلی بهتری با کتابخانههای بهتری خواهيد داشت.
ويژوال بيسيک فوقالعاده مزخرف است و مانند بيسيکهای ديگر زبانی است که طراحی بسيار ضعيفی دارد و شما را به روشهای غلط در برنامهنويسی عادت میدهد. از من نخواهيد که جزئيات آن را شرح دهم. اين توضيحات صفحات يک کتاب را پر میکنند. به جای بيسيک يک زبان برنامهنويسی خوب طراحی شده را ياد بگيريد.
يکی از عادتهای بد وابسته شدن به ابزار کتابخانهای و لوازم توسعهی يک شرکت خاص است.
اساساً هر زبانی که به طور کامل حداقل توسط لينوکس يا يکی از BSD ها پشتيبانی نشود و يا حداقل تحت سيستمعاملهای سه شرکت متفاوت کار نکند، يک زبان ضعيف برای هکری است.
س: آيا شما به من کرک کردن را ياد میدهيد يا به من کمک میکنيد تا يک سيستم را کرک کنم؟
ج: نه! هر کسی که بتواند بعد از خواندن اين متن بتواند اين پرسش را بپرسد، احمقتر از آن است که تعليم داده شود. حتی در صورتی که من برای آموزش وقت داشتم. اگر من ايميلی با چنين درخواستی دريافت کنم، به آن توجه نخواهم کرد يا با بی ادبی زياد به آن پاسخ خواهم داد.
س: چگونه میتوانم کلمهی عبور شخص ديگری را بدست آورم؟
ج: اين کرک کردن است.
س: من چگونه میتوانم ايميلهای افراد ديگری را بخوانم يا کنترل کنم؟
ج: اين کرک کردن است.
س: چگونه میتوانم مجوز اپراتوری را در شبکههای IRC بدست بياورم؟
ج: اين کرک کردن است.
و . . .
نکاتی برای اینکه بدانیم از کجا آغاز کنیم و چگونه یک برنامه نویس کامپیوتر شویم – تصمیم به شروع یاد گیری برنامه نویسی برای بسیاری از ما از یک جرقه گرفته شد، شاید دوستمان را دیدیم که یک برنامه را نوشته و ما ناگهان علاقه مند شدیم، یا از موفقیت های یک برنامه نویس شنیده ایم و می خواهیم مثل او شویم لذا شروع به یادگیری برنامه نویسی می کنیم و یا صد ها دلیل دیگر که می تواند نسبت به افراد متغیر باشد، ولی در ذات قضیه یک امر مهم خفته استو آن اینکه، همانطور که ییهو علاقه مند به برنامه نویسی شده ایم ممکن است خیلی ییهوتر از آن بیزار شویم، پس توصیه می کنم به توصیه هایی که در ذیل آمده قبل از شروع برنامه نویسی عمل کنید و اگر در میانه راه هستید می توانید با موارد زیر خود را بسنجید تا ببینید کجا قرار دارید.زبان مورد علاقه خود را انتخاب کنید؟؟در مرحله اول، حتما زبان برنامه نویسی مورد علاقه خود را انتخاب کنید. اگر اطلاعات دقیقی از برنامه نویسی ندارید با پاسخ دادن به سوالات زیر مسیر خود را انتخاب کنید: آیا دوست دارید برنامه هایی که تحت اینترنت اجرا می شوند را بنویسید؟
(وبسایت ها) یا برنامه هایی که در سیستم کاربر اجرا می شوند؟آیا دوست دارید برنامه ها یا سایت هایی که می نویسید حال ایستا داشته باشند یا پویا باشند؟ آیا دوست دارید برنامه هایتان تک کاربره باشد یا چند کاربره؟ آیا می خواهید برنامه های بزرگ سازمانی بنویسید یا برنامه های ساده؟ و …برنامه نویسی نرم افزارهای تحت وب یا برنامه نویسی لوکال (تحت سیستم کاربر)اول از همه مسیر خود را در مسیر گرایش برنامه نویسی مشخص کنید. می خواهید برای وب بنویسید یا برای سیستم کاربر؟زبان های برنامه نویسی تحت وبپیشنهادم برای آنهایی که دوست دارند تحت وب بنویسند : PHP, ASP.Net, Javaمی باشد. دقت کنید برای شروع برنامه نویسی تحت وب حتما با HTML, Java Script و CSS آشنا باشید. بدون این سه مورد شما یک برنامه نویس حرفه ای تحت وب نخواهید بود. دقت کنید انتخاب PHP انتخاب مناسبی است مادامی که به نوشتن برنامه های تحت وب محدود مبادرت بورزید، PHP می تواند در نوشتن سایت ها یا برنامه های تحت وب پیچیده مشکل ساز باشد.حال آنکه یاد گیری جاوا در نوع خود کمی مشکل می باشد، ولی سایت هایی که با جاوا نوشته شوند واقعا قابل اعتماد و مستحکم هستند، بعلاوه اینکه دستمزد یک سایت نوشته شده با جاوا به مراتب بسیار بیشتر از سایتی نوشته شده با PHP است. این در حالی است که ASP.NET در میان این دو قرار دارد و از ویژگی های هر دو در خود دارد، هم آسان است و هم پایدار، پس می توانید ASP.Net را هم در لیست علاقه مندی های خود برای برنامه نویسی تحت وب قرار دهید. پروژه های نوشته شده با ASP.net هم به مراتب گران می باشند و می توانند دستمزد خوبی برای برنامه نویس داشته باشند.ولی دانستن نکات فوق زمانی مفید خواهد بود که شما با یک پایگاه داده استاندارد هم آشنا باشید. انتخاب خیلی از برنامه نویسان خلاصه شده در : Oracle, MySQL و MS SQL Server . البته هسته هر سه زبان SQL می باشد، لذا SQL را یاد بگیرید. توجه به این نکته که یادگیری پایگاه داده خیلی کمتر زمان بر خواهد بود، می توانید ابتدا به یاد گیری آن بپردازید و چون در برنامه نویسی حرفه ای باید با دستورات SQL هم برای تولید برنامه آشنا باشید لذا مفاهیم و دستورات SQL را که بسیار آسان هستند را یاد بگیرید.دانستن کد کافی نیست از فناوری اطلاعات بدانیدحال برای شما که کمی مصمم تر شده اید باید توصیه کنم حتما قبل از ورود به مقوله برنامه نویسی سعی کنید مفاهیم IT را فرا بگیرید. مفاهیم IT با اینکه تاثیر مستقیمی در برنامه نویسی ندارند ولی بدون آنها شما هرگز نخواهید توانست یک پروژه را سالم به هدف برسانید. منظور از این مفاهیم، شامل نحوه عملکرد سرورها، امنیت، نحوه عملکرد مشتریان سایت شما و … می باشد. برای مثال شما باید بدانید که چطور کدهایتان در سرور اجرا خواهند شد و اصلا یک سایت با چه پروسه ای برای کاربر نمایش داده می شود؟ مجموع این دانسته ها را مفاهیم IT می گوییم و شما برای برنامه نویسی یک پروژه کاربردی باید در حد متوسط به بالایی با آنها آشنایی داشته باشید. البته برعکس برنامه نویسی که با کسب تجربه رفته رفته اصولی تر می شود، مفاهیم عمدتا قضیه های ثابتی هستند که می تواند از منابع مختلفی مثل اینترنت با آنها آشنا شوید.چنانچه شما علاقه مند به یادگیری یک زبان برنامه نویسی برای تولید نرم افزارهای تحت کامپیوتر کاربر می باشید، کمی کارتان مشکل تر است. در واقع برنامه نویسی لوکال (تحت سیستم کاربر) به نوعی سخت تر است. البته این امر وقتی احساس می شود که شما هم در وب بنویسید هم لوکال، این دشواری زمانی احساس می شود که به برنامه نویسی تحت وب که تا حدودی آسان است عادت کرده باشیم. توجه با این نکته که برنامه های نوشته شده لوکال می توانند واقعا سودآود باشند، خیلی از برنامه نویسان حداقل یک زبان برنامه نویسی لوکال را ید می گیرند. دقت داشته باشد که دانستن همان مفاهیم و اطلاعات IT ضروری می باشند. در واقع این مفاهیم دید شما را نسبت به برنامه ای که می نویسید بسیار وسعت می بخشند. همچنین بحث پایگاه داده نیز در این نوع برنامه نویسی استوار است. با این تفاوت که گرایش بیشتر به سمت پایگاه داده های Oracle, MS SQL Server یا MS ACCESS می باشد. زبان های برنامه نویسی رایج و بسیار مناسب هم در این زمینه : C++ , C#, Java, Delphi می باشند. البته موارد دیگری هم هستند که یا کاربران کمی دارند یا در حال انقراض می باشند، لذا از ذکر آنها معذورم. دقت داشته باشید که انتخاب هریک از این زبان ها مستلزم پیش نیازهای خاصی می باشد ولی در کل آشنایی کامل با الگوریتم ها و زبان برنامه نویسی C کمک شایانی برای شما خواهد کرد.اگر بخواهیم از بعدی دیگر قضیه را بررسی کنیم، عوامل بسیاری نظیر: صبر و حوصله، پشتکار، علاقه وافر، خلاقیت، دقت، هوشیاری و سرعت عمل از عواملی هستنذد که بسیار به یادگیری یک زبان برنامه نویسی کمک می کنند.دانستن زبان انگلیسی الزامی نیستضمن اینکه دانستن زبان انگلیسی یعنی ۵۰% پیشرفت اولیه! انگلیسی به حدی در برنامه نویسی به درد شما می خورد که خودتان متعجب می شوید.دقت کنید قبل از شروع بسنجید و ببینید که شما توانایی یاد گیری را هنگام خودخوانی دارید یا نه؟ شایان ذکر است بسیاری از متخصصین برنامه نویسی خودشان برنامه نویسی را یاد گرفته اند و کلید آن دانلود Ebook و تمرین و نوشتن کد است. اگر نیاز به یک کلاس برای شروع دارید، این کار را بکنید، مسیر را پیدا کنید و خودتان ادامه دهید.طبقه بندی زبان های برنامه نویسی* زبان های برنامه نویسی سریع* زبان های برنامه نویسی آرایه ای* زبان های برنامه نویسی پیوسته* زبان های برنامه نویسی همزمان* زبان های برنامه نویسی تعریفی* زبان های برنامه نویسی با دامنه ویژه* زبان های برنامه نویسی پویا* زبان های برنامه نویسی آموزشی* زبان های برنامه نویسی رمزی* زبان های برنامه نویسی سریع* زبان های برنامه نویسی تابعی* زبان های برنامه نویسی همه منظوره* زبان های برنامه نویسی منطقی* زبان های برنامه نویسی شی گرا* زبان های برنامه نویسی متنی زبان های اصلیزبان های زیر زبان های برنامه نویسی اصلی هستند ک حداقل توسط هزاران برنامه نویس در سراسر دنیا استفاده می شوند:Ada ،ALGOL ، APL ،AWK BASIC ،سی C ، سی پلاس پلاسC++ ، سی شارپ C#، کوبولCOBOL ، ColdFusion ، لیسپCommon Lisp ، دلفیDelphi ، Eiffel ، Focus ، Fortran ، Haskell ، ای دی ال IDL ، جاوا Java ، جاوا اسکرپیت Java script ، Lisp ، ماژولاModula ، ابجکت سیObjective-C ، OCaml ، پاسکال Pascal ، پرل Perl ، پی اچ پیPHP ، پرولوگProlog ، فوتونPython ، Ruby ، ساسSAS ، Scheme اسمال تاک، اس کیو الSQL ، ویژوال بیسیک Visual Basicزبانهای برنامهنویسیزبانهای برنامهنویسی ساختارهای زبانی دستورمداری در رایانهها هستند که بهوسیلهٔ آنها میتوان یک الگوریتم را بهوسیلهٔ ساختارهای دستوری متفاوت برای اجرای رایانه توصیف کرد و با این روش امکان نوشتن برنامه جهت تولید نرمافزارهای جدید بوجود میآید. معمولاً هر زبان برنامهنویسی دارای یک محیط نرمافزاری برای وارد کردن متن برنامه، اجرا، همگردانی و رفع اشکال آن هستند.عموماً زبانهای برنامه نویسی را به پنج نسل تقسیم میكنند:* نسل اول زبان ماشین - زبان صفرو یك* نسل دوم زبانهایی مانند اسمبلی -قابل فهم تر برای انسان* نسل سوم زبانهایی مانند كوبول و پی ال وان و... -دستورات قابل فهم تر برای انسان و نیاز به كمپایلرها* نسل چهارم مثل زبانهای اوراكل و فاكس پرو و اس كیو الها - نزدیك به محاوره های انسانی* نسل پنج زبانهایی مانند prolog , ops5 - تمركز بر حل مسئله و استفاده از الگوریتمهای نوشته شده توسط برنامه نویسزبان برنامهنویسی سطح پاییندر علوم رایانه زبان برنامهنویسی سطح پایین یا زبان برنامهنویسی کوتاهتراز (Low-level programming language) زبانی است که به مقدار کم یا هیچ انتزاعی نسبت به ریزپردازنده فراهم نمینماید. عبارت سطح پایین به این معنی نیست که این زبان نسبت به زبان برنامهنویسی سطح بالا ارزش کمتری دارند بلکه به معنای عدم وجود انتزاع بین این زبان و ساختار ریزپردازنده است از این جهت گاهی این زبانها را نزدیک به سختافزار نیز مینامند. سطح بالا و سطح پایین نسبی هستند و یک برنامهنویس جاوا ممکن است زبان سی را سطح پایین بداند در حالی یک برنامهنویس سی زبان ماشین را در سطحی پایینتر از خود میداند.زبانهای سطح پایین را گاهی به دو دسته نسل اول و نسل دوم تقسیم مینمایند.اولین نسلاولین نسل زبان برنامهنویسی کد ماشین است. این زبان تنها زبانی است که بصورت مستقیم توسط ریزپردازنده درک میگردد. در حال حاضر برنامهنویسان از زبان ماشین استفاده نمیکنند چرا که همانند زبان اسمبلی نیاز به توجه به جزئیات زیادی داشته که زبان سطح بالا خود آنها را برطرف مینماید. و برای هر دستور نیاز به یافتن کد عددی متناسب با آن دستور است. به این دلیل زبانهای نسل دوم که یک سطح انتزاع بالاتر از کد ماشین قرار دارد بوجود آمدند.دومین نسلزبان نسل دوم زبان اسمبلی است. این زبان با وجود این که در سطح انتزاع بالاتری قرار دارد اما ساختار ریزپردازنده مانند ثباتها و دستورالعملها را مورد توجه قرار میدهد. این دستورالعملهای ساده سپس تبدیل به کد ماشین میگردد. کد اسمبلی را میتوان به سطح بالاتری از انتزاع گسترش داد. به عنوان مثال زبان اسمبلی را میتوان بصورت قابل خواندنتری مانند کد زیر نوشت.زبان برنامهنویسی سطح بالازبان برنامهنویسی سطح بالا یا زبان برنامهنویسی بلندتراز (High-level programming language) زبانی است که نسبت به زبان برنامهنویسی سطح پایین راحتتر قابل استفاده و قابل حمل بین سیستمهای متفاوت و دارای انتزاع بیشتری هستند. چنین زبانهایی عموماً از عملیات CPU مانند مدلهای دسترسی به حافظه و مدیریت حوزه دور هستند.
مشخصات زبانهای سطح بالاعبارت زبانهای سطح بالا بدین معنی نیست که این زبان نسبت به زبانهای سطح پایین برتر هستند بلکه اگر شما میزان اطلاع از نحوه عملکرد رایانهها را به عنوان ملاک در نظر بگیرید برعکس این مطلب درست است. عبارت زبان سطح بالا در حقیقت به معنای دوری این زبانها از زبان ماشین است. به جای کار کردن با ثباتها، آدرسهای حافظه، و فراخوانی پشته زبان برنامهنویسی سطح بالا از متغیرها، آرایهها، و عبارات پیچیده ریاضی و منطقی استفاده مینماید. این زبانها مستقیما مانند زبان اسمبلی به زبان ماشین ترجمه نمیگردند. ویژگیهای دیگر همانند توابع کار با رشتهها، مفاهیم شیگرایی، و کار با ورودی و خروجی در فایلها در آنها وجود دارد.به بیان دیگر در حالی که زبان برنامهنویسی سطح بالا برنامهنویسی را آسانتر مینماید اما زبان برنامهنویسی سطح پایین برنامههای بهینهتری تولید میکند. در یک زبان سطح بالا این امکان را فراهم میسازد تا اجزای پیچیده را به اجزای سادهتر اما هنوز پیچیده تقسیم نموده تا برنامهنویس را از انجام کارهای پیچیده بازدارد. به این دلیل برنامههایی که نیاز به کار با سرعت بالا و بهینهتر دارند باید با زبان سطح پایین نوشته شود حتی اگر زبان سطح بالا این کار را سادهتر سازد.زبانهای سطح بالا پر کاربردترین ودر عین حال جذابترین و کاربردی ترین محیط های برنامه نویسی را شامل می شوند، چرا که محیط آن کاربر پسند(User Friendly) بوده و یادگیری اصطلاحات و مفاهیم آن در محیط و قالبی گرافیکی به کاربر ارائه می شود، برنامه نویسان به راحتی به یادگیری دستورات و قواعد آن به دلیل اینکه به زبان محاوره ایی و انگلیسی نزدیک است می پردازند، اینگونه زبانها از سرعت کمتری نسبت به زبانهای سطح میانی و پایین برخوردار می باشد، به دلیل اینکه دستورات بایستی به زبان قابل فهم برای ماشین تبدیل گردند که این خود زمان بر می باشد، ولی در عین حال فضای کمتری اشغال می کنند که نمونه ایی از این زبانها، زبانهای برنامه نویسی پاسکال، C، ویژوال، دلفی، فرترن و جاوا می باشند.امروزه با توجه به ساختار پیچیده ریزپردازندهها کامپایلرهای پیشرفته با استفاده از تکنیکهای بهینهسازی برنامههای بهتری از برنامههای نوشته شده با دست فراهم مینمایند.معنای نسبیتوجه به این نکته ضروری است که عبارت سطح بالا و سطح پایین نسبی هستند. در ابتدا زبان اسمبلی سطح پایین و زبان کوبول و سی و غیره بدلیل استفاده از متغیر و توابع و عبارات سطح بالا محسوب میشدند. با این وجود برنامهنویسان ممکن است سی را یک زبان سطح پایین محسوب نمایند چرا که امکان دسترسی به حافظه به صورت مستقیم و امکان دسترسی به کد اسمبلی را نیز فراهم میسازد. برای اطلاع بیشتر در این مورد وبسایت C2's page about high-level languages را ببینیدمدلهای اجراتفسیر:زبانهای تفسیر شده مستقیماً خوانده و اجرا میگردند بدون مرحله ترجمه.کامپایل شونده:زبانهای ترجمه شده ابتدا به فیل قابل اجرا تبدیل میشوند سپس اجرا میگردند دو نوع از این زبانها وجود دارد: نمایش میانی در این زبانها برنامه به یک نمایش میانی تبدیل شده و در ادامه میتوان آن را بهینه سازی نمود یا ذخیره گردد بدون نیاز به خواندن مجدد فایل مبدا. نمایش میانی معمولاً به صورت بایتکد است.تولید کد ماشین بعضی زبانها مستقیما به زبان ماشین تبدیل میگردند. ماشینهای مجازی که نمایش میانی را دریافت کرده و آن را اجرا مینمایند مرز میان زبانهای ترجمه شونده و نمایش میانی را که سابقا مشخص بودهاند مبهم نموده است.ترجمه شونده زبانهای سطح بالا ممکن است به یک زبان سطح پایین ترجمه گردند که معمولاً زبان هدف سی میباشدزبان نسل چهارم زبان برنامهنویسی هسکلهسکل (HASKELL) یکی از زبانهای برنامهنویسی تابعی است. چیزی که اکثر دانشآموزان از زبان برنامهنویسی میدانند، عبارت است از مجموعهای از توابع، کلاسها، تایپها و یک محیط برای نوشتن یک برنامه. این زبان یک زبانها برنامهنویسی تنبل و بدون اثرجانبی(side-effect) است. یعنی در ذات دستور ورودی و خروجی ندارد
شما تا موفقیت فقط چند قدم فاصله دارید
برای داشتن میز کارتان در خانه مطالب این سایت را به دقت مطالعه فرمایید !
آموزش کسب درآمد در خانه
قدم به قدم تا رسیدن به درآمد اینترنتی
توجه توجه
( خانم ها و آقایانی که به دنبال کار هستید توجه کنید !!! )
اگر مدتی است که بی کار هستید و با اینکه برا ی پیدا کردن یک شغل پردرآمد به هر دری زدی اما موفق نبودید !...
اگر معرف یا پارتی نداشتید تا در یک اداره یا سازمان استخدام بشید !...
اگر با این که در دانشگاه فرد موفقی بودید اما هنوز نتونستید شغلی داشته باشید!
اگر از بیکاری خسته ای و به دنبال فرصت های تازه برای کسب در آمد می گردید !....
و اگر ............ و هزاران اگر دیگر !!!!!!!!!!!!!!
یکبار هم راه و روشی را که من برایتان برای کسب درآمد اینترنتی مرحله به مرحله توضیح می دهم ، امتحان کنید . این راهی است که من رفتم و از آن نتیجه گرفته و به شکرانه آن می خواهم شما را هم در این موفقیت سهیم کنم .
گام اول
اول از همه این صفحه را در جایی از کامپیوتر ذخیره کنید تا بعنوان دستور العمل و راهنمای راه دم دستتان باشد
گام دوم
یک کامپیوتر که به اینترنت متصل باشد نیاز دارید ( اگر خط پرسرعت ای.دی.اس.ال و یا وایمکس ایرانسل باشد بهتر است زیرا هم خط تلفن شما آزاد خواهد بود و هم هزینه تلفن شما پایین خواهد آمد .)
گام سوم
برای کار با سایت های ایرانی بایددر بانک ملی حساب سیبا ، یا در بانک صادرات حساب سپهر داشته باشید تا درآمدتون از کار اینترنتی به یکی از آنها واریز شود . برای کار با سایتهای خارجی هم باید اول در یکی از بانکهای معتبر اینترنتی ( لیبرتی رزرو - آلرت پی - پی پال ) حساب بازکنید . لازم به ذکر است که بازکردن حساب در این بانکها بصورت اینترنتی و رایگان است . نحوه انجام آن را که خیلی هم آسونه در سایت آموزشیم به آدرس زیر توضیح داده ام .
گام چهارم
باید تو یاهو یه ایمیل واسه خودتون درست کنید که آموزش ساختن ایمیل در یاهو رو تو سایت آموزشیم به آدرس زیر براتون گذاشتم
گام پنجم
بعدش باید یک یا چند تا وبلاگ درست کنید، هرچی تعداد وبلاکهاتون بیشتر باشه بیشتر میتونید تبلیغ کنید و درآمدتون هم بیشتر می شه . اگه قبلا وبلاک یا وبلاکهایی باز کردین که هیچ ، اما اگه باز نکردین من بهتون یاد می دم خیلی آسونه . کافیه روی لینک سایت آموزشیم که در بالا آدرسش را دادم کلیک کنید ، آموزش ساخت انواع وبلاک رو قدم به قدم نوشتم
گام ششم
وبلاک یا وبلاکهاتون رو باید در سیستم های جستجوی اینترنتی ( گوگل و ...) ثبت کنید تا بینندگان از این طریق وبلاک شما رو پیدا کنند و به مطالبتون راحتتر دسترسی پیدا کنند و این مخصوصا برای بالا بردن آمار بازدید وبلاک شما خیلی مهمه ، برای آموزش نحوه ثبت وبلاک در سیستم های جستجو ، برین تو همان سایت آموزشیم که در بالا آدرسش را دادم .
گام هفتم
روی لینک های زیر کلیک کنید و در آنها (بصورت کاملا رایگان) عضو شوید . در زیر هم یک لیست از سایت های معتبر و درآمد زای کلیکی ایرانی و خارجی آورده شده است .
سایت های معتبر درآمد زای ایرانی :
سایت هایی که به ازاء هر کلیک روی بنرهای تبلیغاتی محصولاتشان ، ثبت نام رایگان در آنها و یا عضو گیری برای آنها درصدی پول به شما می دهد که معمولاً به حساب سیبا یا سپهر صادرات شما واریز می گردد .
در اینجا معتبرترین سایت های ایرانی را به شما معرفی می کنم . لینک های زیر را برایتان می گذارم روی آنها کلیک کنید و وقتی وارد این سایت ها شدید در قسمت ثبت نام کلیک کرده و فرمی را که در اختیارتان می گذارد پر کنید .
معمولاً یک نام کاربری ، کلمه عبور ، نام و نام فامیل ، شماره تلفن ، آدرس ، نوع حساب و شماره حساب شما از شما خواسته می شود . برای کار با این سایت ها بهتر است این فرم ها را صادقانه و با هویت اصلی خود پر نمایید . پس از این که فرم را کامل کردید دکمه ارسال را می زنید ، منتظر بمانید تا آنها به آدرس ایمیل شما که در فرم ثبت نامتان داده اید یک ایمیل می دهند که در آن کلمه کاربری و کلمه عبورتان را تأیید کرده و ورود شما را بعنوان عضو آن سایت خوش آمد می گویند ؛ با این ایمیل پنل کاربری شما فعال می شود و شما پس از ورود دوباره به آن سایت ها این بار در بخش ورود اعضاء کلمه عبور و نام کاربردیتان را وارد کرده و می توانید کار خود را شروع کرده و درآمد کسب کنید . درضمن این سایت ها پس از عضویت شما در آنها یک کد مخصوص عضوگیری مختص خودتان به شما می دهند که شما می توانید این کد ها را در سایت یا وبلاگتان بگذارید و به ازاء هر عضو جدید که از طریق شما در آن سایت ها ثبت نام می کنند به شما پورسانت خوبی می دهند . خوب برای شروع کار روی هر کدام از لینک های زیر کلیک کرده و درآنها ثبت نام کنید :
سیستم گسترده " فروتل "
http://frotel.com/ads-reg.php?moarref=7819
سیستم تبلیغ "اکسین ادز"
سیستم تجارت " ایران مارکت سنتر" و فروشگاه های تحت آن :
http://www./AdsAffiliate.php?AdsID=29941
http://www.IranMahsool.com/AdsAffiliate.php?AdsID=29941
http://www.BehtarinKala.com/AdsAffiliate.php?AdsID=29941
http://www.IranianKala.com/AdsAffiliate.php?AdsID=29941
سیستم تجارت الکترونیک " می شاپ "
( پس از ورود به این سایت برای ثبت نام و عضو شدن در منوی بالای صفحه روی زبانه کسب درآمد برای وبمسترها کلیک کنید و وارد فرم ثبت نام شوید )
ü سایت های معتبر درآمد زای خارجی
http://mailusd.com/pages/index.php?refid=mitra2007
http://globalptr.com/pages/index.php?refid=mitra2007
http://www.neobux.com/?r=mitra2007
http://www.myfreeshares.com/promopage.php?ref=mitra2007
http://autopayouts.com/pages/index.php?refid=mitra2007
http://www.gpt.ir/pages/index.php?refid=mitra2007
http://www.ariaptc.com/pages/index.php?refid=mitra2007
http://payableptr.com/pages/index.php?refid=mitra2007
http://goldbizs.com/pages/index.php?refid=mitra2007
http://doemails.com/pages/index.php?refid=mitra2007
http://richestmails.net/pages/index.php?refid=mitra2007
http://dj-mails.com/pages/index.php?refid=mitra2007
http://massiveptr.com/pages/index.php?refid=mitra2007
http://www.exclusivemails.net/pages/index.php?refid=mitra2007
http://libertyreservemails.com/pages/index.php?refid=mitra2007
http://www.myfreeshares.com/promopage.php?ref=mitra2007
http://www.myfreeshares.com/index.php?ref=mitra2007
http://www.cashmailz.com/pages/index.php?refid=mitra2007
http://alexmails.com/pages/index.php?refid=mitra2007
http://www.promails.org/pages/index.php?refid=mitra2007
http://www.ptcsense.com/index.php?ref=mitra2007
http://worldwideptr.net/pages/index.php?refid=mitra2007
http://www.clicksia.com/index.php?ref=mitra2007
خوب دیگه همه گام ها را برداشتید و رسیدید به دفتر کارتون در منزل !
حالا تنها کاری که باید تو این دفتر انجام بدین اینه که تو وبلاک یا وبلاکهاتون مطالب جذاب بذارید ( مانند : مقاله ، خلاصه نویسی سریال ، داستان ، عکس و ...) تا بیننده ها حین بازدید از مطالب وبلاکتون از تبلیغاتتون هم دیدن کنند و از این طریق شما هم صاحب درآمد بشید و از بیکاری نجات پیدا کنید. البته ممکنه در شروع کار درامدتون خیلی کم باشه ، اما اصلا ناامید نشین چون هنوز اول راه هستید . چند ماه که بگذره تجربه کافی پیدا می کنید و می فهمید که چطوری آمار وبلاگتون را بالا ببرید و درآمدتان را روز به روز بالا ببرید .
Izotope Ozoneآموزش
که برای میکس و مسترینگ بسیار قدرتمند و معروف است
برای دانلود به ادامه مطلب بروید
سلام دوستان برخی از دوستان سوال میپرسیدند که میکس وکال چجوری انجام میشه این مطلبو گذاشتم امیدوارم بدردتون بخوره لطفا سوالاتتون رو توی لینک خودش در ادامه مطلب بپرسید تا مشکلتون حل شه
1: تیون کنید!
به نظر من نخستین قدم تیون کردنه، ولی تیون کردن در این مرحله رو با اتو تیون اشتباه نگیرید، منظور من از تیون کردن، تصحیح فالشی ها و تحریر ها و ... به صورت دستی هستش.(مثلا در کیوبیس توسط VariAudio یا با پلاگین های رایج)
2: EQ کنید!
یکی از مهمترین عواملی که باعث نچسبیدن وکال میشه اکولایز اشتباه و یا عدم اکولایز هستش.
اکولایز بسته به جنس صدا متفاوت هستش ولی اصولش:
حدودهای 150 هرتز به پایین رو کلا دور بریزید، نترسید از اینکه گرمی صداتون از بین میره، اشتباه میکنید در این محدوده گرمی وجود نداره و بمی وجود داره، گرمی رو با موارد دیگه به صدا می دن (های پس)
بگردید دنبال صدای تو دماغی حدود 200 تا 300 هرتز و کمی گین منفی با کیوی بسته بدید
حدود 500 هرتز رو کمی گین منفی با کیوی نسبتا باز بدید
فرکانس های 5K به بعد رو میتونید کمی باز کنید تا صدا کمی شفاف بشه
3: کمپرس کنید!
نکته بعدی که بسیار بسیار مهم هستش کمپرس کردن صحیحه
حتما حتما حتما از حالت سافت در کمپرسور استفاده کنید، اگر کمپرسور حالت انتخاب نرمی و سختی کمپرس رو نداره پس به درد وکال نمیخوره، یه کمپرسور جدید نصب کنید
اتک تایم رو از حالت پیش فرض کمی کم کنید
ریلیز تایم رو از حالت پیش فرض کمی زیاد کنید
تریشولد رو اونقدر پایین بیارید تا کمپرسور کاملا با تمامی واژه ها درگیر بشه
گین خروجی رو اونقدر زیاد کنید تا صدای کمپرس نشده و کمپرس شده در یک سطح بلندی باشند
ریشیو همون 2 خوبه اگر وکالتون خیلی داینامیک بود میتونید تا 3 هم بیارید
4: لیمیت کنید!
بعد از یک کمپرس خوب یک لیمیت صحیح هم خیلی میتونه کمک کنه
تنها کاری که باید بکنید اینه که برید قسمت اوج کار و لوپ کنید و تریشولد لیمیتر رو اونقدر پایین بیارید تا فقط پیک ها و اتک هایی که در برخی واژه ها باعث بیرون پریدن وکال میشه رو بگیره
5: دوباره تیون کنید!
این بار تیون اتوماتیک و سافت تیون برای کنترل نهایی صدا
6: افکت گذاری کنید!
یادتون باشه تمامی موارد بالا جزو خانواده پروسس ها بودند و باید در اینسرت لاین ها قرار بگیرند، ولی برای اعمال افکت ها باید از Send ها استفاده کرد
برای هر افکت یک لاین send fx ایجاد کنید (دیلی، ریورب، و ...)
Send برای هیچ نرم افزاری نیست و در هر نرم افزار با یک نام شناخته میشه (Protools Aux Track - Reason Send - Cubase Fx channel و ...) و روش کار به این ترتیب هستش که سیگنال ورودی تقسیم به دو میشه و یک سیگنال اوریجینال به یک کانال فرستاده میشه، پس با تغییر میزان Dry/Wet صدای اصلی خراب نمیشه و سیگنال کپی شده تغییر و در نهایت(در خروجی) سیگنال اصلی و کپی شده با هم ترکیب خواهند شد
و در نهایت شما مو به مو تئوری بالا رو یاد بگیرید و اعمال کنید. حتما نتیجه بهتری خواهید گرفت و نتیجه نگرفتن وکال ربطی به نرم افزار نداره.
حالا وکال رو به لاین های افکت ارسال کنید و بلندی صدای افکت رو تنظیم کنید
منبع : هوم استدیو
این آموزش به شما کمک میکند که موزیک خوبی و جذابی آخر کار داشته باشید و آین آموزش هم برای مبتدیان کاربرد دارد هم حرفه های ها
برای دانلود به ادامه مطلب بروید
Fruity Limiter آموزش پلاگین اف ال استدیو
برای دانلود به ادامه مطلب بروید
آموزش میکس وکال هستش که در اف ال انجام شده و به صورت تصویری و زبان اصلی هستش
برای دانلود به ادامه مطلب بروید
آموزش میکس درام رو براتون گذاشتم که در اف ال انجام شده و به صورت تصویری و به زبان اصلی هستش
برای دانلود به ادامه مطلب بروید
دانلود آموزش نصب نکسوز برای کسانی که در نصب این سیتی سایزر مشکل دارن
برای دانلود به ادامه مطلب بروید
دانلود آموزش پلاگین قدرتمند ملوداین
برای دانلود به ادامه مطلب بروید
توضیحات کلی درباره ی کارت صداهای
Onboard
که کسانی که از این کارت صداها استفاده میکنند پیشنهاد میشه حتما دانلود کنند
برای دانلود به ادامه مطلب بروید
در این آموزش طریقه ی ساخت ساید چید در نرم افزار کیوبیس را آموزش داده شده است
برای دانلود به ادامه مطلب بروید
رو برای دانلود گذاشتم Editor edison اکنون برای شما آموزش پلاگین اف ال به اسم
برای دانلود به ادامه مطلب بروید