This article provides an introduction to artificial neural networks (ANNs) and presents guidelines for designing effective ANN solutions. It discusses the key components of ANNs, including their biological inspiration, history, and different types of learning algorithms. The article emphasizes that successful ANN development requires extensive domain knowledge engineering and following best practices for selecting input variables, learning methods, architecture, and training samples. Specifically, it recommends knowledge-based input selection, choosing appropriate learning algorithms based on the data type, designing network topology based on the algorithm, and selecting optimal training set sizes, especially for time series problems. Overall, the article stresses that incorporating domain expertise at each design step is essential for building ANNs that generalize well to new problems.