code2 - کد۲
351 subscribers
144 photos
63 videos
1 file
141 links
کد۲
💻 برنامه‌نویسی، فناوری و استارتاپ
Download Telegram
Media is too big
VIEW IN TELEGRAM
معرفی اپلیکیشن هوشیار

هوشیار نرم افزاری است که در مورد تغذیه سالم و بهبود فعالیت بدنی با شما گفتگو می‌کنه. در ورژن جدید سعی کردیم با استفاده از حافظه بلند مدت در هوش مصنوعی یا استفاده به صورت memory augmented بتوانیم گفتگوی صمیمی تر و نزدیک تری به گفتگوی انسان داشته باشیم.
تجربه شرکت در رویداد GenX بسیار ارزشمند بود و مشوقی بود برای علاقه بیشتر به هوش مصنوعی و تمرینی برای توسعه بهتر پروتوتایپ ایده‌های کسب و کار.

GetHooshyar.ir

@code2_ir
خدا رحمت کنه صابر راستی‌کردار رو.
چه خدمتی کرد به مردم.
خدا جد و آبادش رو بیامرزه.
یه قابلیت خوبی که توی کروم و brave هست و من تازه پیداش کردم اینه که می‌تونید کل یک تب رو به یکباره bookmark کنید. برای افرادی مثل من میتونه خوب باشه :) که هزار تا تب باز می‌کنم و بعد هم می‌ترسم که بعدا این ها رو گم کنم یا به هوای این که یه روزی میخونمشون همه رو باز نگه می‌دارم! یوهو بعد سه چهار روز می‌بینیم ۵ تا ویندوز باز کردم رو هر کدوم فلان قدر تب باز کردم 😅

@code2_ir
لیستی از بهترین ابزارهای هوش مصنوعی ۲۰۲۴

https://hamrah.academy/blog/ai-tools/



@code2_ir
امان از این nextjs
بچه‌ی زرنگ اما بازیگوش!
In a Next.js app router project, data can be fetched in multiple places depending on the nature of the data, rendering strategy, and whether the data needs to be accessed at build time, on the server, or on the client. Here’s a breakdown of where to fetch data in Next.js’s app router and when each is appropriate:

### 1. Server Components (default in app directory)
- Where: Fetch data directly within server components, like your page.tsx or other components under the app directory.
- When: Ideal for server-only data, sensitive data, or data that doesn’t need client-side interactivity. Server components can fetch data using async functions and make use of server-only packages (e.g., databases).
- Example:
     import { PrismaClient } from "@prisma/client";

export default async function Page() {
const prisma = new PrismaClient();
const data = await prisma.someModel.findMany();

return (
<div>
{/* Render data */}
</div>
);
}

- Considerations: Server components do not increase the JavaScript sent to the client. However, since they are server-rendered, you may need additional client-side components if you want interactivity.

### 2. Client Components (use use client directive)
- Where: If you need client-side interactivity, mark the component with use client at the top and use data-fetching hooks like useEffect.
- When: Useful for data that requires client-side interactivity, like managing local state, dynamic data fetching (especially based on user interactions), or when using APIs that are only available on the client.
- Example:
     "use client";
import { useState, useEffect } from 'react';

export default function ClientComponent() {
const [data, setData] = useState(null);

useEffect(() => {
async function fetchData() {
const response = await fetch('/api/data');
const result = await response.json();
setData(result);
}
fetchData();
}, []);

return <div>{data ? JSON.stringify(data) : 'Loading...'}</div>;
}

- Considerations: Client components increase the JavaScript bundle size sent to the client, so they should be used when necessary.

### 3. API Routes
- Where: Use pages/api to create backend API endpoints, which can be called from both server and client components.
- When: Use API routes when you want to keep logic (like authentication, session checks, or data manipulation) separate from the component. This is especially useful for POST requests, sensitive data handling, or operations that don’t need to be part of the server-rendering flow.
- Example:
     // pages/api/data.ts
import { NextApiRequest, NextApiResponse } from 'next';
import { PrismaClient } from '@prisma/client';

export default async function handler(req: NextApiRequest, res: NextApiResponse) {
const prisma = new PrismaClient();
const data = await prisma.someModel.findMany();
res.status(200).json(data);
}

- Considerations: API routes offer more flexibility and can be used by both server and client components, which is useful for actions like form submissions or fetching data on demand.
### 4. Middleware (for authentication and access control)
- Where: Use a middleware.ts file in the root directory.
- When: Middleware is useful for route-based logic, like authentication or role-based access control, without directly fetching data for rendering. Middleware runs on the edge and can redirect users based on conditions.
- Example:
     // middleware.ts
import { NextResponse } from 'next/server';

export async function middleware(request) {
const isAuthenticated = checkAuth(request); // Define your own check
if (!isAuthenticated) return NextResponse.redirect(new URL('/login', request.url));
return NextResponse.next();
}

export const config = {
matcher: '/protected/:path*', // Apply to specific routes
};

- Considerations: Middleware is limited in functionality compared to traditional API routes but is highly efficient for edge-based logic.

### 5. Static Fetching (using generateStaticParams for Static Site Generation)
- Where: If the data doesn’t change often and you don’t need real-time updates, use static generation with generateStaticParams or getStaticProps in the app directory.
- When: For data that doesn’t change frequently (e.g., blog posts, product pages) or when optimizing for SEO by generating pages at build time.
- Example:
     import { PrismaClient } from '@prisma/client';

export async function generateStaticParams() {
const prisma = new PrismaClient();
const items = await prisma.someModel.findMany();
return items.map(item => ({ id: item.id }));
}


### Summary
- Use Server Components by default for data fetching when rendering on the server.
- Use Client Components for client-side interactions or dynamic data that changes after initial render.
- Use API Routes for encapsulating backend logic or for requests initiated on the client-side.
- Use Middleware for lightweight route protection or conditionally redirecting users.
- Use Static Fetching for rarely changing content that benefits from static generation (like blog posts).

Each strategy is flexible, and you can mix these approaches depending on the needs of each part of your app.
شرکت VMware که چند پیش وقت استفاده از دو نرم افزار حرفه ای ساخت ماشین مجازی Workstation Pro و Fusion Pro رو برای استفاده شخصی رایگان کرده بود، حالا اعلام کرده که استفاده از اونها حالا برای تمام کاربردها و حتی استفاده تجاری هم رایگان هست و شرکتها هم میتونن از این به بعد به صورت مجانی از اونها استفاده کنن.

این شرکت سال پیش توسط Broadcom خریده شد و تغییر سیاست گسترده ای در این شرکت رو به دنبال داشت که از جمله اونها تعطیلی نسخه مجانی ESXi و تبدیل شدن لایسنسهای خرید یک باره به اشتراک ماهانه و سالانه بود که باعث ناراحتی کاربران زیادی شد و شرکتهای مختلفی برای ماشینهای مجازیشون به نرم افزارهای رقیب مهاجرت کردن.

حالا این شرکت باز هم یک کار مفید انجام داده و کاربران ویندوز و لینوکس میتونن با Workstation Pro و کاربران مک Fusion Pro به طور رایگان میتونن ماشین مجازی بالا بیارن و روی اون سیستم عاملهای مختلف نصب کنن. این نرم افزارها از اینجا قابل دانلود هستن ولی قبل از دانلود نیاز به ساخت اکانت برودکام دارین.

🔎 theverge

📍 @TechTube
شب چهارشنبه غافلگیری اموات صلوات
This media is not supported in your browser
VIEW IN TELEGRAM
علت اوقاتی که بی‌خواب می‌شی

@code2_ir
This media is not supported in your browser
VIEW IN TELEGRAM
ارث بری در برنامه نویسی شئ گرا به روایت تصویر :)

@code2_ir
This media is not supported in your browser
VIEW IN TELEGRAM
وقتی به یه برنامه نویس ارشد میگن که هوش مصنوعی قرار جاتو بگیره

#طنز

@code2_ir
توی اسپم هام اینو دیدم. دستش درد نکنه خیلی بی حوصله بودم حداقل روزم رو ساخت 😂

فقط اون best regards آخرش 🫠😁

این یه ایمیل قدیمی من هست که hotmail هست و شاید قدیمی تر ها بیشتر با hotmail و outlook آشنا باشن ولی خب ایمیل خوبی هم هست و دوستش داشتم ولی خیلی خیلی اسپم گرفت. یه موردی که وجود داره وقتی شما ایملتون رو توی یه سایت زده باشید و اون سایت هک بشه، هکر ها اون ایمیل های ثبت نام شده و خصوصا Hash پسورد ها رو حتما چک میکنن و باعث میشه اسپم بگیرید.

مثلا توی این سایت می‌تونید ایمیلتون رو بزنید ببینید توی چه سایت هایی که هک شدن ثبت نام کرده بودید و از کجا ها اطلاعاتتون ممکنه درز کرده باشه.

البته یه سری سایت ها هم کلا باعث اسپم گرفتن میشه لذا هر جایی ثبت نام نکنید.

حالا یه روش دیگه هم توضیح می‌دم در پست بعدی که بتونید به طور کل ایمیلتون رو مخفی کنید و با این کار شما ایمیل اصلیتون رو توی جایی که ثبت نام می‌کنید وارد نمی کنید و بجاش از یه جایگزین استفاده می‌کنید که اون به صورت یه واسطه ایمیل رو به ایمیل اصلیتون می‌فرسته و اینجوری ایمیلتون رو نیازی نیست وارد کنید توی سایتی که ممکنه براتون اسپم بفرسته.
code2 - کد۲
توی اسپم هام اینو دیدم. دستش درد نکنه خیلی بی حوصله بودم حداقل روزم رو ساخت 😂 فقط اون best regards آخرش 🫠😁 این یه ایمیل قدیمی من هست که hotmail هست و شاید قدیمی تر ها بیشتر با hotmail و outlook آشنا باشن ولی خب ایمیل خوبی هم هست و دوستش داشتم ولی خیلی خیلی…
مثلا این ایمیلی که براتون گفتم رو توی این سایت که براتون گفتم یعنی https://haveibeenpwned.com زدم و این جاها رو تطبیق داد که توی نشتی هایی که از این سایت ها وجود داشته ایمیل بوده. که همون طور که می‌بینید تقریبا همشون شرکت ها و سرویس‌های بزرگی هستند و شرکت های کوچیکی نیستند!
از توییتر گرفته تا dropbox و حتی سرویس رایچت ایرانی هم نشتی که داشته اینجا لیست شده که اون موقعی که یه نفوذ داشتن گویا تقریبا یک میلیون ایمیل از دیتابیسشون درز پیدا کرده بوده که کم نیست. لذا فکر نکنید سایت های معروف و بزرگ هک نمیشن و اطلاعاتتون اونجا همیشه امن هست! نه لزوما اینطور نیست و ممکنه اتفاقای بدی براشون بیفته :)
هرچند احتمالی که با توجه به تدابیری که شرکت‌های خیلی بزرگ می‌چینن بسیار کاهش پیدا می‌کنه. ولی در مجموع جانب احتیاط رو همواره رعایت کنید. اما صرفا این قضیه باعث نشه که بخواید همه چیز و از همه جا مخفی کنید و از سرویس های زیر زمینی و این ها استفاده کنید. مثلا این اینستاگرام و لینکدین و این ها که تو ایران در و پیکر ندارن لذا دیدید که با یه جابجا شدن وی پی ان و تغییر ip هم ممکنه یوهو گیر بدن یا قفل کنن اکانت و خلاصه دردسر بشه
سرویسی هم که گفتم معرفی می‌کنم این سرویس از فایرفاکس هست به نام Firefox Relay:

https://relay.firefox.com/

توی این سرویس وقتی ثبت نام می‌کنید تو ورژن رایگان فکر می‌کنم میتونید تا ۵ تا ایمیل بسازید. همه‌ی این ایمیل ها در واقع یه رابط بین ایمیل شما و جایی که استفاده می‌کنید میشه.
شما با این ایمیل توی یه سایتی ثبت نام می‌کنید و ایمیل هایی که از طرف اون سایت ارسال میشه میاد توی اینباکس شما و اینطوری ایمیل شما مخفی خواهد ماند! توی پلن رایگان قابلیت reply و پاسخ دادن نداره ولی توی پلن های پیشرفته تر میشه پاسخ هم داد. جالبه که توی پلن پیشرفته ترش قابلیت ماسک کردن شماره موبایل رو هم داره.
البته طبیعتا برای ما تو ایران مطرح نیست یا حداقل من که حوصله ندارم برم چک کنم. :))
خلاصه پس این هم یه محصول جالب و مفید از شرکت بزرگ فایرفاکس!

@code2_ir
برخلاف آنچه شاید بعضی فکر می‌کنند که شغل های مرتبط با ICT و فناوری اطلاعات معمولا شغل های آسون و بی دردسری هستند، خیلی از اوقات کارکردن توی این مشاغل مثل هر شغل دیگری چالش‌های خودش رو داره. چیزی که شاید جوانتر‌هایی که قصد یا علاقه به این حوزه رو دارند خیلی متوجه نباشند.
طبیعتا یکی از اولین نکاتی که به ذهن می‌رسه ساعت‌های طولانی و ممتد نشستن و یکجا قرار گرفتن هست که معمولا باعث کم تحرکی و خستگی و چاقی می‌شه.
برای همین بهتره هر یک ساعت از جای خودتون بلند بشید و اون کمر رو یه حرکتی بدید. (کاش خودم گوش می‌دادم 😅 )
یه موضوع دیگه که باز بین خیلی ها رایج هست بیدار موندن و شب بیداری هست. طبیعی هست که افرادی دیروقت تمرکز بیشتری دارند یا شب ها کار کردن براشون راحت تره. به قول خارجی ها night owl هستند و یک سری early birds. اما اگر کنترل شده نباشه میتونه صدمات زیادی بزنه. مثلا طبیعتا اگر من تا دیروقت شب ها کار می‌کنم، ازم انتظار میره که فرداش به مقدار لازم استراحت کنم ولی اگر محصل هستم یا باید سرکار برم یا در هر صورت نتونم استراحت کنم این تبدیل به یک چرخه معکوس میشه. شب بیدار می‌مونی و فرداش خسته ای برای همین خوب کار نمی‌کنی و مجبوری دوباره استراحت کنی یا یکم بخوابی و بعد دوباره شب خوابت نمی‌بره و به همین صورت این چرخه ادامه پیدا می‌کنه. باز میگم این بستگی به آدم داره ولی هر چقدر بشه یه روتین منظم و دقیق داشت به نظرم برآیندش بهتره خصوصا برای دانش آموزان یا افرادی که ابتدای مسیر شغلی هستند.
بحث های دیگری هم طبیعتا هست مثل استرس کاری، ساعات طولانی کار و سرعت تغییر و تحول بسیار بالا در این صنعت که میشه برای هر کدوم بحث کرد ولی خب همین چند تا دونه کفایت هست فعلا. در مجموع میخواستم بگم اگر توی این حوزه فعالیت می‌کنید به هوای این که بزار بعد اینکه پروژه فروش رفت و نمیدونم زودتر کار کنم پولدار میشم یا فلان، بقیه کار ها رو رها نکنید که میتونه صدمه زیادی بزنه.
gemini_for_google_workspace_prompting_guide_101_persian_version.pdf
369.9 KB
♨️ اتفاقی جدید و هیجان انگیز از پرسپکتیو دیتا! ♨️

📢 ترجمه فارسی اختصاصی راهنمای پرامپت‌نویسی ۱۰۱ گوگل منتشر شد!

🔹 معرفی: گوگل به‌تازگی راهنمایی جامع برای پرامپت‌نویسی منتشر کرده است که اکنون تیم پرسپکتیو دیتا نسخه فارسی این راهنما را به صورت اختصاصی برای شما آماده کرده است.


با مطالعه این راهنما، می‌توانید:
مهارت‌های پرامپت‌نویسی خود را ارتقا دهید
تعاملات خود با مدل‌های هوش مصنوعی را بهبود بخشید
از قابلیت‌های پیشرفته هوش مصنوعی در کار و زندگی بهره‌برداری کنید

📈 چرا این راهنما برای شماست؟
اگر می‌خواهید نتایج دقیق‌تر، سریع‌تر و کاربردی‌تر از مدل‌های هوش مصنوعی بگیرید، این راهنما گنجینه‌ای بی‌نظیر برای شماست.

#هوش_مصنوعی #پرامپت_نویسی #گوگل #Gemini #بهره‌وری

📡 پرسپکتیو دیتا | رسانه داده و گزارش کسب‌و‌کارها
code2 - کد۲
gemini_for_google_workspace_prompting_guide_101_persian_version.pdf
از کانال های جذاب که داده های مختلف کسب و کارهای ایران و مطالب به روز فضای استارتاپ رو گردآوری و منتشر می‌کنه
دوستان علاقه مند دنبال کنند. 👇

https://t.me/perspective_data