Forwarded from Орзудаги
Iqtisodchi Kundaligi
Cho’qqiga chiqishning ikki sababi bor
Biri: dunyo seni ko’rishi uchun
Ikkinchisi: sen dunyoni ko’rishing uchun.
Siz nega chiqyapsiz?
Biri: dunyo seni ko’rishi uchun
Ikkinchisi: sen dunyoni ko’rishing uchun.
Siz nega chiqyapsiz?
Биринчисида ниманидир исботлаш учун чиқасан.
Иккинчисида эса ўрганиш учун чиқасан.Мен иккинчисини танлардим.
Иккинчисида эса ўрганиш учун чиқасан.Мен иккинчисини танлардим.
🔥1🤪1
Forwarded from Flutter Notes
Dasturchi 300$ ga maxsus ovozi uchun mexanik klaviatura sotib oladi va uni 400$ lik shovqin to'suvchi quloqchin bilan ishlatadi 😄
😁4
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Janob Panda | AI
This media is not supported in your browser
VIEW IN TELEGRAM
AI sababli ishini yo’qotgan dasturchi hikoyasi. 😂
Ayiq obrazida - dasturchi
Kiyik obrazida - Claude
Videoni o’zingiz edit qilib qo’yarsiz.
@mukhammadkarim_tukhtaboev
Ayiq obrazida - dasturchi
Kiyik obrazida - Claude
Videoni o’zingiz edit qilib qo’yarsiz.
@mukhammadkarim_tukhtaboev
🤣3🔥1
Kasofat AI chiqdi-yu, 10 ta dasturchidan bittasi ishda qoladigan zamon boshlandi 😅
Kompaniyalar esa allaqachon “open claw” qilib, AI agentlarni boshqaradigan systemlar qurib, Mac mini larni qator qilib qo‘yib olishyapti.
Xullas, agar faqat kod yozib yurgan bo‘lsang — AI seni asta-sekin siqib chiqaryapti.
2026 yilgacha dasturchiga matematika unchalik kerak emas edi.
Endi esa o‘yin qoidalari o‘zgardi:
* Calculus
* Linear algebra
* Data structures & algorithms
* Python / C++
Shularsiz “AI yaratuvchi” bo‘lish qiyin.
Texnologik inqilob allaqachon boshlangan.
Faqat muammo shundaki — hamma ham buni sezmayapti.
Ba’zilar hali ham miyani ishlatmasdan, eski yo‘l bilan yashashda davom etyapti.
Lekin bu uzoqqa bormaydi.
Eng kulgilisi nima bilasizmi?
“Kasofat AI” deb gapiryapmiz…
lekin shu AI’ni ham o‘sha dasturchilar yaratgan 😂
Xulosa:
AI sizni almashtirmaydi.
AI ishlata oladigan odam sizni almashtiradi.
Moslash yoki qolib ket — tanlov o‘zingniki bolajon.
https://t.me/devspaceuz
Telegram
Curious coder
𝓣𝓱𝓲𝓷𝓴 𝓭𝓲𝓯𝓯𝓮𝓻𝓮𝓷𝓽... ! 𝗘=𝗺𝗰²
❤2🔥1😁1
Nega ketmonim uchmayapti onasini emsin , man axir hech qanday arini o'ldirganim yo'qku
😁4🤣2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6💯1
🔌 WebSocket vs gRPC — Flutter'da qaysi birini tanlash kerak?
Ikkalasi ham real-time communication uchun ishlatiladi. Lekin arxitektura, protokol va use-case jihatidan jiddiy farq qiladi.
🌐 WebSocket
Asosi: TCP ustida full-duplex, text/binary frames.
Flutter'da:
final channel = WebSocketChannel.connect(
Uri.parse('wss://api.example.com/ws'),
);
channel.stream.listen((message) {
print('Server: $message');
});
channel.sink.add(jsonEncode({'type': 'ping'}));
Afzalliklari:
✅ Browser + mobile + backend — hamma joyda ishlaydi
✅ Text va binary (JSON, MessagePack) — ixtiyoriy format
✅ Oddiy debugging — Chrome DevTools, Wireshark
✅ Proxy va firewall bilan muammosiz (HTTP upgrade)
Kamchiliklari:
❌ Type safety yo'q — JSON schema kelishuvi manual
❌ Reconnect logikasini o'zing yozasan
❌ Message framing standarti yo'q
📌 Qachon: chat, notification, live dashboard, multiplayer game
⚡️ gRPC
Asosi: HTTP/2 + Protocol Buffers (binary serialization).
Proto fayl:
service PaymentService {
rpc StreamTransactions(TransactionRequest)
returns (stream TransactionEvent);
}
Flutter'da:
final channel = ClientChannel(
'api.example.com',
port: 443,
options: ChannelOptions(
credentials: ChannelCredentials.secure(),
),
);
final stub = PaymentServiceClient(channel);
final stream = stub.streamTransactions(
TransactionRequest(userId: userId),
);
await for (final event in stream) {
print('TX: ${event.amount} ${event.currency}');
}
Afzalliklari:
✅ Compile-time type safety — .proto kontrakt
✅ HTTP/2 multiplexing — parallel stream'lar
✅ Automatic code generation (protoc)
✅ Built-in deadline, cancellation, interceptor
✅ Payload hajmi: JSON'ga nisbatan 3-10x kichik
Kamchiliklari:
❌ Flutter Web'da to'liq ishlamaydi — grpc-web kerak
❌ .proto fayllarni sync saqlash kerak
❌ Binary payload debug qilish qiyinroq
📌 Qachon: microservice, FinTech stream, IoT telemetry
🆚 Taqqoslash
🔹 Protokol
WebSocket → TCP frames
gRPC → HTTP/2 + Protobuf
🔹 Type safety
WebSocket → ❌ manual (JSON)
gRPC → ✅ proto kontrakt
🔹 Flutter Web
WebSocket → ✅ to'liq ishlaydi
gRPC → ⚠️ grpc-web kerak
🔹 Payload hajmi
WebSocket → o'rtacha (JSON/text)
gRPC → kichik (binary, 3-10x)
🔹 Reconnect
WebSocket → ❌ o'zing yozasan
gRPC → ✅ built-in retry
🔹 Debug qulayligi
WebSocket → ✅ DevTools, Wireshark
gRPC → ⚠️ binary, maxsus tool
🔹 Streaming turi
WebSocket → full-duplex
gRPC → 4 xil pattern (unary, server, client, bidi)
💡 Mening xulosam
FinTech yoki IoT + microservice arxitekturasida → gRPC. Type safety + performance + streaming birgalikda kerak bo'ladi.
Real-time chat, notification yoki Web ham target platforma bo'lsa → WebSocket hali ham eng pragmatik yechim.
Xonsaroy Pay'da Transaction stream'lar uchun gRPC, push notification uchun WebSocket — ikkalasini parallel ishlatish ham normal amaliyot.
#flutter #dart #grpc #websocket
https://t.me/devspaceuz
Telegram
Curious coder
𝓣𝓱𝓲𝓷𝓴 𝓭𝓲𝓯𝓯𝓮𝓻𝓮𝓷𝓽... ! 𝗘=𝗺𝗰²
❤2
https://t.me/ya_jobs
kimlardir yandexga topshirmoqchi bo'lsa ishga shu kanalga o'tib otklik bosaverasizlar
kimlardir yandexga topshirmoqchi bo'lsa ishga shu kanalga o'tib otklik bosaverasizlar
Telegram
Яндекс нанимает | Вакансии для разработчиков
Актуальные вакансии для разработчиков в Яндекс
Папка с каналами Яндекса для разработчиков: https://t.me/addlist/Hrq31w2p1vUyOGZi
Все вакансии для разработчиков:
https://ya.cc/t/t9Tlu_e74DqkMQ
Номер заявления в РКН: 4962644000
Папка с каналами Яндекса для разработчиков: https://t.me/addlist/Hrq31w2p1vUyOGZi
Все вакансии для разработчиков:
https://ya.cc/t/t9Tlu_e74DqkMQ
Номер заявления в РКН: 4962644000
Dartda enum ikkita shaklda keladi — oddiy va kengaytirilgan. Ikkalasini chuqur tushunib olaylik.
1. Oddiy enum
Eng sodda holat — faqat nomlangan konstantalar to'plami. Kompilyator har bir qiymatga index va name beradi, boshqa hech narsa yo'q.
dartenum PaymentStatus {
pending,
success,
failed,
cancelled,
}
// ishlatish
final status = PaymentStatus.success;
print(status.name); // "success"
print(status.index); // 1
Muammo: PaymentStatus.failed ga mos keladigan server kodi nima? UI'da qanday matn ko'rsatish kerak? Bularni switch/if bilan tashqarida yozishga majbur bo'lasiz — kod tarqoq bo'lib ketadi.
2. Enhanced enum (Dart 2.17+)
Enum ham sinf kabi constructor, field va method olishi mumkin. Har bir enum qiymati — aslida o'sha sinfning const instance'i.
dartenum PaymentStatus {
pending('pending', 'Kutilmoqda', '#FFA500'),
success('success', 'Muvaffaqiyatli', '#00C853'),
failed('failed', 'Xatolik', '#F44336'),
cancelled('cancel','Bekor qilindi', '#9E9E9E');
final String code; // server kodi
final String label; // UI matni
final String hexColor; // rang
const PaymentStatus(this.code, this.label, this.hexColor);
// method ham qo'shish mumkin
bool get isTerminal =>
this == success || this == failed || this == cancelled;
static PaymentStatus fromCode(String code) =>
PaymentStatus.values.firstWhere(
(e) => e.code == code,
orElse: () => PaymentStatus.pending,
);
}
Endi hamma narsa enum ichida:
dartfinal status = PaymentStatus.fromCode('success');
print(status.label); // "Muvaffaqiyatli"
print(status.hexColor); // "#00C853"
print(status.isTerminal); // true
3. Extension on enum
Bu boshqa narsa — mavjud enum'ga tashqaridan method qo'shish. Ayniqsa siz o'zgartira olmaydigan enum'larda (boshqa package'dan kelgan) ishlatiladi.
dart// Siz o'zgartira olmaydigan enum — masalan package'dan
enum OrderState { created, processing, delivered, returned }
// Tashqaridan kengaytirish
extension OrderStateX on OrderState {
String get label => switch (this) {
OrderState.created => 'Yaratildi',
OrderState.processing => 'Jarayonda',
OrderState.delivered => 'Yetkazildi',
OrderState.returned => 'Qaytarildi',
};
bool get isActive =>
this == OrderState.created || this == OrderState.processing;
}
// ishlatish — xuddi o'z metodi kabi
final state = OrderState.processing;
print(state.label); // "Jarayonda"
print(state.isActive); // true
Asosiy farq — qachon qaysinisini ishlatish:
Oddiy enum → faqat konstantalar kerak, hech qanday logika yo'q. Masalan, enum Direction { left, right, up, down }.
Enhanced enum → enum'ga tegishli ma'lumot va logikani birga saqlash kerak. Siz yaratayotgan enum bo'lsa — har doim shu usulni afzal ko'ring.
Extension on enum → boshqa kutubxonadan kelgan enum'ni kengaytirish kerak bo'lsa yoki enum'ni turli layer'larda har xil ko'rinishda ishlatish kerak bo'lsa. Masalan, domain layer'dagi enum'ga presentation layer'da UI logikasini qo'shish — Clean Architecture'da bu juda qulay.
https://t.me/devspaceuz
Telegram
Curious coder
𝓣𝓱𝓲𝓷𝓴 𝓭𝓲𝓯𝓯𝓮𝓻𝓮𝓷𝓽... ! 𝗘=𝗺𝗰²
👍1