• Где искать заказчиков дизайнеру сайтов, если умеешь работать только в фотошопе и вёрсткой не владеешь?

    @xfg
    нет денег на повышение уровня квалификации

    С помощью чего вы собираетесь повышать квалификацию?
    Есть же самообучение. Нужны заинтересованность и время. Курсы, семинары, мастер-классы это впервую очередь бизнес. В конечном счете ваш учитель или учитель вашего учителя изучал всё самостоятельно и не платил за это деньги. Большинство программистов изучает самостоятельно.
    Ответ написан
    Комментировать
  • Где искать заказчиков дизайнеру сайтов, если умеешь работать только в фотошопе и вёрсткой не владеешь?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    https://moikrug.ru/vacancies/1000026127 - думаю это не единственные заказчики. Ищите и обрящете!
    Хотя я бы все-таки взялся учить что-то еще, слишком узко это, вот товарищ мой сидел в конторе на хорошей зп, тоже рисовал дизайны, правда еще и резал, но специфика сайтов однонаправленная была, очень узкий круг задач, а для развития сам нифига не делал, ибо разленился слегка, да и работы на фирме было... Теперь контора накрылась медным блюдом, с портфолио как у цыганских художников, ни одна контора особо не ломится его взять, хотя он весьма неплох в своей нише. Вывод - не забываем что рынок в любой момент разворачивается к вам ... спиной, так что учиться, учиться и еще раз учится, как завещал тотчьеимянельзяназывать.

    ПС: Посмотрите все же в сторону мобильного сегмента - сейчас там больше денег, например игрушки, интерфейсы, если есть художественные способности - рисуйте персонажей для игр, это вообще круто. И по деньгам и по творческому развитию имхо.
    Ответ написан
    4 комментария
  • Трафик на сайт? Где купить и не попасть в черный список?

    kawabanga
    @kawabanga
    Не нужна тебе такая машина, Брат. Поверь мне на слово.
    Ответ написан
    Комментировать
  • Зачем нужен пакет "net/context"?

    @spotifi
    Это довольно сложный для понимания пакет.
    Не интуитивный.
    Вот здесь очень хорошо описано, с расширенными комментариями - а для чего вообще:
    https://habrahabr.ru/post/269299/
    Ответ написан
    Комментировать
  • % от знакомства с клиентом, или спасибо хватит?

    opium
    @opium
    Просто люблю качественно работать
    довольно много команд которые готовы 50% отдавать за знакомство.
    Ответ написан
    Комментировать
  • % от знакомства с клиентом, или спасибо хватит?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    Скажите просто "спасибо" и в следующий раз этот партнер порекомендует другого своего разработчика своим клиентам, а вы не получите еще один заказ.

    Партнерские отношения на то и партнерские, что оба остаетесь в выигрыше — вы получаете нового клиента, а ваш партнер получает некий %.
    Вас рекламируют, причем заведомо бесплатно. Многие фрилансеры тратят огромные деньги на про-аккаунты и продвижение своих услуг. Причем про-аккаунт не гарантирует готовых клиентов. А тут готовый клиент + концепция "заплати, сколько не жалко" (утрированно).
    Ответ написан
    1 комментарий
  • Как настроить на авторизацию по паролю?

    Полагаю, так должно работать.
    package main
    
    import (
    	"github.com/armon/go-socks5"
    )
    
    func main() {
    
    	conf := &socks5.Config{
    		AuthMethods: []socks5.Authenticator{
    			&socks5.UserPassAuthenticator{
    				socks5.StaticCredentials{
    					"username1": "password1",
    					"username2": "password2",
    					"username3": "password3",
    				},
    			},
    		},
    	}
    
    	server, err := socks5.New(conf)
    	if err != nil {
    		panic(err)
    	}
    
    	// Create SOCKS5 proxy on localhost port 8000
    	if err := server.ListenAndServe("tcp", "127.0.0.1:8000"); err != nil {
    		panic(err)
    	}
    }


    Поясню, почему автор библиотеки сделал именно так.
    AuthMethods является массивом, чтобы можно было задать одновременно несколько методов аутентификации, если один не прошел, пробуется следующий из массива.
    Authenticator — это интерфейс, позволяющий подставлять на свое место все объекты, у которых есть методы:
    Authenticate(reader io.Reader, writer io.Writer) (*AuthContext, error)
    и
    GetCode() uint8

    UserPassAuthenticator как раз реализует эти методы для случая аутентификации по имени/паролю.
    Внутри него есть поле Credentials, в которое можно подставить любой объект, удовлетворяющий интерфейсу CredentialStore, т.е., имеющий метод Valid(user, password string) bool. Соответственно, вы можете сюда подставить свой объект, которому аутентификатор будет кидать пару имя/пароль, а объект в ответ будет выдавать, валидная это пара или нет.
    Простейшая реализация такого объекта есть в модуле в виде объекта StaticCredentials, который по сути является map[string]string и имеет метод, который проверяет, есть ли в этом map переданная пара юзер/пароль.

    Т.е., модуль предоставляет вам выбор, использовать штатные реализации аутентификации или писать свои.
    Ответ написан
    Комментировать
  • Как узнать с какого ip пришел запос?

    fastpars
    @fastpars
    https://golang.org/pkg/net/#Conn

    // RemoteAddr returns the remote network address.
            RemoteAddr() Addr


    ln, err := net.Listen("tcp", ":8080")
    if err != nil {
    	// handle error
    }
    for {
    	conn, err := ln.Accept()
    	if err != nil {
    		// handle error
    	}
    	fmt.Println(conn.RemoteAddr()) // <---------------
    	go handleConnection(conn)
    }
    Ответ написан
    Комментировать
  • Все мои логотипы получаются не законченными. В чем дело?

    edinorog
    @edinorog
    Троллей не кормить!
    у тебя синдром завышенных требований к работе. от этого нужно избавляться. есть то что хочет клиент. сделал? помахай рукой! допиливать можно годами.

    5d1a9a6670fd40c1aee4b37c4d505542.jpg

    я думаю не нужно объяснять что за марка и сколько она зашибает. я такое за пару минут нарисую. а вот так же подняться будет сложно.
    Ответ написан
    Комментировать