Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Audio
MITHRA VAHISHTA is an ancient Persian ritual music piece inspired by Avestan, Mithraic, and pre-Islamic Iranian traditions.
https://www.youtube.com/watch?v=xDduhGz2f1g
Please open Telegram to view this post
VIEW IN TELEGRAM
COMPΞZ 🧬
TEGRA CMS 😉
کسایی که از ۱۵ سال پیش منو میشناسن میدونن یه زمانی یه CMS روسی رو به فارسی ترجمه کرده بودم، راست به چپش کردم... تمام استانداردهای فارسی رو بهش اضافه کردم؛ از پشتیبانی از تقویم گرفته تا ... اسمش بود Eleanor براش قالب طراحی کرده بودم و کلی ماژول و پلاگین اون زمون حسابی جامعهٔ ایرانی در موردش حرف میزد! ولی در نهایت نشد چیزی که میخواستم چون سیستم هستش روسی بود و توسعه دهندهٔ اصلیش من نبودم و با سواد ناقص اون موقع نتونستم اونطور که باید پیش ببرمش.
در نهایت یه احمق پیدا شد کل چیزی که سفارشی کرده بودم رو عین آب خوردن کپی کرد و با اسم خودشون بالا آورد و بعدشم به خاطر عدم توسعهدهندهٔ روسی و بعدش هم پشتیبانی فارسی از طرف من اونم کاسه کوزشو جمع کرد!
البته اون موقع گیتهاب هم در این حد جا نیفتاده بود، فرهنگ متن باز هم معنای پختهای نداشت. توسعه دهندهٔ اصلیش هم هم سن من بود ولی کلی تجربه وکلی مهارت در مورد ساختار یک سیستم مدیریت محتوای خوب کسب کردیم.
اون موقع زیاد روش تلاش کردم ولی اون دانشی که باید داشتم به قدر کافی نبود که یکی از بیخ بسازم. ولی در نهایت آرزوم بود سیستم مدیریت محتوایی رو که میخوام رو از صفر خودم بسازم.
تگرا چیزیه که قراره خیلیها رو شگفتزده کنه! چیزیه که از تجربهٔ گذشتم و دانش امروزم شکل گرفته! چیزیه که مشتریان وبسایت من بارها ازم خواستن و من همیشه گفتم باشه یه روزی میسازمش فعلاً با وردپرس حال کنید!
یادتون هم باشه ۲ سال پیش یه پیشنمایشی از نسخهٔ آلفاش داده بودم در مقایسه با وردپرس! خروجی مصرف منابع صدها برابر بهینهتر بود و کلی ویژگیهای خوب!
ولی در نهایت بد شانسی کل هاردم اون موقع سوخت و تمام سورس کدهایی که داشتم از بین رفت و تقریباً تا به چند وقت پیش توسعش رو بیخیال شده بودم (احمق بودم به گیتهاب اعتقادی نداشتم) و اگرنه زحماتم به باد نمیرفت.
اما بازسازی تمام ایدههایی که داشتم در قالب یک سیستم مدیریت محتوای خوب؛ اهمیت زیادی برای من داره و قراره علاقهمندان به CMS رو شگفتزده کنه.😎
در نهایت یه احمق پیدا شد کل چیزی که سفارشی کرده بودم رو عین آب خوردن کپی کرد و با اسم خودشون بالا آورد و بعدشم به خاطر عدم توسعهدهندهٔ روسی و بعدش هم پشتیبانی فارسی از طرف من اونم کاسه کوزشو جمع کرد!
البته اون موقع گیتهاب هم در این حد جا نیفتاده بود، فرهنگ متن باز هم معنای پختهای نداشت. توسعه دهندهٔ اصلیش هم هم سن من بود ولی کلی تجربه وکلی مهارت در مورد ساختار یک سیستم مدیریت محتوای خوب کسب کردیم.
اون موقع زیاد روش تلاش کردم ولی اون دانشی که باید داشتم به قدر کافی نبود که یکی از بیخ بسازم. ولی در نهایت آرزوم بود سیستم مدیریت محتوایی رو که میخوام رو از صفر خودم بسازم.
تگرا چیزیه که قراره خیلیها رو شگفتزده کنه! چیزیه که از تجربهٔ گذشتم و دانش امروزم شکل گرفته! چیزیه که مشتریان وبسایت من بارها ازم خواستن و من همیشه گفتم باشه یه روزی میسازمش فعلاً با وردپرس حال کنید!
یادتون هم باشه ۲ سال پیش یه پیشنمایشی از نسخهٔ آلفاش داده بودم در مقایسه با وردپرس! خروجی مصرف منابع صدها برابر بهینهتر بود و کلی ویژگیهای خوب!
ولی در نهایت بد شانسی کل هاردم اون موقع سوخت و تمام سورس کدهایی که داشتم از بین رفت و تقریباً تا به چند وقت پیش توسعش رو بیخیال شده بودم (احمق بودم به گیتهاب اعتقادی نداشتم) و اگرنه زحماتم به باد نمیرفت.
اما بازسازی تمام ایدههایی که داشتم در قالب یک سیستم مدیریت محتوای خوب؛ اهمیت زیادی برای من داره و قراره علاقهمندان به CMS رو شگفتزده کنه.
Please open Telegram to view this post
VIEW IN TELEGRAM
COMPΞZ 🧬
کسایی که از ۱۵ سال پیش منو میشناسن میدونن یه زمانی یه CMS روسی رو به فارسی ترجمه کرده بودم، راست به چپش کردم... تمام استانداردهای فارسی رو بهش اضافه کردم؛ از پشتیبانی از تقویم گرفته تا ... اسمش بود Eleanor براش قالب طراحی کرده بودم و کلی ماژول و پلاگین…
بخش مهمی از این ساختار این هست که تمام ویژگیهای پیشفرض یک سیستم مدیریت وب به واسطهٔ تگرا فراهم میشه.
یعنی ساخت و راهاندازی یک وبسایت، یک بلاگ، یک پایگاه خبری یا یک وبسایت خدماتی یا شرکتی یا حتی یک فروشگاه مثل دیجیکالا یا حتی فراتر در دنیای وب ۳ مبتنی بر بلاکچین.
اما موضوع مهمتر اینه که زیرساخت این سیستم محدود برای تفکر یک وبسایت ساز نیست؛ قابل گسترش و انعطافپذیره برای یک سیستم کاملاً بهینه و آیندهنگریش هست.
پشتیبانی از چند موتور بر مبنای نیاز کاربری مثل Sqlite و همچنین پشتیبانی از MySQL/MariaDB و از همه بهتر PostgreSQL کل دادههای وبسایت رو در ابعادی که مد نظر صاحبین کسبوکار هست رو پوشش میده. یعنی مثل سیستمهای کنونی دارای یک نوع دیتابیس نیست! موتور بر مبنای چیزی که نیاز هست قابل انتخابه و این یکی از مواردی هست که خیلی از دادهکاوها از نظر سیستماتیک بهش اهمیت میدن.
البته پشتیبانی زا Redis، Memcache و حتی DragonFly گزینههایی هستن که ساختار مدیریت داده رو با حداکثر بهرهوری مدیریت خواهد کرد یعنی موضوع بهینگی دادهها روی حافظه یکی از ویژگیهای مهم تگراست و صرفاً از سیستم بانک اطلاعاتی سنتی پشتیبانی نمیکنه.
هستهٔ اصلی کاملاً با C++23 هست، البته در نسخهٔ آلفا از استاندارد ۱۷ استفاده کرده بودم و با فریمورک Cutelyst که در نسخهٔ بازسازی شده سیستم کاملاً خود کفاست و وابستگی خاصی به فریمورکها یا کتابخانههای نوع سوم نداره مگر موارد مهم مانند OpenSSL و Boost برای موضوع مسیریابی آدرسها و برخی از لایههای ایمنی.
یک نکتهٔ جالب؛ بعید میدونم سیستم مدیریت محتوایی پیدا کنید که هم زمان از ساختار بلاکچین و وب سنتی پشتیبانی کنه. تگرا این ویژگی رو داره که بدون نیاز به استخدام توسعهدهندهٔ بلاکچین و صرف هزاران دلار هزینه، خودش سایتی رو برای شما ارائه کنه که از این ساختار پشتیبانی میکنه و به شما اجازه میده یک وبسایت با قابلیتهای تطبیق شدن با وب ۳ رو ارائه کنید.
البته، یه چیزی که قطعاً مهمه واسم اینه که، GENY سیستم اقتصادی درون برنامهای تگرا خواهد بود علاوه بر اینکه هر نوع درگاه بانکی ایرانی و خارجی رو پشتیبانی خواهد کرد، اما سیستم واحد و یکپارچهسازی درون هستهایش توکن جنی خواهد بود.
موضوع بعدی از صدها ویژگی دیگه که هنوز نمیخوام در موردش صحبتی کرده باشم اینه که تگرا قابلیت پشتیبانی از مهاجرت وبسایتهای کنونی به خصوص وردپرس رو به خودش خواهد داد یعنی شما میتونید یک وبسایت سنتی رو به یک وبسایت مدیرنیزه مطابق بالاترین استانداردها باز سازی کنید.
یعنی اطلاعات وبسایت کنونی شما با یک سیستم Migration درون برنامهای قابل انتقال خواهد بود.
از ویژگیهای جالب که از زمان سیستم Eleanor تبعیت میکنم، پشتیبانی از چند زبانه بودن سیستمه! یعنی شما به راحتی میتونید یک وبسایتی رو باهاش بالا بیارید که چند زبان رو به همراه استانداردهای قانونی و جغرافیایی و زمانی پشتیبانی کنه.
از نظر فنی چندین نکتهٔ جالب داره، یکی از اونها اینه که سیستم در اکثر بخشها به صورت Compile time توسعه یافته! یعنی تا جایی که میتونم دارم از ویژگیهای برجستهٔ استاندارد ۲۳ از سیپلاسپلاس تبعیت میکنم تا موضوع ایمنی و پایداری به حداکثر توان برسه.
از نظر گرافیک و طراحی قالب، تگرا قراره از استانداردهای کنونی پشتیبانی کنه! چون از Template engine اختصاصی بهره میبره و میتونه این امکان رو به طراحهای وبسایت بده که قالبی که میخوان رو با استاندارد دقیق وب براش بازسازی کنن (هرچند ویژگیهای طراحی بسیار بهتری رو هم خودش ارائه میکنه).
و یک مورد دیگه و جالبتر! تگرا از هوش مصنوعی هم پشتیبانی میکنه!
این سیستم این قابلیت رو میده که مدیران وبسایت به راحتی بتونن تولید محتوا و یا سفارشیسازی انجام بدن.
البته این بخش هنوز پخته نیست اما چشماندازم نسبت به این ویژگی اینه که در عصر هوش مصنوعی تگرا توجه ویژهای به پشتیبانی از مدلهای مختلفی از AI خواهد داشت.
یک مورد دیگه هم که بسیار بسیار مهمه و خیلی از سیستمهای مدیریت محتوا حتی نزدیکش هم نیستن، رعایت استاندارد از مصرف انرژی سبز هست. چیزی که ذاتاً PHP یا TS یا JS و هر اسکریپتی که باهاشون سیستم ساختن از همچین انتظاری به دورند.
جزئیات و ویژگیها بسیارند اما بماند تا بعد از اولین نسخهٔ قابل آزمایش خودتون خواهید دید.
یعنی ساخت و راهاندازی یک وبسایت، یک بلاگ، یک پایگاه خبری یا یک وبسایت خدماتی یا شرکتی یا حتی یک فروشگاه مثل دیجیکالا یا حتی فراتر در دنیای وب ۳ مبتنی بر بلاکچین.
اما موضوع مهمتر اینه که زیرساخت این سیستم محدود برای تفکر یک وبسایت ساز نیست؛ قابل گسترش و انعطافپذیره برای یک سیستم کاملاً بهینه و آیندهنگریش هست.
پشتیبانی از چند موتور بر مبنای نیاز کاربری مثل Sqlite و همچنین پشتیبانی از MySQL/MariaDB و از همه بهتر PostgreSQL کل دادههای وبسایت رو در ابعادی که مد نظر صاحبین کسبوکار هست رو پوشش میده. یعنی مثل سیستمهای کنونی دارای یک نوع دیتابیس نیست! موتور بر مبنای چیزی که نیاز هست قابل انتخابه و این یکی از مواردی هست که خیلی از دادهکاوها از نظر سیستماتیک بهش اهمیت میدن.
البته پشتیبانی زا Redis، Memcache و حتی DragonFly گزینههایی هستن که ساختار مدیریت داده رو با حداکثر بهرهوری مدیریت خواهد کرد یعنی موضوع بهینگی دادهها روی حافظه یکی از ویژگیهای مهم تگراست و صرفاً از سیستم بانک اطلاعاتی سنتی پشتیبانی نمیکنه.
هستهٔ اصلی کاملاً با C++23 هست، البته در نسخهٔ آلفا از استاندارد ۱۷ استفاده کرده بودم و با فریمورک Cutelyst که در نسخهٔ بازسازی شده سیستم کاملاً خود کفاست و وابستگی خاصی به فریمورکها یا کتابخانههای نوع سوم نداره مگر موارد مهم مانند OpenSSL و Boost برای موضوع مسیریابی آدرسها و برخی از لایههای ایمنی.
یک نکتهٔ جالب؛ بعید میدونم سیستم مدیریت محتوایی پیدا کنید که هم زمان از ساختار بلاکچین و وب سنتی پشتیبانی کنه. تگرا این ویژگی رو داره که بدون نیاز به استخدام توسعهدهندهٔ بلاکچین و صرف هزاران دلار هزینه، خودش سایتی رو برای شما ارائه کنه که از این ساختار پشتیبانی میکنه و به شما اجازه میده یک وبسایت با قابلیتهای تطبیق شدن با وب ۳ رو ارائه کنید.
البته، یه چیزی که قطعاً مهمه واسم اینه که، GENY سیستم اقتصادی درون برنامهای تگرا خواهد بود علاوه بر اینکه هر نوع درگاه بانکی ایرانی و خارجی رو پشتیبانی خواهد کرد، اما سیستم واحد و یکپارچهسازی درون هستهایش توکن جنی خواهد بود.
موضوع بعدی از صدها ویژگی دیگه که هنوز نمیخوام در موردش صحبتی کرده باشم اینه که تگرا قابلیت پشتیبانی از مهاجرت وبسایتهای کنونی به خصوص وردپرس رو به خودش خواهد داد یعنی شما میتونید یک وبسایت سنتی رو به یک وبسایت مدیرنیزه مطابق بالاترین استانداردها باز سازی کنید.
یعنی اطلاعات وبسایت کنونی شما با یک سیستم Migration درون برنامهای قابل انتقال خواهد بود.
از ویژگیهای جالب که از زمان سیستم Eleanor تبعیت میکنم، پشتیبانی از چند زبانه بودن سیستمه! یعنی شما به راحتی میتونید یک وبسایتی رو باهاش بالا بیارید که چند زبان رو به همراه استانداردهای قانونی و جغرافیایی و زمانی پشتیبانی کنه.
از نظر فنی چندین نکتهٔ جالب داره، یکی از اونها اینه که سیستم در اکثر بخشها به صورت Compile time توسعه یافته! یعنی تا جایی که میتونم دارم از ویژگیهای برجستهٔ استاندارد ۲۳ از سیپلاسپلاس تبعیت میکنم تا موضوع ایمنی و پایداری به حداکثر توان برسه.
از نظر گرافیک و طراحی قالب، تگرا قراره از استانداردهای کنونی پشتیبانی کنه! چون از Template engine اختصاصی بهره میبره و میتونه این امکان رو به طراحهای وبسایت بده که قالبی که میخوان رو با استاندارد دقیق وب براش بازسازی کنن (هرچند ویژگیهای طراحی بسیار بهتری رو هم خودش ارائه میکنه).
و یک مورد دیگه و جالبتر! تگرا از هوش مصنوعی هم پشتیبانی میکنه!
این سیستم این قابلیت رو میده که مدیران وبسایت به راحتی بتونن تولید محتوا و یا سفارشیسازی انجام بدن.
البته این بخش هنوز پخته نیست اما چشماندازم نسبت به این ویژگی اینه که در عصر هوش مصنوعی تگرا توجه ویژهای به پشتیبانی از مدلهای مختلفی از AI خواهد داشت.
یک مورد دیگه هم که بسیار بسیار مهمه و خیلی از سیستمهای مدیریت محتوا حتی نزدیکش هم نیستن، رعایت استاندارد از مصرف انرژی سبز هست. چیزی که ذاتاً PHP یا TS یا JS و هر اسکریپتی که باهاشون سیستم ساختن از همچین انتظاری به دورند.
جزئیات و ویژگیها بسیارند اما بماند تا بعد از اولین نسخهٔ قابل آزمایش خودتون خواهید دید.
COMPΞZ 🧬
بخش مهمی از این ساختار این هست که تمام ویژگیهای پیشفرض یک سیستم مدیریت وب به واسطهٔ تگرا فراهم میشه. یعنی ساخت و راهاندازی یک وبسایت، یک بلاگ، یک پایگاه خبری یا یک وبسایت خدماتی یا شرکتی یا حتی یک فروشگاه مثل دیجیکالا یا حتی فراتر در دنیای وب ۳ مبتنی…
احتمالاً ذهن تکنیکی بعضیها بره به سمت این که چه نیازی هست چند تا موتور بانک اطلاعاتی پشتیبانی بشه همون MySQL کافیه شاید؟!
ولی خب یکی از تصمیمهای مهم در طراحی Tegra CMS اینه که فقط به یک موتور دیتابیس محدود نباشه.
دلیلش این نیست که صرفاً بگیم چندتا دیتابیس رو پشتیبانی میکنیم؛ دلیلش اینه که برای سالها من با همهٔ این موتورها کار کردم میدونم مزایا و معایب و سطح تواناییهایی که دارن چیه؛ هدف اینه که کاربر و توسعهدهنده با توجه به نوع پروژه، زیرساخت، تجربه قبلی و نیاز واقعی خودش بتونه انتخاب درستی داشته باشه.
برای من PostgreSQL انتخاب پیشنهادی و پیشفرضه؛ چون برای یک وبسایت پیچیده ومدرن، جدی و قابل توسعه، از نظر transaction، integrity، constraintها، indexing، JSONB، پایداری و مقیاسپذیری انتخاب بسیار قدرتمندیه به خصوص وقتی ترکیبش کنی با Redis و یا DrogonFly که خوراک شرکتها و سازمانهای بزرگ محسوب میشه.
از طرفی در دنیای واقعی، همه روی PostgreSQL نیستن یا از طرفی دلیلی نمیبینم که فقط روی MySQL سیستم رو خلاصه کنم!
در مورد موتور MariaDB هم باید یک گزینه مستقل دیده بشه، نه فقط یک اسم دیگر برای MySQL. چون در عمل، تفاوتهایی وجود داره که در مهاجرت، قابلیتها، رفتار SQL و نگهداری بلندمدت خودش رو نشون میده.
و اما SQLite هم جای خودش رو داره؛ برای توسعه، تست، دمو، نمونهسازی سریع یا پروژههای خیلی کوچک یا وبسایتهای بسیار مینیمال.
هدف Tegra اینه که CMS فقط روی یک مسیر قفل نشه. کاربر باید موقع نصب بتونه آگاهانه انتخاب کنه:
قدرت و پایداری PostgreSQL، سازگاری گسترده MySQL، انعطاف MariaDB، یا سادگی SQLite برای محیطهای سبکتر.
هرچند ساختن درایورهای مشترک و لایهٔ سوئیچ بسیار سخت بود اما برای من پشتیبانی از چند موتور دیتابیس یعنی آزادی انتخاب، سازگاری با زیرساختهای مختلف، جلوگیری از وابستگی اجباری، و ساختن یک CMS که از همان ابتدا برای استفاده واقعی و بلندمدت طراحی شده.
ولی خب یکی از تصمیمهای مهم در طراحی Tegra CMS اینه که فقط به یک موتور دیتابیس محدود نباشه.
دلیلش این نیست که صرفاً بگیم چندتا دیتابیس رو پشتیبانی میکنیم؛ دلیلش اینه که برای سالها من با همهٔ این موتورها کار کردم میدونم مزایا و معایب و سطح تواناییهایی که دارن چیه؛ هدف اینه که کاربر و توسعهدهنده با توجه به نوع پروژه، زیرساخت، تجربه قبلی و نیاز واقعی خودش بتونه انتخاب درستی داشته باشه.
برای من PostgreSQL انتخاب پیشنهادی و پیشفرضه؛ چون برای یک وبسایت پیچیده ومدرن، جدی و قابل توسعه، از نظر transaction، integrity، constraintها، indexing، JSONB، پایداری و مقیاسپذیری انتخاب بسیار قدرتمندیه به خصوص وقتی ترکیبش کنی با Redis و یا DrogonFly که خوراک شرکتها و سازمانهای بزرگ محسوب میشه.
از طرفی در دنیای واقعی، همه روی PostgreSQL نیستن یا از طرفی دلیلی نمیبینم که فقط روی MySQL سیستم رو خلاصه کنم!
در مورد موتور MariaDB هم باید یک گزینه مستقل دیده بشه، نه فقط یک اسم دیگر برای MySQL. چون در عمل، تفاوتهایی وجود داره که در مهاجرت، قابلیتها، رفتار SQL و نگهداری بلندمدت خودش رو نشون میده.
و اما SQLite هم جای خودش رو داره؛ برای توسعه، تست، دمو، نمونهسازی سریع یا پروژههای خیلی کوچک یا وبسایتهای بسیار مینیمال.
هدف Tegra اینه که CMS فقط روی یک مسیر قفل نشه. کاربر باید موقع نصب بتونه آگاهانه انتخاب کنه:
قدرت و پایداری PostgreSQL، سازگاری گسترده MySQL، انعطاف MariaDB، یا سادگی SQLite برای محیطهای سبکتر.
هرچند ساختن درایورهای مشترک و لایهٔ سوئیچ بسیار سخت بود اما برای من پشتیبانی از چند موتور دیتابیس یعنی آزادی انتخاب، سازگاری با زیرساختهای مختلف، جلوگیری از وابستگی اجباری، و ساختن یک CMS که از همان ابتدا برای استفاده واقعی و بلندمدت طراحی شده.
COMPΞZ 🧬
احتمالاً ذهن تکنیکی بعضیها بره به سمت این که چه نیازی هست چند تا موتور بانک اطلاعاتی پشتیبانی بشه همون MySQL کافیه شاید؟! ولی خب یکی از تصمیمهای مهم در طراحی Tegra CMS اینه که فقط به یک موتور دیتابیس محدود نباشه. دلیلش این نیست که صرفاً بگیم چندتا دیتابیس…
بخش مهمی از تجربهٔ من در ساخت چنین سیستمی، فقط به خاطر آشنایی یا تسلط به مفهوم کلی «سیستم مدیریت محتوا» نیست.
سالها یک سیستم مدیریت بسیار پیچیدهٔ آمریکایی و جدی مثل Invision Power Board رو بررسی کردم، تحلیل کردم، تجزیه کردم و از نزدیک فهمیدم چنین سیستمهایی چقدر لایه، جزئیات، منطق و معماری پشت خودشون دارن.
ساخت یک CMS واقعی فقط این نیست که چند صفحه، چند جدول دیتابیس، یک پنل مدیریت و چند فرم بسازی.
یک سیستم مدیریت محتوای جدی یعنی:
مدیریت کاربر، نقشها، دسترسیها، امنیت، سشنها، تنظیمات، زبانها، قالبها، افزونهها، فایلها، کش، دیتابیس، مهاجرت، لاگها، خطاها، نصب و راهاندازی، بهروزرسانی، توسعهپذیری و دهها بخش ریز و درشت دیگه که باید کنار هم درست کار کنن.
سیستمهایی مثل IPB (که برای سالها هم سیستم وبسایت خودم iostream بوده) حاصل چند روز و چند ماه نیستن؛ برای ساخت چنین محصولاتی سالها زمان، تجربه، آزمون و خطا، بازطراحی و بلوغ فنی صرف شده.
برای همین وقتی از Tegra حرف میزنم، منظورم یک CMS ساده یا انجام دهندهٔ یک سری کارهای تکراری پیش پا افتاده و سطحی نیست که با یه وردپرس هم میشه راهاندازیش کرد.
تگرا قراره نتیجهٔ سالها نگاه کردن، تحلیل کردن، تجربه کردن و فهمیدن پیچیدگیهای واقعی چنین سیستمهایی باشه؛ اما با یک هدف روشنتر:
قدرت زیاد در پشت صحنه، سادگی واقعی برای کاربر.
سالها یک سیستم مدیریت بسیار پیچیدهٔ آمریکایی و جدی مثل Invision Power Board رو بررسی کردم، تحلیل کردم، تجزیه کردم و از نزدیک فهمیدم چنین سیستمهایی چقدر لایه، جزئیات، منطق و معماری پشت خودشون دارن.
ساخت یک CMS واقعی فقط این نیست که چند صفحه، چند جدول دیتابیس، یک پنل مدیریت و چند فرم بسازی.
یک سیستم مدیریت محتوای جدی یعنی:
مدیریت کاربر، نقشها، دسترسیها، امنیت، سشنها، تنظیمات، زبانها، قالبها، افزونهها، فایلها، کش، دیتابیس، مهاجرت، لاگها، خطاها، نصب و راهاندازی، بهروزرسانی، توسعهپذیری و دهها بخش ریز و درشت دیگه که باید کنار هم درست کار کنن.
سیستمهایی مثل IPB (که برای سالها هم سیستم وبسایت خودم iostream بوده) حاصل چند روز و چند ماه نیستن؛ برای ساخت چنین محصولاتی سالها زمان، تجربه، آزمون و خطا، بازطراحی و بلوغ فنی صرف شده.
برای همین وقتی از Tegra حرف میزنم، منظورم یک CMS ساده یا انجام دهندهٔ یک سری کارهای تکراری پیش پا افتاده و سطحی نیست که با یه وردپرس هم میشه راهاندازیش کرد.
تگرا قراره نتیجهٔ سالها نگاه کردن، تحلیل کردن، تجربه کردن و فهمیدن پیچیدگیهای واقعی چنین سیستمهایی باشه؛ اما با یک هدف روشنتر:
قدرت زیاد در پشت صحنه، سادگی واقعی برای کاربر.
COMPΞZ 🧬
بخش مهمی از تجربهٔ من در ساخت چنین سیستمی، فقط به خاطر آشنایی یا تسلط به مفهوم کلی «سیستم مدیریت محتوا» نیست. سالها یک سیستم مدیریت بسیار پیچیدهٔ آمریکایی و جدی مثل Invision Power Board رو بررسی کردم، تحلیل کردم، تجزیه کردم و از نزدیک فهمیدم چنین سیستمهایی…
از همه جالبتر اینکه چنین سیستمهایی عموماً با زبانهای اسکریپتی مثل PHP ساخته میشن، نه با یک زبان کامپایلری و خروجی باینری.
حالا فرض کنیم یک سیستم مدیریت محتوای جدی، پیچیده و قابل توسعه، به جای اینکه روی مدل رایج اسکریپتی ساخته بشه، با یک زبان کاملاً کامپایلری شکل بگیره؛ نتیجه چه خواهد شد؟
خب موضوع فقط «سرعت» نیست!
وقتی یک CMS به شکل باینری اجرا میشه، میتونه مصرف منابع بسیار بسیار پایینتری داشته باشه، فشار کمتری به سرور وارد کنه، چیزی که الآن به خاطرش کلی هزینه صرف میکنن! با حافظه و پردازنده بهینهتر رفتار کنه، هزینهٔ میزبانی رو کاهش بده و در مقیاس بالا انرژی کمتری مصرف کنه و بره در فهرست مصارف انرژی سبز.
از نظر امنیت هم یک تفاوت جدی وجود داره؛ در مدلهای اسکریپتی، بخش زیادی از منطق سیستم به صورت فایلهای قابل خواندن و تغییر روی سرور وجود داره و موجب راحتی نفوذ و هک در سیستم میشه. اما در یک سیستم کامپایلشده، خروجی نهایی میتونه کنترلشدهتر، سختتر برای دستکاری مستقیم، و مناسبتر برای معماریهای امن باشه.
از طرف دیگه، چنین انتخابی بدون هزینه نیست.
ساخت CMS با یک زبان کامپایلری سختتره، دانش بالاتری میخواد و توسعهاش پیچیدهتره. build system، dependencyها، deployment، سازگاری با سرورها، extension system، pluginها، hot reload، migration و تجربهٔ توسعهدهنده نیاز به طراحی بسیار دقیقتری دارن.
من قبل از اینکه استاد ++C باشم؛ برای سالها تسلط خوبی در PHP داشتم و میدونم در چنین زبانهای اسکریپتی، کاربر فایل رو آپلود میکنه، تغییر میده، رفرش میکنه و نتیجه رو میبینه. خب این خیلی ساده و جالبه! اما در یک سیستم باینری، همهچیز باید مهندسیشدهتر باشه، از نصب و بهروزرسانی گرفته تا ماژولها، افزونهها، قالبها و ارتباط با دیتابیس.
اما همین سختی، اگر درست حل بشه، تبدیل به قدرت عجیبی میشه به خصوص وقتی صحبت حساسیت و ایمنی در وبسایتهای حوزهٔ وب ۳ میشه.
این یعنی کاربر میتونه همچنان تجربهای ساده داشته باشه، اما پشت صحنه یک موتور سریع، امن، بهینه و کامپایلشده در حال کار باشه و مسائل مربوط به ریسکها به حداقل ممکن برسه.
مزیتها روشنه:
سرعت بالاتر،
مصرف منابع بسیار کمتر،
هزینهٔ میزبانی بسیار پایینتر،
ایمنی خارقالعاده،
کنترل بهتر در زمان اجرا،
پایداری بیشتر در زمام اجرا،
و امکان ساخت یک هستهٔ قدرتمندتر برای آینده.
معایبش هم حقیقتاً:
پیچیدگی توسعه بوده که برای همین هم مدت زیادی طول کشیده تا بتونم سیستم رو باز سازی کنم.
آیندهٔ CMS فقط این نیست که محتوا رو مدیریت کنه؛
باید زیرساخت، امنیت، توسعه، هوش مصنوعی، هزینه، مصرف انرژی و تجربهٔ راهاندازی رو هم مدیریت کنه.
خودم بخوام کل این ماجرا رو خلاصه کنم در یک کلام میگم:
حالا فرض کنیم یک سیستم مدیریت محتوای جدی، پیچیده و قابل توسعه، به جای اینکه روی مدل رایج اسکریپتی ساخته بشه، با یک زبان کاملاً کامپایلری شکل بگیره؛ نتیجه چه خواهد شد؟
خب موضوع فقط «سرعت» نیست!
وقتی یک CMS به شکل باینری اجرا میشه، میتونه مصرف منابع بسیار بسیار پایینتری داشته باشه، فشار کمتری به سرور وارد کنه، چیزی که الآن به خاطرش کلی هزینه صرف میکنن! با حافظه و پردازنده بهینهتر رفتار کنه، هزینهٔ میزبانی رو کاهش بده و در مقیاس بالا انرژی کمتری مصرف کنه و بره در فهرست مصارف انرژی سبز.
از نظر امنیت هم یک تفاوت جدی وجود داره؛ در مدلهای اسکریپتی، بخش زیادی از منطق سیستم به صورت فایلهای قابل خواندن و تغییر روی سرور وجود داره و موجب راحتی نفوذ و هک در سیستم میشه. اما در یک سیستم کامپایلشده، خروجی نهایی میتونه کنترلشدهتر، سختتر برای دستکاری مستقیم، و مناسبتر برای معماریهای امن باشه.
از طرف دیگه، چنین انتخابی بدون هزینه نیست.
ساخت CMS با یک زبان کامپایلری سختتره، دانش بالاتری میخواد و توسعهاش پیچیدهتره. build system، dependencyها، deployment، سازگاری با سرورها، extension system، pluginها، hot reload، migration و تجربهٔ توسعهدهنده نیاز به طراحی بسیار دقیقتری دارن.
من قبل از اینکه استاد ++C باشم؛ برای سالها تسلط خوبی در PHP داشتم و میدونم در چنین زبانهای اسکریپتی، کاربر فایل رو آپلود میکنه، تغییر میده، رفرش میکنه و نتیجه رو میبینه. خب این خیلی ساده و جالبه! اما در یک سیستم باینری، همهچیز باید مهندسیشدهتر باشه، از نصب و بهروزرسانی گرفته تا ماژولها، افزونهها، قالبها و ارتباط با دیتابیس.
اما همین سختی، اگر درست حل بشه، تبدیل به قدرت عجیبی میشه به خصوص وقتی صحبت حساسیت و ایمنی در وبسایتهای حوزهٔ وب ۳ میشه.
این یعنی کاربر میتونه همچنان تجربهای ساده داشته باشه، اما پشت صحنه یک موتور سریع، امن، بهینه و کامپایلشده در حال کار باشه و مسائل مربوط به ریسکها به حداقل ممکن برسه.
مزیتها روشنه:
سرعت بالاتر،
مصرف منابع بسیار کمتر،
هزینهٔ میزبانی بسیار پایینتر،
ایمنی خارقالعاده،
کنترل بهتر در زمان اجرا،
پایداری بیشتر در زمام اجرا،
و امکان ساخت یک هستهٔ قدرتمندتر برای آینده.
معایبش هم حقیقتاً:
پیچیدگی توسعه بوده که برای همین هم مدت زیادی طول کشیده تا بتونم سیستم رو باز سازی کنم.
آیندهٔ CMS فقط این نیست که محتوا رو مدیریت کنه؛
باید زیرساخت، امنیت، توسعه، هوش مصنوعی، هزینه، مصرف انرژی و تجربهٔ راهاندازی رو هم مدیریت کنه.
خودم بخوام کل این ماجرا رو خلاصه کنم در یک کلام میگم:
Super High-End.
C++ is not a language for people who only want quick results. It is a language for people who want to create things that seem impossible.
این باگ نمایشی فارکستره! نگران توکنهاتون نباشید.
https://farcaster.xyz/compez.eth/0xad91095e
بهشون گزارش هم دادم باگه جنی نیست، باگه فارکستره.✔️
برای اطمینان از دیبانک بررسی کنید:
زیر پستی که زدم براشون هم خواستین تأیید کنید که باگ رو درستش کنن.
برای دسترسی به کیف فارکستر کلمات بازیابی رو توی حسابتون از تنظیمات فارکستر بگیرید توی ربیولت واردش کنید؛ اینطوری نیازی ندارید مدام توی فارکستر بررسی کنید؛ اونجا پر از باگ هست ذاتاً.
https://farcaster.xyz/compez.eth/0xad91095e
بهشون گزارش هم دادم باگه جنی نیست، باگه فارکستره.
برای اطمینان از دیبانک بررسی کنید:
https://debank.com/profile/{yourwallet_address}زیر پستی که زدم براشون هم خواستین تأیید کنید که باگ رو درستش کنن.
برای دسترسی به کیف فارکستر کلمات بازیابی رو توی حسابتون از تنظیمات فارکستر بگیرید توی ربیولت واردش کنید؛ اینطوری نیازی ندارید مدام توی فارکستر بررسی کنید؛ اونجا پر از باگ هست ذاتاً.
Please open Telegram to view this post
VIEW IN TELEGRAM
لعنت بهت بیاد مسئول، وزیر، هر کوفت و زهرهماری که مملکت رو اداره میکنی! با اون ۸۰ روز قطعی چنان ضربه زدی بهمون که هنوز نمیدونیم چه غلطی داریم میکنیم! درست ۸ سال منو به عقب روندی پدر سکگگگگ فلان فلان شده! لعنت خدا به سیر تا پیازتون بیاد الهی آمین.
جوونیمون عمرمون تباه شد با چهارتا مسائل شخمی که به یه آفریقایی بگی خندش میگیره.
جوونیمون عمرمون تباه شد با چهارتا مسائل شخمی که به یه آفریقایی بگی خندش میگیره.
فلان تابع یا فلان کد مشکل داشت اصلاح کردم یا نکردم...
یه پرامپت نوشتم با Fable 5 که به صورت یک اسکریپت شِل هربار بعد از تغییرات کل پروژه رو شخم میزنه الآن هربار کامیت میزنم خودکار بهروز رسانی وضعیت میکنه در فازها رو خیلی تمیز مستند میکنه در بخشهای مختلف بهم میگه که در چه وضعیتی هستیم.
همینه! دستیار و کارآموز خوب یعنی همین. 👊🏼
Please open Telegram to view this post
VIEW IN TELEGRAM
سوأل پر تکرار و مهم این روزها.
آیا برنامهنویسی به واسطهٔ هوش مصنوهی از بین میره؟
از نظر من که میلیونها دستور نوشتم؛ برنامه نویسی چیز قابل حذفی نیست؛ این یک مهارت از درک، تفسیر و تبدیل ذهن به دستورالعملهای قابل درک توسط کامپیوتر هست؛ اما کد نویسی به عنوان یک لایهٔ فرساینده و وقتگیر قطعاً حذف میشه و بیشتر میره سمت طراحی سیستم و معماری چیزی که بهش میگیم دانش.
ارزش اصلی برنامهنویس دیگه تعداد خط کدی که مینویسه نیست، بلکه درک معنا و مفهومش هست.
کدنویسی در اصل یک لایه بین ذهن انسان و ماشین به حساب میاد؛ یعنی ما ایده، منطق و معماری رو به زبانی تبدیل میکنیم که کامپیوتر بفهمه. حالا هوش مصنوعی داره بخش بزرگی از همین لایهٔ رو حذف میکنه! خب چه چیزی بهتر از این؟ از چی میترسید؟ 😄 از خداتونم باشه بابا تا دیروز به خاطر تایپ کردن انگشتدرد، سردرد، گردن درد، همه چی درد داشتیم الآن از این به بعد بیشتر میتونی به سلامتت فکر کنی بیشتر فکر کنی به جای اینکه بیشتر تایپ کنی.
پس آینده فقط برای کسی نیست که سریعتر کد بنویسه، برای کسیه که بهتر میفهمه، بهتر طراحی میکنه، بهتر نظارت میکنه و خروجی AI رو از دید مهندسی، آزمایش، امنیت و استاندارد و از ممیزی رد میکنه.
این سوألها خیلی پیش پا افتادن، هیچوقت راجع به فناوری سریع گارد نگیرید؛ بشینید فکر کنید که چرا باید ازش یاد بگیرید.
آیا برنامهنویسی به واسطهٔ هوش مصنوهی از بین میره؟
از نظر من که میلیونها دستور نوشتم؛ برنامه نویسی چیز قابل حذفی نیست؛ این یک مهارت از درک، تفسیر و تبدیل ذهن به دستورالعملهای قابل درک توسط کامپیوتر هست؛ اما کد نویسی به عنوان یک لایهٔ فرساینده و وقتگیر قطعاً حذف میشه و بیشتر میره سمت طراحی سیستم و معماری چیزی که بهش میگیم دانش.
ارزش اصلی برنامهنویس دیگه تعداد خط کدی که مینویسه نیست، بلکه درک معنا و مفهومش هست.
کدنویسی در اصل یک لایه بین ذهن انسان و ماشین به حساب میاد؛ یعنی ما ایده، منطق و معماری رو به زبانی تبدیل میکنیم که کامپیوتر بفهمه. حالا هوش مصنوعی داره بخش بزرگی از همین لایهٔ رو حذف میکنه! خب چه چیزی بهتر از این؟ از چی میترسید؟ 😄 از خداتونم باشه بابا تا دیروز به خاطر تایپ کردن انگشتدرد، سردرد، گردن درد، همه چی درد داشتیم الآن از این به بعد بیشتر میتونی به سلامتت فکر کنی بیشتر فکر کنی به جای اینکه بیشتر تایپ کنی.
حذف شدنِ تایپ کردن کد، به معنی حذف شدن مهندسی نرمافزار نیست. شما باید بدونید معماری چیست! فکر کردن به مسأله و روش حل مسأله.
پس آینده فقط برای کسی نیست که سریعتر کد بنویسه، برای کسیه که بهتر میفهمه، بهتر طراحی میکنه، بهتر نظارت میکنه و خروجی AI رو از دید مهندسی، آزمایش، امنیت و استاندارد و از ممیزی رد میکنه.
این سوألها خیلی پیش پا افتادن، هیچوقت راجع به فناوری سریع گارد نگیرید؛ بشینید فکر کنید که چرا باید ازش یاد بگیرید.
COMPΞZ 🧬
سوأل پر تکرار و مهم این روزها. آیا برنامهنویسی به واسطهٔ هوش مصنوهی از بین میره؟ از نظر من که میلیونها دستور نوشتم؛ برنامه نویسی چیز قابل حذفی نیست؛ این یک مهارت از درک، تفسیر و تبدیل ذهن به دستورالعملهای قابل درک توسط کامپیوتر هست؛ اما کد نویسی به عنوان…
والا دیگه از همین طومارهام مشخصه یه زمانی یه بار هم کلمه یا غلط املائی نداشتم! حالا انگشت درد یا مشکل کلیدهای صفحه کلید ومشکلات ناشی از این جور مسائل روی اعصابه! بسه دیگه چقدر تایپ کنیم خسته شدیم! من از خدامه این تایپ کردنها حذف بشن چرا که نه. 😎
COMPΞZ 🧬
پس آینده فقط برای کسی نیست که سریعتر کد بنویسه، برای کسیه که بهتر میفهمه، بهتر طراحی میکنه، بهتر نظارت میکنه و خروجی AI رو از دید مهندسی، آزمایش، امنیت و استاندارد و از ممیزی رد میکنه.
دقت کن که این موج منجر به بیشتر شدن برنامهها، کدها، و خروجیها میشه؛ یعنی اشباع شدن و افزایش کمیتِ کدهای تولید شده توسط هوش مصنوعی.
یعنی رسماً شاهد میلیاردها میلیارد کد اسپموار خواهیم بود که همشون بیهدف و شخماتیک توسعه یافتن که فقط یکی گفته بساز! اونم ساخته! حالا با چه معماریای؟ با چه مکانیزمی؟ الله اعلم!
همین موضوع باعث رقابت شدید در سطح کیفی و استانداردهای ممیزی خواهد شد.
اونی که پشتش تفکر مهندسی وجود داشته موفق خواهد بود.
بقیه میره زبالهدونی! حتی اگه ادعا کنی که سیستمعامل نوشتی.😉
یعنی رسماً شاهد میلیاردها میلیارد کد اسپموار خواهیم بود که همشون بیهدف و شخماتیک توسعه یافتن که فقط یکی گفته بساز! اونم ساخته! حالا با چه معماریای؟ با چه مکانیزمی؟ الله اعلم!
همین موضوع باعث رقابت شدید در سطح کیفی و استانداردهای ممیزی خواهد شد.
اونی که پشتش تفکر مهندسی وجود داشته موفق خواهد بود.
بقیه میره زبالهدونی! حتی اگه ادعا کنی که سیستمعامل نوشتی.😉
COMPΞZ 🧬
به این تصویر دقت کن.
و باز هم میرسم به تأکید بر مثلث دانش. 👋🏼 چیزهایی هستند که ما نمیدانیم که نمیدانیم.
هوش مصنوعی این فرصت رو به شما میده که بتونی به همین چیزهایی که نمیدونی بیشتر فکر کنی.
هوش مصنوعی این فرصت رو به شما میده که بتونی به همین چیزهایی که نمیدونی بیشتر فکر کنی.