en
Feedback
Ramziddin — AI va dasturlash haqida

Ramziddin — AI va dasturlash haqida

Open in Telegram

Man bilan bog'lanish – t.me/ramzcoder?direct Ingliz tilida kanalim – @ramzcoderen Ramzcoder community – @ramzcodercom Instagram — instagram.com/ramzcoder Programming emoji pack – t.me/addemoji/ramzcoder

Show more
Buy Ad
2 162
Subscribers
-224 hours
-47 days
-2630 days
Posts Archive
Chat here 🍸

To'g'risi, frontend bilan backendni yozib deploy haqida o'ylamastan ancha osonroq

Video message00:48

Video message00:45

Ertaga 20:00da MVP-ni release qilaman. Kotta ehtimol bilan ko'p bug-lar 🪲 bo'ladi, balki sharmanda bo'laman, lekin qiziq bo'ladi. Nihoyat nimadir o'zim uchun productionga umrimda birinchi marta release qilvoman.

Video message00:35

"🤓 Well akchually HTML is not a programming lan..." – HTML o'rganishi endi tugatgan dasturchi

Raycastda "Auto Quit" degan narsa paydo bo'ldi. Berilgan intervaldan keyin kerakli appslarni avotmatik ravishda yopadi xotira
Raycastda "Auto Quit" degan narsa paydo bo'ldi. Berilgan intervaldan keyin kerakli appslarni avotmatik ravishda yopadi xotirani (ram) saqlash uchun. Nice

Qaysi OSdan foydalanasiz?
Anonymous voting

👨‍💻 Agar macOS-da directoryni o'chirmoqchi bo'lsangiz terminaldan – kotta ehtimol bilan directoryni bunaqasiga o'chirasiz:

rm -rf node_modules
Lekin rm sekin ishlaydi va korzinani o'tqazvoradi. Undan ko'ra trash install qiling:

brew install trash
Va keyin:

trash node_modules
trash ancha tezroq va o'chirilgan directoryni korzinadan qaytarishingiz mumkin.

Farewell my trusty friend

Video message00:40

ChatGPTda yangi, oyiga $200lik plan paydo bo’ldi — ChatGPT Pro 😳 https://openai.com/index/introducing-chatgpt-pro/
ChatGPTda yangi, oyiga $200lik plan paydo bo’ldi — ChatGPT Pro 😳 https://openai.com/index/introducing-chatgpt-pro/

"Hacker bo'laman" degan odamlar – nimaga hacker bo'lmoqchisiz?

Ikkinchisini birinchi marta 👨‍💻da yozib ko'rdim 👀

package main

import (
 "fmt"
 "math"
 "os"
 "strconv"
 "strings"
)

func main() {
 dat, err := os.ReadFile("./input.txt")
 
 if err != nil {
  fmt.Println("Couldn't read input", err.Error())
 }

 reports, err := parseReports(dat)

 if err != nil {
  fmt.Println("Couldn't parse repoorts", err.Error())
 }

 safeReports := 0

 for i := 0; i < len(reports); i++ {
  levels := reports[i]
  isInitiallyIncreasing := levels[0] > levels[1]
  isReportSafe := true
  
  for j := 1; j < len(levels); j++ {
   previousLevel := levels[j - 1]
   currentLevel := levels[j]

   isIncreasing := previousLevel > currentLevel
   if isInitiallyIncreasing != isIncreasing {
    isReportSafe = false
    break
   }

   difference := math.Abs(previousLevel - currentLevel)
   if !(difference >= 1 && difference <= 3) {
    isReportSafe = false
    break
   }
  }

  if isReportSafe {
   safeReports++
  }
 }

 fmt.Println("There are", safeReports, "safe reports")
}

func parseReports(inp []byte) ([][]float64, error) {
 reports := strings.Split(string(inp), "\n")
 var parsedReports [][]float64

 for i := 0; i < len(reports); i++ {
  report := reports[i]
  levels := strings.Fields(report)
  var parsedLevels []float64

  for j := 0; j < len(levels); j++ {
   parsedLevel, err := strconv.ParseFloat(levels[j], 64)

   if err != nil {
    return nil, err
   }

   parsedLevels = append(parsedLevels, parsedLevel)
  }

  parsedReports = append(parsedReports, parsedLevels)
 }

 return parsedReports, nil
}

Kecha birinchi marta advent of code 2024 sinab ko'rgim keldi Day 1 uchun yechimni Deno-da yozib ko'rdim

const decoder = new TextDecoder("utf-8");
const inputData = await Deno.readFile("./day1-input.txt");
const input = decoder.decode(inputData).slice(0, -1); // slice off empty line
const parsedInput = parse(input);
const output = calc(parsedInput);
console.log(output);

function parse(input: string): [number[], number[]] {
  return input
    .split(/\n/)
    .map((row) => row.split(/ {3}/))
    .reduce(
      (acc, curr) => [
        [...acc[0], Number(curr[0])],
        [...acc[1], Number(curr[1])],
      ],
      [[], []] as [number[], number[]],
    );
}

function calc([column1, column2]: [number[], number[]]): number {
  let distance: number = 0;
  while (column1.length > 0 && column2.length > 0) {
    const min1 = spliceMin(column1);
    const min2 = spliceMin(column2);
    distance += Math.abs(min1 - min2);
  }
  return distance;
}

function findMin(nums: number[]): number {
  let index: number = 0;
  let value: number = Infinity;

  for (let i = 0, curr = nums[i]; i < nums.length; i++, curr = nums[i]) {
    if (curr < value) {
      value = curr;
      index = i;
    }
  }

  return index;
}

function spliceMin(nums: number[]): number {
  const index = findMin(nums);
  const spliced = nums.splice(index, 1)[0];
  return spliced;
}

Video message00:09