LINUX.ORG.RU

36
Всего сообщений: 1717

Дуров жив? А «Телеграм» его поделка?

Вопрос не совсем про это.

9 марта мне пришло сообщение по техническому каналу Телеграм-а с вариацией принять участие в конкурсе, за который в случае победы предлагают настоящие (не деревянные) деньги.

Вопрос собственно об том - дурит ли Дуров? Стоит ли напрягаться и принять участие в конкурсе?

И к стати, многим ли приходило это предложение?

Перемещено leave из general

 , ,

HIS ()

Проблема с Wifi-Adapter'ом TP-LINK TL-WN722N (V3)

У меня Ноутбук, когда прописываю ifconfig, вижу что есть wlan0-встроенная и wlan1 Адаптер, но интернет она не ловит, да и в режим мониторинга ее не перевести, хотя она для этого подходит, как я понимаю проблема может быть в драйверах . Пробовал и с лиц. диска, абсолютно также не РАСПОЗНАЕТ, что делать? В iwconfig'е вообще почему-то пишет Connection (Ethernet) В том же iwconfig'е еще написан драйвер r8188eu , может кто подсказать как его установить )?

 , ,

anybodyinmymind1 ()

Ардуино IDE и машинка под управление андроида

Написал код на ардуинке IDE. Машинка управляется через смарт, при нажатии кнопки машинка едет, согласно на писаному коду, и когда отпускаешь кнопку на андроид машинка все равно едет! А мне надо что бы машинка ехала только,когда нажата кнопка! Подскажите в чем проблема! А то вторые сутки не могу ни чего найти !!!!

#include <AFMotor.h>

#include <SoftwareSerial.h>

SoftwareSerial BT(52,53); //53 - RX, 52 - TX

AF_DCMotor motor1(1); //задний левый мотор

AF_DCMotor motor2(2); //задний правый мотор

AF_DCMotor motor3(3); // передний правый мотор

AF_DCMotor motor4(4); //передний левый мотор

char val;

void setup() {

Serial.begin(9600);

BT.begin(9600);

}

void loop() {

if (BT.available()){ // Если есть данные

val = BT.read(); // переменная val равна полученной команде

// едем вперед

if(val == 'W')

{

motor1.run(FORWARD);

motor1.setSpeed(255);

motor2.run(FORWARD);

motor2.setSpeed(255);

motor3.run(FORWARD);

motor3.setSpeed(255);

motor4.run(FORWARD);

motor4.setSpeed(255);

}

//едем назад

if(val == 'S'){

motor1.run(BACKWARD);

motor1.setSpeed(255);

motor2.run(BACKWARD);

motor2.setSpeed(255);

motor3.run(BACKWARD);

motor3.setSpeed(255);

motor4.run(BACKWARD);

motor4.setSpeed(255);

}

// поворот на лево

if(val == 'A'){

motor1.run(FORWARD);

motor1.setSpeed(200);

motor2.run(FORWARD);

motor2.setSpeed(200);

motor3.run(FORWARD);

motor3.setSpeed(200);

motor4.run(BACKWARD);

motor4.setSpeed(255);

}

//поворот на право

if(val == 'D'){

motor1.run(FORWARD);

motor1.setSpeed(200);

motor2.run(FORWARD);

motor2.setSpeed(200);

motor3.run(BACKWARD);

motor3.setSpeed(255);

motor4.run(FORWARD);

motor4.setSpeed(200);

}

// стоп

if(val == 'E'){

motor1.run(RELEASE);

motor2.run(RELEASE);

motor3.run(RELEASE);

motor4.run(RELEASE);

}

}

}

 ,

NeXt123 ()

Разработка на shiny dashboard

Доброго времени суток! Подскажите, пожалуйста, как реализовать scrollbar в box (если внутри shinytree)? Или как совместить jstree c shinydashboard?

 , ,

gdsun ()

Буфер кадров с камеры в python

Имеется скрипт для распознавания человека в кадре и автоматической записи видео. Работает на rpi3 и т.к. для обработки нейросетью каждого кадра мощности не хватает, то кадры подаются в отдельный поток через каждые 2 секунды (+ время на обработку кадра), соответственно запись начинается с момента когда человек находится уже посередине коридора. После пропадания человека из поля зрения камеры записывается еще 100 кадров.

Вопрос в том, как сделать буфер кадров, что бы при обнаружении человека запись начиналась с кадров в буфере, что бы сохранялись записи с момента появления человека в поле зрения камеры? Если можно то с примером, мну не программист.

Спасибо!

 , , , ,

lucky_guy ()

Запуск консольной C++ программы на Manjaro из Code::Blocks

Недавно перешёл на Manjaro с винды, всем доволен, на данный момент изучаю C++, на винде пользовался Code::Blocks, так что на линукс тоже решил поставить его. Всё работает, компилируется, но невозможно запустить программу (Process terminated with status -1 (0 minute(s), 0 second(s))). При этом если запускать из терминала (./*имя_программы*), то всё работает. Не то, чтобы это сильно мне мешает, но всё-таки не очень приятно.

 , , ,

Beggs ()

Считать файл поблочно?

Вот искомый код

FILE *fp,*fencrypted,*fdecrypted;
	char str[N];
	if ((fp=fopen("message.txt", "r" ))==NULL) {
		//printf("Cannot open file.\n");
		std::cout<<"Cannot open file.\n";
		exit (1);
	}
	
	std::vector<uint64_t> *msg = new std::vector<uint64_t>(),
		*plaintext = new std::vector<uint64_t>();//plain text

	unsigned long long id;
	while(!feof (fp)) {
		for (int i = 0; i<N; i++)
			str[i] = '\0';
		if (fgets(str, N, fp))
		{	
			//printf("%s", str);
			std::cout<<str;
			memcpy(&id, str, N);
			msg->push_back(id);
		}
	}
вот сам файл
Business process, activities that produce a specific service or product for customers
Business process modeling, activity of representing processes of an enterprise in order 
Manufacturing process management, a collection of technologies and methods used to define.
Process architecture, structural design of processes, applies to fields such as computers.
Process costing, a cost allocation procedure of managerial accounting
Process management, ensemble of activities of planning and monitoring the performance of .
Process management (Project Management) , a systematic series of activities directed .
Process-based management, is a management approach that views a business as a collection .
Process industry, a category of material-related industry.
fgets плохо получается считывать(последний нуль-символ мешает), точнее разбить весь текст на массивы по 8 символов еще нужно в конец забить нулями если символов меньше 8

 , , , ,

Gremlin_ ()

Помогите инвалиду выжить и найти дальнейший путь

Помогите, пожалуйста. В свои 22 года я стал инвалидом 2 группы и потерял все. Жизнь резко изменилось, и теперь у меня нет возможности заниматься тем, чем я жил раньше. Вынужден менять профессию, да вообще всю жизнь на 180 градусов. Все потеряно. Привязан к дому — никуда не выхожу. Появилась сильная апатия и отвращение к самому себе. Все время ушло впустую, а планы разрушились. Я потерял желание жить. Нужно срочно что-то делать. Исторически сложилось так, что я интроверт и автономный самодостаточный человек: у меня нет друзей, девушки, детей. Живу один. Если кому интересно, нахожусь в СПб (г. Санкт-Петербург).

Учитывая, что все мои планы разрушены и жизнь резко изменилась, нужно менять профессию. К счастью, я интересуюсь информационными технологиями и даже что-то знаю, хоть и на уровне чуть выше обывательского. Ближайшее время буду нищебродствовать, а также набираться новых знаний и опыта в IT. Могу уделять этому от 5 до 9 часов в сутки (без перерывов) — до тех пор, пока не смогу найти работу. Будет сложно, учитывая состоятение моего здоровья. Реально опыта работы в IT нет вообще.

Давно интересуюсь open source и Linux и еще в 13 лет перешел на Linux (сейчас у меня PureOS на десктопе, Debian на ноуте и Replicant на смарте). Чем я занимался в свободное время? Собирал и чинил компьютеры, хостил игровые серверы/интернет-радио/мыло+джаббер, следил за новостями в IT — это все было чисто хобби, а не профессиональная деятельность. Математику учил только в школе, да и ту помню только на уровне 8 класса. Нужно подтянуть? Если да, то до какого уровня? К счастью, с логикой все в порядке: хорошо изучил формальную логику в свое время, а также интересовался лингвистикой.

Реально ли инвалиду, который привязан к дому, найти удаленную работу в сфере программирования? Интересуют больше операционные системы и их ядра, а также сети (C, C++). Можно enterprise (только Java). Меньше всего хотелось бы связываться с вебом, железками и микросервисами. В любом случае, развиваться буду только в одном направлении (специализации).

Учиться придется самостоятельно по различным учебникам. Неплохо было бы влиться в сообщество программистов моего направления (IRC-чаты, джаббер-каналы, форумы) — что сейчас у программистов популярно? Где брать задачи, чтобы получить реальный опыт для работы? Ко всему прочему у меня серьезные проблемы с речью (грубо говоря, немой), поэтому желательно текстовое общение или готовность получать ответы текстом.

Спасибо за ванимание. Рассчитываю на ваш совет, список литературы, полезные ссылки, лайфхаки и т. п.

Update: Java и enterprise исключаем, а к системному и сетям на сях можно добавить на рассмотрение веб, тогда бекенд.

Перемещено leave из job

 , , ,

Deleted ()

Немного не правильно

Вот файл message.txt в котором текст исходного сообщения

Business process, activities that produce a specific service or product for customers
Business process modeling, activity of representing processes of an enterprise in order 
Manufacturing process management, a collection of technologies and methods used to define.
Process architecture, structural design of processes, applies to fields such as computers.
Process costing, a cost allocation procedure of managerial accounting
Process management, ensemble of activities of planning and monitoring the performance of .
Process management (Project Management) , a systematic series of activities directed .
Process-based management, is a management approach that views a business as a collection .
Process industry, a category of material-related industry.
Вот результат тот же текст но после алгоритма фейстеля(зашифровки-расшифровки) message2
Busines s proce ss, act ivities  that p roduce  a speci fic ser vice or  produc t for c ustomer s
      Busines s proce ss mode ling, a ctivity  of rep resenti ng proc esses o f an en terpris e in or der 
   Manufac turing  process  manage ment, a  collec tion of  techno logies  and met hods us ed to d efine.
 Process  archit ecture,  struct ural de sign of  proces ses, ap plies t o field s such  as comp uters.
 Process  costin g, a co st allo cation  procedu re of m anageri al acco unting
 Process  manage ment, e nsemble  of act ivities  of pla nning a nd moni toring  the per formanc e of .
 Process  manage ment (P roject  Managem ent) ,  a syste matic s eries o f activ ities d irected  .
     Process -based  managem ent, is  a mana gement  approac h that  views a  busine ss as a  collec tion .
 Process  indust ry, a c ategory  of mat erial-r elated  industr y.      
Вот сам алгоритм :
#include <iostream>
#include <vector>
#include <fstream>  
//#include <stdlib.h>   
typedef unsigned long long uint64_t;
typedef unsigned int uint32_t;
#define N 8
#define F32 0xFFFFFFFF
#define size64 sizeof(uint64_t)
#define ROR(x,n,xsize)((x>>n)|(x<<(xsize-n)))
#define ROL(x,n,xsize)((x<<n)|(x>>(xsize-n)))
#define RKEY(r)((ROR(K,r*3,size64*8))&F32)
const uint64_t K = 0x96EA704CFB1CF672;//base key to forming of round keys
uint32_t RK[N];//massive round keys
void createRoundKeys(bool print)
{
	for (int i = 0; i < N; i++)
	{
		RK[i]=(ROR(K, i * 8, size64 * 8))&F32;
		if (print)
			std::cout << "key[" << i << "]=" << std::hex << RK[i] << std::endl;
	}
}
uint32_t F(uint32_t subblk, uint32_t key)
{
	/*
	uint32_t f1 = ROL(subblk, 9, sizeof(subblk) * 8);
	uint32_t f2 = ROR(key, 11, sizeof(key) * 8) | subblk;
	return f1 ^ !f2;
	*/
	return subblk+key;
}
//encryption 64-digit block of message
uint64_t encrypt(uint64_t block, bool print)
{
	//select subblocks
	uint32_t left = (block >> 32)&F32;
	uint32_t right = block&F32;

	uint32_t left_, right_;//subblock in the end of round
	for (int r = 0; r < N; r++)
	{
		if (print)
			std::cout << "round " << r << std::endl << "input blks " << std::hex << left << " " << right << std::endl;
		uint32_t fk = F(left, RK[r]);
		left_ = left;
		right_ = right^fk;
		if (r < N - 1)//swap places to next round
		{
			left = right_;
			right = left_;
		}
		else//last round not swap
		{
			left = left_;
			right = right_;
		}
		if (print)
			std::cout << "round" << r << std::endl << "output blks " << std::hex << left << " " << right << std::endl;
	}
	//collect subblock in block
	uint64_t c_block = left;
	c_block = (c_block << 32) | (right&F32);
	return c_block;
}
//decryption 64-digit block of message
uint64_t decrypt(uint64_t c_block, bool print)
{
	//select subblocks
	uint32_t left = (c_block >> 32)&F32;
	uint32_t right = c_block&F32;

	uint32_t left_, right_;//subblock in the end of round
	for (int r = N-1; r >=0; r--)
	{
		if (print)
			std::cout << "round " << r << std::endl << "input blks " << std::hex << left << " " << right << std::endl;
		uint32_t fk = F(left, RK[r]);
		left_ = left;
		right_ = right^fk;
		if (r > 0)//swap places to next round
		{
			left = right_;
			right = left_;
		}
		else //last round not swap
		{
			left = left_;
			right = right_;
		}
		if (print)
			std::cout << "round" << r << std::endl << "output blks " << std::hex << left << " " << right << std::endl;
	}
	//collect subblock in block
	uint64_t block = left;
	block = (block << 32) | (right&F32);
	return block;
}
#pragma warning(disable:4996)
void main()
{
	std::cout << "Base key\n" <<std::hex<<K<< std::endl;
	std::cout << "\nRound keys:" << std::endl;
	createRoundKeys(false);
	
	FILE *fp,*fencrypted,*fdecrypted;
	char str[N];
	if ((fp=fopen("message.txt", "r" ))==NULL) {
		//printf("Cannot open file.\n");
		std::cout<<"Cannot open file.\n";
		exit (1);
	}
	
	std::vector<uint64_t> *msg = new std::vector<uint64_t>(),*plaintext = new std::vector<uint64_t>();//plain text

	unsigned long long id;
	while(!feof (fp)) {
		for (int i = 0; i<N; i++)
			str[i] = '\0';
		if (fgets(str, N, fp))
		{	
			//printf("%s", str);
			std::cout<<str;
			memcpy(&id, str, N);
			msg->push_back(id);
		}
	}
	
	/*
	unsigned long long id; 
	{ 
		std::ifstream in("message.txt"); 
		in >> id; 
		msg->push_back(id);		
	} 
	*/
	//uint64_t msg = 0xFFAADD11CCBB2299;//plain text
	//msg->push_back(0xFFAADD11CCBB2299);
	//msg->push_back(0xFFAADD11CCBB2288);
	//msg->push_back(0xFFAADD11CCBB2277);
	
	fclose(fp);
	int ii=0;
	if ((fencrypted = fopen("cryptmessage.txt", "w")) == NULL) {
		//printf("Cannot open file.\n");
		std::cout << "Cannot open file.\n";
		exit(1);
	}
	if ((fdecrypted = fopen("message2.txt", "w")) == NULL) {
		//printf("Cannot open file.\n");
		std::cout << "Cannot open file.\n";
		exit(1);
	}
	for (std::vector<uint64_t>::iterator it = msg->begin() ; it != msg->end(); ++it)
	{
		std::cout << "msg:\n" << std::hex << *it<< std::endl;
		//std::cout << "msg:\n" << std::hex << msg << std::endl;
		//uint64_t cipher = encrypt(msg, true);//change on true second parameter when debug, ciphertext
		uint64_t cipher = encrypt(msg->at(ii), false);//change on true second parameter when debug, ciphertext
		
		std::cout << "encrypt:\n" << cipher << std::endl;
		memcpy(str, &cipher, N);
		fwrite(str, N,1, fencrypted);
		//msg = decrypt(cipher, true);//change on true second parameter when debug,plain text
		plaintext->push_back(decrypt(cipher, false));//change on true second parameter when debug,plain text

		memcpy(str, &plaintext->at(ii), N);
		fwrite(str,N,1, fdecrypted);

		//std::cout << "decrypt:\n" << msg<< std::endl;
		std::cout << "decrypt:\n" <<plaintext->at(ii)<< "\n--------------------------\n" << std::endl;
		ii++;
	}
	fclose(fencrypted);
	fclose(fdecrypted);
	system("pause");
}
В принципе сам зашифрованный текст пока меня не волнует(cryptmessage.txt). Собственно вопрос как можно убрать пробелы , хотя пока вы разберетесь я уже сам исправлю P.S. Задача теперь простыми словами в том чтобы читать файл и выводить по 8 байт в id:
unsigned long long id;
	while(!feof (fp)) {
		for (int i = 0; i<N; i++)
			str[i] = '\0';
		if (fgets(str, N, fp))
		{	
			//printf("%s", str);
			std::cout<<str;
			memcpy(&id, str, N);
			msg->push_back(id);
		}
	}
Скорее всего придется заменить функцию fgets на fgetc

 , , ,

Gremlin_ ()

C++ кроссплатформенная библиотека для получения списка процессов и прочей инфы

Добрый день.
Есть ли какая-нибудь не очень большая кроссплатформенная (linux / windows) C++ (или C на худой конец) библиотека для получения списка процессов, получения объема используемой памяти, загрузки процессора по каждому процессу и по всей системе и другой сопутствующей информации?

 , , , ,

rumgot ()

Лучший рэп про программистов

https://www.youtube.com/watch?v=wjFgOckkVYM
Я извиняюсь, но это - шедевр.
Вот эти ребята : http://vk.com/nii_rap
Inb4: слоупок, баян. Не все такие быстрые.

 ,

crutch_master ()

нотация в opensource проектах

Столкнулся с пренеприятнейшей проблемой: отсутствием единого стандарта в именовании у различных opensource проектов.
На данный момент использую freeRTOS (венгерская нотация), библиотеку для работы с sd-картами (змеиная) и заготовки для gui (верблюжья).
От такого разнообразия испытываю боль чуть пониже спины и желание все переписатьпереименовать.

Что делаешь в таких случаях ты, ЛОР-овец?

 ,

user_name ()

редакторы для программистов (?)

Для писателей есть специальные редакторы, которые облегчают контроль за персонажами, временем, событиями. Всякие заметки, закладки, связи, редакции.

Для программистов есть что-то подобное? Я ваще не в курсе. Писал скрипты, ничего было не нужно, а сейчас немного замахнулся и просто тону. Запутываюсь. Хочется какого-то уже придуманного контроля и порядка. Например, чтобы редактор показывал, что готовые модули А и Б затрагиваются, если меняешь структуру в модуле С (я сам буду указывать связь, но чтобы он мне напоминал). Ну и чтобы схема была: это выполнено, это нет, а вот тут какие-то заготовки и тесты. В каждом блоке список проблем.

Язык не важен. Любой. Хочу просто знать — есть такое или нет и ключевые слова для поиска.

 ,

rechnick ()

Как «подружить» C++ с тырнетом?

Решил написать программу на «C++», которая бы могла делать две вещи:

  1. Могла генерировать диапазон чисел,скажем от 1000 до 10000. В принципе «погуглив» у меня уже был на «руках» код, с помощью которого в принципе можно генерировать «фиксированный» диапазон и выводить этот диапазон в консольную строку.
  2. Используя сгенерированный диапазон,она бы могла поочередно вставлять числа в ссылку (к примеру такую: http://localhost/ko<первое число диапазона>) и таким образом могла формировать запрос на ресурс, и получать ответ от ресурса, и если такой адрес существует, то она бы выводила эту самую ссылку. (т.е типа http://localhost/ko1000), иначе она бы выводила тупо «False» «Error» etc.

    Так же хотелось бы, что бы эта программа имела отдельное окошко с «кнопчками»...

    P.s: На всякий случай скажу, что обладаю знаниями «базового» «Паскаля» (типа там program n_1 var a,b,c: integer; a: array [1..10] of integer;)

 ,

Vented ()

на чём писать программу непрограммисту?

Хочу написать небольшую программу. По сути, большая часть кода — вычисления, которые уже написаны на R.

Сначала хотел не париться и задавать исходные данные в виде таблицы и скармливать это скрипту на R, но решил сделать что-то более законченное с GUI.

Программа должна уметь:


  • загружать исходные данные из файла;
  • сохранять исходные данные в файл;
  • сохранять результаты в файл;
  • выводить результаты в виде отчёта .tex с конвертацией в .pdf с моим шаблоном;
  • иметь интерфейс для забивания туда исходных данных вручную в поля ввода;
  • быть кросплатформенной;
  • интерфейс должен уметь масштабироваться под разный DPI.



Вычисления несложные, поэтому скорость роли не играет. Хочу параллельно написанию выучить что-нибудь полезное и перспективное из программирования.

Также хочется не заниматься конвертацией кода из R на другие языки, то есть надо, чтобы язык GUI дружил с R.

И ещё, чтобы создание GUI давалось максимально легко, например, путём рисования боксов мышкой.

Подскажите, пожалуйста, на чём писать и какой IDE использовать для этого?

 , ,

Deleted ()

Как научиться работать с терминалом в Linux?

Господа. Читаю этот форум, вижу что здесь много продвинутых линуксоидов, хорошо понимающих работу в терминале. Как вообще повышать свои способности работы в терминале Linux? Нужно ли для этого быть программистом или нет? Я например не программист, знаю не так много команд, поэтому предпочитаю графический интерфейс, на линуксе сижу чуть больше года. Без навыков программирования вообще реально хорошо освоить терминал Linux?

 , ,

Deleted ()

Получить снимок с Web-камеры и найти на нём звезду

Всем привет!

Короче, наткнулся я тут на проект. Чувак решил сделать астротрекер, понятное дело, что можно такую штуку купить без каких либо проблем, даже видел объявления за 12к б\у, но появился академический интерес. А почему бы не попробовать сделать свой автономный гид?! За одно наконец-то поковыряюсь в анализе изображений.

Из оборудования есть:

  • Монтировка HEQ5-Pro с GoTo
  • OrangePI Zero

Плату разводить и МК программировать лениво, так что хочется взять дешёвую Web-камеру или модуль камеры для платы. Подцепить камеру по USB к линуксу установленному на OrangePI Zero, но тут встаёт ряд вопросов:

  1. Могу ли я делать выдержки на этих камерах в 1, 2, 4, 8 секунд?
  2. Может лучше купить Raspberri Pi Zero и заточенный под неё модуль камеры? Или оставить Orange PI Zero и купить USB-Web камеру? И какую?
  3. Поиск объектов на фото и поиск движения между двумя фото лучше сделать на OpenCL или есть альтернативы? (C OpenCL ещё не работал, но много слышал про эту либу.)

    Ну а дальше остаётся только учить матчасть и говнокодить =) Заранее спасибо за ответы.

 , ,

AntonyRF ()

C++ виртуальные деструкторы (ну простите)

Добрый день. Тема поднималась хренову тучу раз, уж простите. Вопрос: объявляете ли вы деструкторы производных классов виртуальными? Я знаю, что не обязательно, что и так будет работать. Тут вопрос скорее такой: с точки зрения правил хорошего тона нужно ли это делать?

 , , ,

rumgot ()

Как учиться программированию?

Где и как научиться программированию, а не только синтаксису? Вернее, чтобы вообще не стоял вопрос об ЯП. Есть ли признанные книги, курсы? Может есть варианты решения: изучаешь программирование через изучение синтаксиса или наоборот?

Посоветуйте пожалуйста для уровня нуба.

К примеру вот навскидку, что-то из подобного подойдёт?

1. https://www.intuit.ru/studies/courses/3533/775/info

2. https://www.intuit.ru/studies/courses/2193/67/info

3. https://www.intuit.ru/studies/courses/11876/1156/info

Буду благодарен за советы.

P.S. Это не толксы, не нужно тут чсв показывать.

 

le_legioner ()

Невезет с работой?

Не могу задать вопрос в талкс, поэтому напишу сюда, да меня опять продинамили на собеседовании что я понял нужно знать наизусть сортировки,поиски и деревья. Что то ещё? Пишите в комменты и желательно со ссылками

Перемещено tailgunner из general

 ,

Gremlin_ ()