teleren/devto huggingface dataset:
Resenha do livro Direto ao Ponto
Tags: livros, mvp
Published: 2019-07-02 21:38:59

---
title: Resenha do livro Direto ao Ponto
published: true
tags: livros,mvp
canonical_url: https://leandrocp.com.br/2016/01/resenha-livro-direto-ao-ponto/
---

Resenha do livro [Direto ao Ponto - Criando produtos de forma enxuta](http://www.casadocodigo.com.br/products/livro-direto-ao-ponto)

Se você ou sua empresa irá iniciar um projeto ou mesmo está no meio de um projeto mas está meio perdido com todas atividades necessárias pra tirar a ideia da cabeça e disponibilizar um produto ao seu usuário final, então este livro é mais que recomendado, é praticamente obrigatório.

Como o próprio autor justifica, o livro traz uma receita de bolo que o ajudará a identificar a visão e objetivos do produto, personas, features e jornadas. Com estas valiosas informações, planejar as entregas enxutas, curtas e priorizadas. Em outras palavras irá te ajudar a construir um produto em etapas, o chamado MVP.

### Mas meu produto é muito grande ou minha empresa não é uma startup !

O autor [Paulo Caroli](http://www.caroli.org/pt/) deixa claro no Prefácio que o livro nasceu da sua vasta experiência com muitas empresas, de startups a grandes corporações e também com o relacionamento com pessoas influentes na área. E o conteúdo do livro esclarece esta experiência, portanto é seguro dizer que este livro lhe trará benefícios, independente do tamanho ou tipo de projeto.

### MVP

O livro inicia com uma explicação completa e muito didática do conceito de MVP, que pode ser resumido em:

> “Produto mínimo viável (em inglês, Minimum Viable Product ─ MVP) é a versão mais simples de um produto que pode ser disponibilizada para a validação de um pequeno conjunto de hipóteses sobre um negócio.”

### Inception Enxuta

Conceitos e técnicas ágeis são muito úteis para se usar no decorrer do projeto, porém fica a dúvida: como usar ? O que é preciso fazer ? Como juntar tudo e gerar resultado ?

E são justamente estas dificuldades que o autor demonstra como resolver de forma simples no formato de um workshop colaborativo com atividades passo-a-passo, que compreende desde a ideia do produto até o planejamento das entregas priorizadas pelo valor de negócio. É o caminho para o desenvolvimento do seu produto.

Você pode conferir a lista de atividades desempenhadas no workshop no [sumário do livro](https://s3.amazonaws.com/casadocodigo/direto-ao-ponto/direto-ao-ponto-sumario.pdf).

### Conclusão

O livro é de leitura fácil e com muitas fotos e desenhos para exemplificar as atividades realizadas no workshop. Inclusive o apêndice inclui um exemplo real da aplicação dos conceitos ensinados no livro.

É indicado para qualquer pessoa que queira organizar ou mesmo otimizar o seu processo de desenvolvimento de produtos pois o livro consegue ensinar áreas do planejamento que envolvem análise, riscos, estimativas e outras que você iria se desinteressar se fosse um livro clássico de gerenciamento de projetos.
Playing with QR Codes
Published: 2023-01-06 02:51:14

---
title: Playing with QR Codes
published: true
date: 2015-12-22 15:13:44 UTC
tags: 
canonical_url: https://brandonrozek.com/blog/2015-12-22-playing-with-qr-codes/
---

Looking at Aaron Parecki’s [“Fun with QR Codes”](https://aaronparecki.com/articles/2015/10/05/1/fun-with-qr-codes) inspired me to play with QR Codes myself. Using the tool [QArt Coder](http://research.swtch.com/qr/draw) made by [Russ Cox](https://plus.google.com/116810148281701144465), I made a QR Code with my face in it!

<!-- raw HTML omitted -->
### Why QR Codes?

QR Codes aren’t prevalent in the United States of America. In fact, they’re often viewed by technologists as a [joke](http://picturesofpeoplescanningqrcodes.tumblr.com/). But as [Christina Xu](http://www.christinaxu.org/) points out on her Medium post [“Pictures of Chinese People Scanning QR Codes”](https://medium.com/chrysaora-weekly/pictures-of-chinese-people-scanning-qr-codes-a564047ec58f), it’s not a joke everywhere. In fact, many people actually depend on this humble little QR code to get by in their day. Another story, my family and I go out to eat sometimes. Occasionally, we’ll knock into a Heinz Ketchup bottle.

<!-- raw HTML omitted --><!-- raw HTML omitted -->

<!-- raw HTML omitted -->trivia game<!-- raw HTML omitted -->. No matter what you think of QR Codes, vanity or not, there are people who use it every day. So have some fun and make yourself a QR Code of your own. You know, just in case 😉

### Setting up the QR Code

First, you need a picture. I used a picture of myself. Then for the QArt Coder site to work correctly, the image needs to be in high-contrast. Meaning, it needs to be mostly black and white. To accomplish this, fire up [Gimp](https://www.gimp.org/) (or your image editor of choice), and hit Color -> Threshold. That will give you a black and white version of the picture where you can then play around with the slider to get it just how you want it. After that, open up [QArt Coder](http://research.swtch.com/qr/draw) and upload the image onto the site. Once that’s accomplished, you might need to play with the QR Size, Image Size, Rotation, and other options. After that, hit “Save this QR Code” and viola! You got yourself three different sizes of QR codes to use. What should you do with the QR Code after you get it? First, brag to your friends about how cool it looks. Then maybe put it on your [business card](https://www.webdesignerdepot.com/2011/07/30-creative-qr-code-business-cards/). If you can think of any other <!-- raw HTML omitted -->excuses<!-- raw HTML omitted --> uses of QR Codes [contact me](mailto:brozek@brandonrozek.com) 🙂
Delete a Node, Is Same Tree, Move Zeroes
Tags: datastructure, javascript, linkedlist
Published: 2020-10-01 06:21:17

---
title: Delete a Node, Is Same Tree, Move Zeroes
published: true
date: 2015-12-22 00:00:00 UTC
tags: DataStructure,JavaScript,LinkedList
canonical_url: https://www.loginradius.com/engineering/blog/delete-a-node-is-same-tree-move-zeroes/
---

Delete A Node Click to View the Orginal Question To remove the given node，which means whoever is asking the value for this node should get the value of the next node. Plus, the next node of this removing one should be the next node. In the diagram, with the following node list…

   
[Read On](https://www.loginradius.com/engineering/blog/delete-a-node-is-same-tree-move-zeroes/)
The Christmas count down with code
Published: 2022-07-02 07:42:57

---
title: The Christmas count down with code
published: true
date: 2015-12-17 20:00:45 UTC
tags: 
canonical_url: https://www.funkysi1701.com/posts/2015/christmas-count-code/
---

In December we count down the days to Christmas. People often have advent calendars filled with chocolates or even Lego.

But what about if you are a programmer, how can you count down the days till Christmas? What about if you had a daily Christmas themed coding challenge? Well [www.adventofcode.com](https://www.adventofcode.com/) is the answer. ![](https://storageaccountblog9f5d.blob.core.windows.net/blazor/wp-content/uploads/2015/12/adventofcode.jpg?w=691&ssl=1)

Each day a new challenge is available. So far the challenges are related to Christmas and Santa delivering his presents. The challenge is split into two closely linked parts. You are given a randomly generated input and your need to give an answer using a short string or number.

The challenges are getting harder, with some completely defeating me, (not surprising with my limited programming knowledge). The challenges are language independent so you could try them in javascript or c#. I have been using Visual Studio and C# and my code is viewable on [github](https://github.com/funkysi/AdventSolution).

So far I have completed Challenges 1 to 6 and also 10. Partly because I found challenge 7 very difficult but I am hoping to have another go at it.

While coding through these challenges I have done a fair amount of refactoring. I started off with a simple console app with most of my code in one method. As the number of challenges increased I started moving the code for each challenge into its own class, with methods and properties that were unique to the challenge. I also added a main menu so you can choose which challenge to run. Some of my code to answer the challenges takes some time to run so this was quite a time saver over running each challenge in order.

These challenges are very good at teaching me things about coding. I have got to think about data structures, what is the best way to store this information, classes and methods and return types, how to output data to the screen, how to input/import data.

Before I try and work on the next challenge lets have a look at the first challenge:

```
Santa is trying to deliver presents in a large apartment building, 
but he can’t find the right floor – 
the directions he got are a little confusing. 
He starts on the ground floor (floor 0) 
and then follows the instructions one character at a time.

An opening parenthesis, (, means he should go up one floor, and a closing parenthesis, ), 
means he should go down one floor.

```

This is a simple loop through a long string of ( and ) and keep track of the floor number you are on to calculate what floor Santa finishes on. The second part of the challenge asks at what point in your input string does santa reach the basement (floor -1)
Encouragement
Tags: agile
Published: 2020-03-28 21:41:32

---
title: Encouragement
published: true
date: 2015-12-16 05:00:22 UTC
tags: Agile
canonical_url: http://blog.boochtek.com/2015/12/15/encouragement
---

I’ve been on vacation the past week, in Cozumel, Mexico. One day, we went on an excursion called Xenotes. A cenote (say-NO-tay) is a sinkhole filled with fresh water. (The “X” is to give it a more Mayan-sounding trademarkable name.) We had a lot of fun swimming, kayaking, and zip-lining. A bilingual tour guide led our group, which consisted of people from across the US and South America, of various ages and physical abilities.

Our tour guide was a lot of fun. He made jokes, told us about the cenotes, and led us in the activities. But he also encouraged us. When someone was scared to do something, he was supportive. He told us that it was okay, and we could do it. But we also felt like it was OK to fail, if we really couldn’t. It really felt like his encouragement was literally creating courage.

What was really neat was that despite the language barrier, everyone else was also supportive and encouraging. Everyone cheered with encouragement before someone would attempt something difficult. And we’d cheer especially loud once someone accomplished something that was difficult for their abilities.

It was an awesome feeling to feel so supported. It made me feel like I was in a safe place, where I could try new things that were a little past my comfort zone. I was able to do the zip-line upside-down. I jumped off a 15-foot cliff into the water. I even jumped off the cliff a second time, even though I was a little scared.

Back at the resort, we played some volleyball in the pool. It was a similar situation, with players of varying ages and abilities. Again, we tried to help the weaker players feel comfortable so they could improve without feeling judged or self-conscious. It helped everyone have a good time. It made everything more fun to be in such a supportive environment, whether I was in a position as one of the more skilled (volleyball), or one of the less skilled (jumping or zip-lining into the water). We were all able to accomplish more, with less effort.

These experiences provide a good lesson that can be applied in a lot of places. Such a supportive environment would help any relationship, and any team. I’ve been on a couple really good software development teams, but I don’t think any of them have been as supportive as these two groups of strangers.

I’ve decided that this should be one of my goals as a team leader. I want to create an encouraging environment for the whole team. I want to make sure that everyone is comfortable enough that they feel like they can try things that are difficult, even if they might fail (as long as nobody gets hurt).

If a group of strangers can do this, so can your team. So can you and your significant others. We need to work every day to make sure that we’re supporting each other. It’s the best way to get everyone to achieve more.
CSS/HTML Animated Dropdown Navigation
Tags: html, css, ui, cssanimation
Published: 2020-10-01 06:21:32

---
title: CSS/HTML Animated Dropdown Navigation
published: true
date: 2015-12-15 00:00:00 UTC
tags: HTML,CSS,UI,CSSAnimation
canonical_url: https://www.loginradius.com/engineering/blog/csshtml-animated-dropdown-navigation/
---

What's one thing virtually every website has? If you said navigation (you did) you're absolutely right! Go ahead and enjoy that wonderful feeling of being right for a moment... and now that we're feeling like a champ, let's get to it. Navigation buttons, depending on your site of…

   
[Read On](https://www.loginradius.com/engineering/blog/csshtml-animated-dropdown-navigation/)
Let’s Hear It For Small Data
Tags: datascience
Published: 2015-12-13 16:53:59

---
title: Let’s Hear It For Small Data
published: true
tags: datascience
canonical_url: 
---

Earlier today, I sent out this tweet.

{% twitter 676042184441896961 %}

I figured I might elaborate on that a bit more here.

- Most “big data” exists because organizations do not put enough thought into what kind of data they should be collecting, how it should be done, and what the ethical and technical implications of having this data are.
- Diversity of thought is important in any field, but more so in data science, a field that recommends, filters, and analyzes data for people. The bulk of the thinking involved in building the models that increasingly rule our digital lives should not be left to the narrow portion of the population that posseses graduate level degrees.
- As a society we must work to ensure that the valuable insights data science can provide to organizations and individuals is not in the hands of the few. I believe data science is the wealth of the future and I refuse to have the income inequality we see in the rule world displayed in the data world.
- As data scientists, we must be sure to interact with people beyond our core network. Go talk to artists about their problems, go talk to garbage men about their problems, go talk to nurses about their problems.

All of the above (and a few more that I probably forgot about) are the reason I teach free data science courses to people from a variety of backgrounds (everyone from single moms to grandmothers) and have started a company to provide analytics services to small business and grassroots organizations. The opinions above are literally embedded in the fiber of my work, and I believe they should be embedded in the work of all data scientists.

The only “big” thing data science is about is big ideas.
Linux Tak Lagi Kebal Malware
Published: 2022-07-01 21:46:13

---
title: Linux Tak Lagi Kebal Malware
published: true
date: 2015-12-09 23:34:00 UTC
tags: 
canonical_url: https://jurnalog.com/linux-tak-lagi-kebal-malware
---

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1648896599129/E78tMEPhj.jpeg)

Apa yang terlintas di pikiran Anda ketika mendengar kata virus? Bukan virus bilogis tapi ya, melainkan komputer. Kemungkinan yang akan terbayangkan oleh Anda adalah sebuah program komputer yang menginfeksi file di sistem operasi Windows. Jika ditanya sistem operasi apa yang kebal virus, kemungkinan mayoritas akan menjawab Linux.

Ya, Linux memang kebal terhadap malware. Tapi itu dulu sebelum negara api menyerang (eh ko malah jadi ngelantur). Dulu memang Linux lebih tahan terhadap malware bila dibandingkan dengan sistem operasi Windows. Tapi saat ini keadaanya sudah berubah. Tidak percaya? Lihat saja server-server yang menggunakan sistem operasi Linux, saat ini sudah dapat dipastikan memasang antivirus. Bukti lain adalah banyaknya malware yang mulai bertebaran di Android yang notabene dia adalah sistem operasi berbasis Linux.

Silahkan lihat di Playstore, begitu banyaknya program anti malware yang ditawarkan. Atau cari data tentang statistik malware di situs penyedia perangkat lunak antivirus semacam Kaspersky, Avira, dan lainnya.

Terlepas dari itu semua, apapun sistem operasi yang Anda gunakan selalu berhati-hatilah saat menggunakan perangkat komputasi, terlebih saat Anda sedang berselancar di internet. Jangan sembarangan mengunduh aplikasi gratisan dan gunakan antivirus atau anti malware untuk berjaga-jaga.
Part 2 - Creating a Custom Login Form
Tags: engineering, login
Published: 2020-10-01 06:21:52

---
title: Part 2 - Creating a Custom Login Form
published: true
date: 2015-12-08 00:00:00 UTC
tags: Engineering, Login
canonical_url: https://www.loginradius.com/engineering/blog/part-2-creating-a-custom-login-form/
---

In this tutorial, I will demonstrate how to build a custom login form scratch. This time instead of using the default function call WordPress provides us, we will create this login form and the styling from scratch, making it a very customized form. I will be providing the CSS I…

   
[Read On](https://www.loginradius.com/engineering/blog/part-2-creating-a-custom-login-form/)
You should use your apps
Tags: softwaredevelopment
Published: 2019-10-29 20:07:31

---
title: You should use your apps
published: true
tags: software development
canonical_url: 
---

Building software can be exhausting. Always trying to improve it by adding features, fixing bugs and maintaining code quality in the meantime. There are a lot of methodologies software developers incorporated in their workflow in order to improve the software development process. Be it by starting with prototyping, wireframes, software design, automated or manual testing. Still, there is one methodology that is rarely mentioned, but it could significantly help you make better apps - using them.

### How it’s used?

Just to be clear, I’m talking about the apps that makes sense to use in your free time. Not the big enterprise software you build on your day job and maybe can’t even access from outside your workplace. But for your own apps, the ones that you own in every aspect, this is an easy and necessary thing to do. In case the app is not so usable to you, you should try and put yourself in a position if its user. Each day a new feature or bug fix is made, go through the app and just use it. From my own experience in building software I can witness that the apps I’m most proud of are those I use myself. The reason is that the details that could make your app stand out is hard to catch, especially with something like automated tests. When you use the app, you can notice some things you couldn’t as a developer or a designer. Maybe the new feature doesn’t work that good as it looked in wireframes. Maybe it slowed down the whole app.

### Usability assurance?

Don’t get me wrong, I’m all for automated tests and having a dedicated QA, but for small hobby projects that’s often not feasible. On the other hand, the cost of using your app shouldn’t be high. If it’s a mobile app you can probably use it while commuting or drinking coffee. And its benefits are many, from catching the bugs that neither automated tests nor testers could, to getting new ideas on how to improve the app. Be it a feature, UX, UI or code quality improvement.
The Ultimate Optimization
Tags: programming
Published: 2020-03-28 21:41:20

---
title: The Ultimate Optimization
published: true
date: 2015-12-07 05:28:43 UTC
tags: Programming
canonical_url: http://blog.boochtek.com/2015/12/06/ultimate-optimization
---

I got my first computer in 1984. It was a Commodore 64. I had to do extra chores and save up my allowance to buy it. I was 13.

Back then, Sears and other retail stores had Commodore 64 computers out on display. Whenever I went to the store, I’d write a short BASIC program and leave it running on the display computers:

```
10 PRINT "CRAIG IS GREAT!"20 GOTO 10
```

Hey, I was a 13-year-old kid. Later, I got a little more sophisticated. I’d change the background color instead. I still remember the POKE address:

```
10 FOR I=0 TO 25520 POKE 53281, I30 NEXT I40 GOTO 10RUN
```

This was fast enough to change the background color every few scan lines, creating a flashing scrolling effect.

Later, I learned 6502 assembly language. I translated the BASIC program into assembler, and memorized the bytes to type in at the store. In assembly language, the background color would change several times per scan line. The effect was kind of psychedelic.

All that happened in the mid-1980s.

Fast-forward to about 2000 or so. I was telling the above story after a St. Louis LUG meeting. I explained how I had memorized the 10 or 12 bytes of machine code, and would leave the program running with its psychedelic effect.

After thinking about it for a bit, I thought that 10 or 12 bytes seemed too much. It actually bothered me — I couldn’t fall asleep when I got home. I got up and found my old 6502 manuals. I figured out how to write the code in 7 bytes. I installed the Vice C64 emulator on my Linux desktop, and tested my code. It worked as expected. (The emulator was already clock-cycle perfect by then.) Here’s the assembly code:

```
INX ; $E8 ; 232STX $D021 ; $8E $21 $D0 ; 142 33 208 ; $D021 = 53281JMP $C000 ; $4C $00 $C0 ; 76 0 192 ; $C000 = 49152
```

Here’s the BASIC program to store that program in memory and run it:

```
10 FOR N=49152 TO 49152+6: READ Q : POKE N, Q : NEXT20 DATA 232, 142, 33, 208, 76, 0, 19230 SYS 49152RUN
```

The moral of the story is that you can optimize even a 10-byte program, 15 years after the last time it was used. So don’t tell me that your program can’t be improved, no matter how small it is.

PS. I rewrote the code above while writing this article in 2015, about 15 years after the last time I rewrote it. And I again downloaded Vice to test it, this time on Mac OS X.