LINUX.ORG.RU

Сообщения atoku

 

Киев. Мид-программеры, тестировщики, небольшая команда, компания США

КИЕВ. Срочно. Программисты (Мид) Java. Также тестировщики Соц пакет, страховка, от $2000+, Не ФОП (с трудовой)! Гео приложения на Java, Андроид Знать английский язык хоть как-то обязательно. Я не посредник! Координаты для связи: пишите здесь + можно email на pavlo. blokhin <at} progresstech.ua Или мне, anton . kulchitsky <at} coupi.us

 , , ,

atoku
()

Киев: нужен физик, математик, программист С, Linux

Американский стартап ищет физиков или математиков в Киеве для работы в представительстве. Задачи: построение физических моделей, программирование на C. Возможно работа с OpenGL (отдельная позиция). При соответствующем интересе будет помощь с публикациями и научной или инженерной карьерой. Языки разработки C и Lua.

PS. Рассмотрим в том числе и хакеров без высшего.

 , , ,

atoku
()

sys.path разный у интерпретатора и при Py_Initialize()

Такая беда чайника у меня. Пришлось разбираться с Питоном.

Окружение: Linux Mint, python 2.7.

Надо сделать embedded python приложение. Проблема: sys.path отличается при запуске интерпретатора и при загрузке из C программы. Python code:

import sys
print sys.path

Если вызов из программы, то получается так:

['/usr/lib/python2.7/', 
'/usr/lib/python2.7/plat-x86_64-linux-gnu', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload']

Если вызов интерпертатором python filename.py (я заменил точкой название текущей директории, чтобы скрыть юзернэйм):

['.', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-x86_64-linux-gnu', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload', 
'/usr/local/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages/PILcompat', 
'/usr/lib/python2.7/dist-packages/gst-0.10', 
'/usr/lib/python2.7/dist-packages/gtk-2.0', 
'/usr/lib/pymodules/python2.7', 
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client', 
'/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode']

Как сделать так, чтобы они не отличались? Что пробовал: import site (не лечит проблему вообще никак).

 

atoku
()

Рисовать сферы

Посоветуйте програмку, которая нарисует более-менее красиво (как в OpenGL хотябы) много сфер, заданных в виде 3 координат центра и радиуса. А также позволит крутить картинку мышкой. Все что нужно, это готовую графическую утилиту, которая позволит загрузить данные и нарисует их.

Я пытался дергаться с VisIt и Paraview. В обоих случаях сходу не осилил. Однако, если кто скинет рецепт как это сделать в этих программах, будет очень круто!

Сфер будет и много и мало. От 1 до может быть 100 миллионов или даже больше. Но если удастся рисовать хотя бы до 1 миллиона - на улице состоится праздник.

Очень не хочется возиться несколько дней, чтобы только это рисовать. Заранее спасибо!!!

 ,

atoku
()

[Web app]Менеджер Проектов

Общий вопрос. Мопед, что называется, не мой...

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

Задание дали одному хорошему, но не очень пока квалифицированному в вебе программисту и человеку, и предложили писать на django и пистоне, чтобы все обрабатывалось на сервере. Графики рисуй, говорят, хоть imagemagick, хоть R с гнуплотом. Но чтобы ничего на юзерские компы не устанавливалось, все было через броузер. Мне вот в голову это все не лезет, так как я с вебом практически не знаком и посоветовать даже что не знаю. Интуитивно кажется, что если писать, то на javascript, какой нибудь jQuery или какая либа популярна. Но и django, кажется, нормально. Но я - тоже та еще серость в этом вопросе. Подскажите что-нибудь. Какие инструменты посмотреть или какое приложение адаптировать?

Заранее спасибо от нас всех. :)

atoku
()

Посоветуйте язык для параллельной разработки

Пишется код для задачи с большим числом дискретных элементов, которые сталкиваются и тп. Не галактики, нет. Выбрали Charm++. Есть альтернативы? Нужны советы.

atoku
()

Задача индексирования

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

Понятно, что на каждом шаге по времени можно пройтись по этому списку точек и определить соседей и провзаимодействовать их. Но это очень стремно O(n^2). На выручку приходит параллельная merge сортировка и все становится O(n*log(n)). Но я не достаточно счастлив со своими решениями. Первое принадлежит не мне и состоит в разбиении плоскости на клетки и ведении учета какая точка в какой клетке. Мое решение - три списка иметь по каждой координате и на каждом шаге по времени их сортировать. В итоге соседи будут соседями во всех трех списках.

Уверен, что-то есть стандартное или кто-то уже это делал. Предложите подход, пожалуйста.

atoku
()

Протестую против удаления опроса

Как вы относитесь к Ричарду Столлмену?

Это не была провокация флейма. Если вы так боитесь, то надо было оставить только звездатых комментировать. Опрос, имхо, очень интересен и показал бы состояние дел в отрасли.

Разочарован. :(

atoku
()

[C] Программисты проголосуйте!

Пожалуйста, проголосуйте, какую систему ссылок вы
предпочитаете. В ини файле есть система ссылок. Можно ссылаться
на переменные из других секций или на "локальные" поля. Секции
выделяются [section] и могут содержать пробелы в названии. Это
обязательное условие. Аналогично пробелы могут быть и в именах
полей.

Выберете систему, которую считаете лучшей:

(1) А-ля E-mail, (2) Минимум новых знаков (3) Как в С

Ниже таблица что имеется в виду:

Ref type\system    

         (1)              (2)              (3)

local    $field           $field           $field

local    $(two words)     $(two words)     $(two words)

global   $field@          $[]field         $.field

global   $(two words)@    $[](two words)   $(.two_words)

link     $field@sec       $[sec]field      $sec.field

link     $(two words)@sec $[sec](two words) $(sec.two words)

link     $field@[sec tion] $[sec tion]field $(sec tion.field)

link     $(two words)@[sec tion]
                           $[sec tion](two words)
                                            $(sec tion.two words)
                

Недостатки и достоинства

(1) недостаток: наличие "лишнего" знака @. Достоинство: минимум
символов для односложных ссылок.

(2) недостаток: необычность. Но зато нет лишних символов и очень
понятно все. Самая бритвооккамовская модель, не вводящая новых
сущностей в алфавит.

(3) недостаток: невозможно или трудно использовать точку в именах
групп и полей (а иногда хочется для сокращения слов,
например). Достоинство в том, что очень наглядно для программистов.

Пожалуйста, напишите номер, который бы вы выбрали!

>>>

 

atoku
()

C, Странная проблема с указателями в функции

Столкнулся с проблемой, понять которую пока не смог. Может кто что понимает? Выкристаллизовал все в код:

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

void try_realloc( char* str )
{
  const char *addstr  = " more string ";
  size_t len    = strlen( str );
  size_t addlen = strlen( addstr );

  str = realloc( str, ( len + addlen + 1 ) * sizeof( char ) );
  strncat( str, addstr, addlen+1 );
}

int main()
{
  char *str = calloc( 1, sizeof(char) );
  
  try_realloc( str );
  printf( "%s\n", str );

  try_realloc( str );
  printf( "%s\n", str );

  free( str );
  return 0;
}

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

В этом коде valgrind орет о куче ошибок. (текст не привожу - вы
сами можете его получить).

Теперь рассмотрим аналогичный код. Разница минимальна, но
ошибок не происходит и валгринд тоже говорит, что все тип-топ.

#include <stdio.h>
#include <string.h>
#include <stdlib.h>

char* try_realloc( char* str )
{
  const char *addstr  = " more string ";
  size_t len    = strlen( str );
  size_t addlen = strlen( addstr );

  str = realloc( str, ( len + addlen + 1 ) * sizeof( char ) );
  strncat( str, addstr, addlen+1 );

  return str;
}

int main()
{
  char *str = calloc( 1, sizeof(char) );
  
  str = try_realloc( str );
  printf( "%s\n", str );

  str = try_realloc( str );
  printf( "%s\n", str );

  free( str );
  return 0;
}

То есть разница лишь в том, что функция возвращает указатель
на перераспределенную память. И все работает!!! В ЧЕМ ПРИКОЛ?

Пробовал компилить с gcc и PGI компиляторами - один хрен.

>>>

atoku
()

Откуда берется gcrt1.o ?

собственно откуда берется gcrt1.o или в каком пакете находится gcrt1.s/asm?

>>>

atoku
()

! Срочно очень нужна помощь по работе gprof

Такая гадость случилась, на одной из больших машин 
не работает gprof. Выдает хрень по времени. 
Тест такой, например:


#include <stdio.h>
#include <stdlib.h>

#define LEN 10000

float sum( int p, int s )
{
  return (float)s+p;
}

float a[LEN][LEN];
float b[LEN][LEN];
float c[LEN][LEN];

int main(int argc, char *argv[])
{
  int   i, j;
  
  for (j=0; j<LEN; j++)
    for (i=0; i<LEN; i++)
      {
        a[i][j]=sum(i,j);
        b[i][j]=(float)(i-j);
      }
  
  for (j=0; j<LEN; j++)
    for (i=0; i<LEN; i++)
      {
        c[i][j]=b[i][j]/a[i][j];
      }
  
  exit(1);
}

Так эта сцуко врет со временем примерно в 10 раз. На других машинах
все хорошо. Апгрейдили glibc, glibc-profile, использовали новый gcc,
но это не спасало. Кто знает в  чем дело? Программы там довольно
старые:

gcc (GCC) 3.3.3 (SuSE Linux)

Не работает и с pgi, sunstudio, pathscale.

Если вам встречался этот баг, расскажите какой и как лечится.

>>>

atoku
()

Почему string.h функции возвращают указатель?

В чем глубокий смысл возврата указателей из функций типа strcpy на строку? Почему создатели стандартной библиотеки выбрали такой путь, вместо простого возврата кода ошибки? Ведь указатель все равно "возвращается" как первый параметр функции? Я прочитал мнение на английском форуме, что самый цимес string именно в этом, но объяснить почему товарищ не захотел или не смог.

Я встретил такой подход еще в нескольких библиотеках. В то же время, многие другие уважаемые библиотеки (большинство!) используют возврат целых как кода ошибки.

Что я не понимаю в С? Объясните плиз!

>>>

atoku
()

Можно ли обмануть malloc/free?

Допустим, мы захватываем память при помощи

int *p = (int*) malloc( 5*sizeof(int) );

Теперь, указатель p указывает на кусок памяти в 5 целых чисел. После некоторых операций, среди которых может быть например такая

int *q = p + 1;

Надо освободить память от первого элемента массива, а на остальные 4 элемента должен благополучно ссылаться q. Понятно, что тупое

free( p ); /* не годится */

убьет весь блок памяти. А надо, чтобы освободилась только первое целое число.

Можно ли это сделать и если можно то КАК???????

>>>

atoku
()

Где рассказать о своей библиотеке?

Вопрос: где лучше сказать о своей маленькой С библиотеке, чтобы заинтересовались, может стали пользоваться, или может пообсуждали, подсказали что, покритиковали? Речь идет о версии 0.99, предрелизный вариант, лежит на sourceforge. Возможностей две: (1) На форуме девелопмент (2) Подать в новость?

>>>

atoku
()

Флаги компиляции

Можно как-то вытащить флаги компиляции из исходников? Надо для gcc, PathScale и SubnStudio.

atoku
()

Сменить терминал в гномовских шорткатах

Gnome: хочу запускать терминал при помощи комбинации клавиш. Гном, сцуко, запускает свой терминал, вместо XTerm, которым я пользуюсь. Как его отучить от дурной привычки?

atoku
()

emacs mode for lex and bison

Кто нибудь знает моды для редактирования .l файлов для lex/flex? Есть ли бизон-моды? В сети не нашел.

atoku
()

Literate programming, автогенерация доков из комментов etc.

У кого есть опыт использования CWEB или чего-то подобного? Поделитесь опытом полезности. Сам использовал Doxygen для последнего проекта - впечатление противоречивое, но вроде есть польза и удобнее держать доки в соответствии с кодом по сравнению с texinfo. Есть ли опыт пользования таких вещей? Кто-нить пользовал NaturalDocs? В общем, давайте обсудим опыт и впечатления.

Надо выбрать способ документации следующего проекта, разрабатываемого командой из 4 разработчиков. Любые частные и общие советы очень приветсвуются.

atoku
()

Комментарии в C коде

Тут спросили и я задумался, почему действительно в коде иногда используются как комеентарии типа /* ... */ так и где-то /** ... **/

Я ответил человеку, что разницы нету ни фига и дело лишь в странном вкусе тех, кто пишет /**. Но потом подумалось, а может есть какие-нибудь препроцессоры, которые "понимают" такой коммент по-своему?

Какие есть идеи?

atoku
()

RSS подписка на новые темы