Pull to refresh

All streams

Show first
Rating limit
Level of difficulty

Использование высокодинамичного языка для разработки

Level of difficulty Medium
Reading time 16 min
Views 22
Lisp *Game development *
Translation

Преимущества и навыки, полученные при использовании Common Lisp в разработке игр


Разработка игр является увлекательной задачей. Игры требуют быстрого цикла разработки, высокой интерактивности и задают ограничения мягкого реального времени. Хотя в настоящее время небольшие игры разрабатываются на таких динамических языках, как Python или Lua, традиционно игровые движки пишутся на статических языках вроде C++ и C с каким-либо скриптовым языком поверх для обработки геймплейных механик. Common Lisp предоставляет среду разработки, одновременно являющуюся динамичной и достаточно производительной, что позволяет построить с её помощью полноразмерную систему разработки игр, сильно способствующую быстрым итерациям разработки и модульному дизайну.

Read more →
Rating 0
Comments 0

Concept Art in Game Design: An Introduction to its Significance and Fundamental Principles

Level of difficulty Easy
Reading time 6 min
Views 26
Game design *Games and game consoles

Let's talk about concept art, one of the main pillars in the digital art world. Concept art is the foundational and fundamental stage of any media industry project, where bold design choices are made and the best one is selected, shaping the overall style of the product. "Concept" refers to abstract ideas and fresh designs, while "art" entails the intentional use of imagination to create objects for immediate contemplation, which can be assessed for their aesthetic appeal in terms of appearance, sound, or even words. The exact origin of the term is not entirely clear, but some attribute its first mention to Walt Disney Feature Animation during the creation of characters for the first feature-length animated film, Snow White and the Seven Dwarfs, in the 1930s. It was during this time that an entirely new profession, later known as "concept artist," began to take form and became highly sought after in the media industry.

Read more
Total votes 1: ↑0 and ↓1 -1
Comments 0

The Power of Email Marketing: Engaging Customers for Business Growth

Level of difficulty Medium
Reading time 3 min
Views 197
CRM systems *Freelance Internet marketing *Email-marketing *
Case


Email marketing has emerged as a vital tool for businesses to nurture customer relationships and drive growth. In this article, we will explore the immense potential of email marketing through personal experiences and examples from renowned companies. From personalization to segmentation, retargeting, and building anticipation, discover how these strategies can elevate your email campaigns and deliver remarkable results.

The Art of Personalization in Email Marketing:
Personalization is a key aspect of successful email marketing. Take, for example, Amazon's tailored recommendations and exclusive offers. By delivering personalized content that matches customers' preferences and interests, Amazon creates a sense of exclusivity and fosters customer loyalty. In my own experience, implementing personalization in email campaigns resulted in increased open rates, click-through rates, and conversions. It's clear that customers appreciate the effort put into crafting messages specifically for them.

Read more
Rating 0
Comments 1

How Java works with fonts

Level of difficulty Easy
Reading time 3 min
Views 324
Java *
Sandbox

Hello!

In this article, I will try to briefly describe how Java Virtual Machine works with fonts. Once I needed to change the font used by the JVM and, surprisingly, found only pieces of legacy information about this. I spent a little time investigating the problem and now want to share this information with anybody who could find it useful. Feel free to leave any comments :)

Read more
Rating 0
Comments 0

Business Process Management Part 2. How to

Level of difficulty Easy
Reading time 12 min
Views 471
System Analysis and Design *Project management *Product Management *
Tutorial

This article is written in a how-to style. It is based on my personal experience and opinions, so it may omit some steps that are common in BPM practice but that I have not encountered in my work. The topic is broad, and each section deserves a separate article. Therefore, if you are interested in a specific topic, please comment, and I will prepare a more detailed description.

Read more
Total votes 3: ↑2 and ↓1 +1
Comments 3

How to Create Effective Product Funnels with Event Tracking

Level of difficulty Medium
Reading time 8 min
Views 453
Project management *Web analytics *Start-up development Mobile App Analytics *Product Management *
Tutorial

Regardless of how mature the product is, its owner will always be curious about how it performs, what the conversion rates are, and what areas for improvement there are. One of the most important tools that product owners should get access to at some point in time is an event tracking system.

Read more
Rating 0
Comments 0

Exploring a possible implementation of non-blocking IO by writing a server on pure syscalls

Reading time 11 min
Views 1K
C++ **nix *
Translation

How do people usually write a server if they don't really care about performance? A program starts, then starts accepting incoming connections from clients and starts a new thread for each client, which is engaged in servicing this client. If you use framework, like Spring or Flask or Poco there, then it does something like this inside itself - the only difference is the threads can be reused, that is, taken from a certain pool. It's all quite convenient, but not too effective (and Spring is bad). Most likely, your threads serving clients do not live long and most of the time they are waiting either to receive data from the client or to send it to the client - that is, they are waiting for some system calls to return. Creating an OS thread is quite an expensive operation, as is context switching between OS threads. If you want to be able to serve a lot of customers efficiently, you need to come up with something else. For example, callbacks, but they are pretty inconvenient (though there are different opinions on this).

Another option is to use non-blocking I/O in combination with some kind of implementation of user-space threads (fibers). In this article I will show you how to write all this with your own hands.

Read more
Total votes 1: ↑1 and ↓0 +1
Comments 4

Setting Up an Experiment Environment for Data-Driven Product Development

Level of difficulty Medium
Reading time 8 min
Views 534
Project management *Start-up development Product Management *Software Systems engineering *
Sandbox

As a product owner, it is common to face the question of whether to proceed with option A or option B. Or, which version of the screen should be implemented to achieve better results? Making such decisions can be challenging, especially when you are under tight deadlines with limited resources. Furthermore, such decisions are made based on personal judgment or copying the approach of a competitor, which can lead to suboptimal results.

The good news is that one can avoid such pitfalls by setting up a simple experiment environment that requires relatively low effort. In this article, we will describe how you can achieve this.

Read more
Rating 0
Comments 0

Instant Digital Signature Mode

Level of difficulty Hard
Reading time 12 min
Views 561
Information Security *

In this note, we discuss the Instant Digital Signature (IDS) mode, which was announced earlier. While the main content of the IDS mode was already disclosed in a previous publication, we believe that additional specifications will improve understanding.

Read more
Rating 0
Comments 0

Machine Learning for price optimization

Level of difficulty Medium
Reading time 27 min
Views 1.4K
Development for e-commerce *Machine learning *E-commerce management *
Tutorial
Translation

This is a translated and adopted article I wrote for the Aha'22 (30 May 2022) conference. It describes an approach to a marketplace prices optimisation. Here I've outlined some important definitions and tried to define the scopes and roles of ML, algorithms, and humans in optimal pricing. Although the article covers rather basic things, still, you can find out some new formulas and ideas, because these basics are somewhat "well-known only in a very closed clubs", and besides, the real gem found here is the detailed recipe for ML engineers how to build optimal pricing systems.

Read more
Total votes 3: ↑3 and ↓0 +3
Comments 0

TRIZ: The Problem-Solving Methodology for Product Managers

Level of difficulty Easy
Reading time 9 min
Views 1.2K
System Analysis and Design *Development Management *Project management *Product Management *
Opinion

Background

As a product manager with over a decade of experience, I'm always looking for new ways to enhance my skills and help other product managers advance in their careers. One area that many companies focus on during the job interview process is analytical and creative problem-solving. And as product managers, we encounter these types of challenges on a daily basis. It's important to stay sharp and continuously develop our problem-solving abilities. That's why I made it a habit to practice a logic puzzle every day. But I also wondered if there was a common approach to solving these puzzles. That's when I discovered TRIZ – the Theory of Inventive Problem Solving. In this article, I'll provide an overview of what TRIZ is and how it can be applied in product management. Then, I'll apply TRIZ principles to solve a series of logical puzzles, showcasing the power and effectiveness of this methodology. So whether you're an experienced product manager looking to enhance your skills or someone who enjoys a good brain teaser, read on to discover the power of TRIZ!

If you find TRIZ to be a useful tool for problem-solving and innovation, there are many resources available to help you delve deeper into the methodology. The TRIZ Journal, for example, offers enough information on TRIZ, including case studies, articles, and other resources. You can also find books and online courses that provide a more in-depth look at TRIZ and how it can be applied in different industries and contexts. So if you're interested in learning more, there are plenty of opportunities to expand your knowledge and apply TRIZ to your work.

Read more
Total votes 2: ↑2 and ↓0 +2
Comments 13

Business process management. Part 1. Why bother?

Level of difficulty Easy
Reading time 4 min
Views 805
Project management *Product Management *
Sandbox

This is the first post in a series on Business Process Management (BPM). Having worked as a business analyst and product manager in various companies ranging from middle-sized startups to big corporations, I have observed differences in approaches to business process management - from almost complete disregard to excessive attention. So, I decided to share my views on the topic, why I think BPM is important, especially when a company grows fast and switches from the startup stage to a grown company, and what approach I think might work for a company of average size without involving too much time and resources.

Read more
Total votes 3: ↑3 and ↓0 +3
Comments 0

On the difference between regular functions and Lambdas

Level of difficulty Medium
Reading time 11 min
Views 1.2K
Python *Java *C++ *Assembler *

The point of this article is to explore Lambda functions, their dirrerences from regular functions and how they are implemented, based on C++, Python and Java programming languages.

Throughout this article I will be using godbolt.org to compile code and see machine code or byte code.

Read more
Total votes 2: ↑2 and ↓0 +2
Comments 2

An introduction to the world of AI for designers

Level of difficulty Easy
Reading time 5 min
Views 808
Design Artificial Intelligence
Sandbox

Every day a new neural network appears and every day more opportunities are opened to designers to simplify their workflow. Someone fundamentally refuses to use them, because “there is no life in machinex and technologies”, and someone is only happy to find a way to reduce the amount of work. Personally, I belong to the second type and want to share the most detailed gait on neurons I have acquired lately. 

Read more
Total votes 1: ↑1 and ↓0 +1
Comments 0

Networking for Programmers: How to Build Connections and Get Hired

Level of difficulty Easy
Reading time 8 min
Views 1.3K
IT career
Roadmap

As a programmer, building connections with industry professionals can help you in advancing your career. Whether you're looking for a new job or want to connect with industry professionals, networking can help you achieve your goals. In this article, we'll examine the importance of networking for programmers and share practical tips and techniques for making strong connections in the programming community.

From attending industry events to exploiting social media for developing soft skills and building a personal brand, we'll cover everything you need to know to network effectively as a programmer. So, whether you're just starting your career or looking to take it to the next level, read on to learn how to build connections and get hired through effective networking.

Read more
Rating 0
Comments 1