سلام، دنیا!

سلام، این بار از یک دامین تازه، بر روی بستر نیکولا.

حقیقت اینه که بعد از مدت‌ها ننوشتن تصمیم گرفتم این بار در یک فضای شخصی و قابل کنترل [1] دوباره شروع به نوشتن کنم. برای این کار این دامین رو انتخاب کردم و برای مدیریت محتوا هم "نیکولا" رو که یک سیستم ایجاد سایت استاتیک ساده است که با پایتون نوشته شده و امکانات خوبی داره.

چرا استاتیک؟

بیشتر وبسایت‌های مدرن، پویا (داینامیک) هستن به این معنی که بیشتر محتوای سایت در یک پایگاه داده ذخیره شده و فقط زمانی که کاربر نیاز به مشاهده‌‌ی اونا داشته باشه، تبدیل به HTML شده و نمایش داده می‌شن. سایت‌های پویا امکانات زیادی دارن، و در مقابلِ این امکانات، به هزینه‌ی بیشتری برای نگهداری نیاز دارن. تصور کنید که برای هر بار خوندن یک صفحه از یک وبسایت پویا چند بار با پایگاه داده ارتباط برقرار می‌شه و برای این ارتباطات و تبدیل محتوا به کدهای HTML طبیعتا مقداری از رم و سی‌پی‌یو مصرف می‌شه، در صورتی که برای نگهداری یک وبسایت ایستاتیک، نیازی به رم و سی‌پی‌یو نیست و فقط فضای کمی از هارد دیسک برای ذخیره‌سازی فایل‌های HTML وبسایت نیاز است. در واقع کار به این صورت انجام می‌شه که شما فایل‌های مربوط به پست‌ها و صفحات مختلف سایت خودتون رو توی هارد دیسک خودتون ذخیره می‌کنید، و سپس با استفاده از یک نرم‌افزارِ "تولید وبسایت ایستاتیک" فایل‌ها رو به HTML تبدیل می‌کنید و بعد فایل‌های تبدیل شده رو در فضای سرور خودتون یا هر فضایی که ترجیح می‌دین، میذارین.

معمولا تنها بخش پویای یک وبلاگ سیستم نظر دهی به مطالبشه، که بیشتر مواقع از سایت‌های دیگه مثل دیسکاس برای این کار استفاده می‌شه. علاوه بر سرعت و هزینه پایین نگهداری، امنیت بیشتر، حجم کد کمتر و خیلی ویژگی‌های دیگه که از این چند مورد مشتق می‌شن هم از مزایای وبلاگ‌های استاتیک هستن. بنابراین چه دلیلی (به جز سادگی بیشتر در زمان نصب و پیکربندی) برای استفاده از یک سیستم پیچیده‌ی مدیریت محتوا برای یک وبلاگ یا حتی وبسایت ساده وجود داره؟

چرا نیکولا؟

نرم‌افزارهای زیادی برای ایجاد وبسایت‌های استاتیک وجود داره که از بین اون‌ها گزینه‌های خوب زیادی رو می‌شه پیدا کرد. نیکولا یکی از همین نرم‌افزارهاست که با زبان پایتون نوشته شده. زبانی که من با آن راحت‌ترم و اولین دلیل من برای انتخاب "نیکولا" بود، چرا که شاید نیاز به تغییرات در کدش داشته باشم. دلیل دوم من این بود که نیکولا یک نرم‌افزار متن باز است و در صورتی که بتونم، در بهبود کد آن شریک می‌شم. نگارش توسط زبان ساده‌ی مارک آپ (استفاده از reStructuredText یا Markdown) دلیل بعدی بود. سایر دلایلی که من رو برای استفاده از نیکولا ترغیب کرد رو می‌تونید در کتابچه‌ی راهنمای نیکولا بخونید.

چرا گیت‌هاب؟

من برای ذخیره‌سازی فایل‌های این وبسایت، گیت‌هاب رو انتخاب کردم. اهل فن از راحتی کار با سیستم مدیریت ورژن "گیت" و شهرت وبسایت "گیت‌هاب" آگاهی دارن و برای توضیح نحوه کار گیت و گیت‌هاب نیاز به یک یا حتی چند پست طولانی هست. پس به همین چند خط اکتفا می‌کنم. یکی از مهمترین دلایل این می‌تونه باشه که با استفاده از گیت‌هاب کارها می‌تونن اشتراکی انجام بشن، یعنی شما می‌تونید در صورت تمایل با فورک کردن پروژه وبسایت در گیت‌هاب، ایجاد تغییرات و بعد Pull Request، به من در رفع اشکالات و بهبود وبسایت کمک کنید.

محتوا

محتوای اینجا مثل اکثر وبلاگ‌های دیگه روزمره‌های منه و چیزایی که من باهاشون سر و کله می‌زنم. کسایی که من رو می‌شناسن می‌دونن که من یکی از طرفدارهای نرم‌افزارهای آزاد و متن‌بازم. سیستم‌عاملم لینوکسه (در حال حاضر جنتو)، فعلا با پایتون برنامه‌نویسی می‌کنم و به IT و مباحث مربوط به اطلاعات علاقه‌دارم. در عین حال سعی می‌کنم اینجا رو خیلی تخصصی نکنم و پست‌های متفاوت هم خواهم داشت. گاهی حتی دلنوشته هم خواهم نوشت که البته در اون صورت برچسب نوشته‌ها رو جدا می‌کنم.

آینده

  • در حال حاضر وبسایت در مراحل اولیه خودشه. قالب وبلاگ رو با دستکاری قالب‌های پیش‌فرض و اضافه و کم کردن بخش‌های مختلفش و تغییر رنگ‌بندی، ایجاد کردم و فکر می‌کنم در حالی که امکانات اولیه یک وبلاگ رو داره، ظاهرش هم خوب شده. مسلما در آینده تغییرات دیگه‌ای هم بهش خواهم داد، و خوشحال خواهم شد اگر با دادن ایده به من کمک کنید.
  • یکی از کارهای دیگه هم که دوست دارم انجام بدم، تغییر تاریخ میلادی پست‌ها، به تاریخ شمسی است، این کار سخت‌تر از اون چیزیه که به نظر می‌رسه و نیازمند دست‌کاری توی کدهای نیکولاست. در صورتی که در آینده فرصت کنم سعی خودم رو خواهم کرد.
  • اگر توجه کرده باشید آدرس ریشه‌ی وبسایت، شما رو به پوشه‌ی "blog" هدایت می‌کنه. قصد دارم صفحه‌ی ایندکس وبسایت رو به چیز معقول‌تری تغییر بدم.
  • احتمالا بعضی از نوشته‌های قبلی خودم رو به این وبسایت منتقل کنم.
[1] قابل کنترل از نظر من یعنی این که به دلیل راحتی، مجبور به درگیر شدن با یک سیستم مدیریت محتوای پیچیده با کدهای نامفهموم نشم.

دیدگاه‌‌‌ها

Comments powered by Disqus