# 活动报名 # 武汉 Coding Dojo 代码道场 (可能是武汉第一场 Coding Dojo)

其它活动 · hkliya · 于 发布 · 最后由 hkliya回复 · 650 次阅读
1

什么是 Coding Dojo?

Coding Dojo是一个集体学习活动。一些程序员(通常是15-20人)在一起编程解决一个程序问题。一边编程,一边互相学习。
每个人可以从Coding Dojo中学到:解决问题的思路、编程技巧、面向对象设计、演进式设计、结对编程、测试驱动开发、持续集成等等。
即使从别人犯的错误中,我们也能够学到很多。

如何参与

  • 参与人数不超过15人
  • 编程挑战的主题会预先告知
  • 活动之前会预先公布即将进行的活动采用的编程语言
  • 实际的编程以迭代的形式进行,在每个编程迭代前,可以有一段简短的计划时间
  • 主持人起项目所有者的作用
  • 活动房间内有一台计算机连到大屏幕上
  • 开始时,主持人解释编程挑战内容,然后从与会人中挑选二人开始结对编程
  • 上场的二人必须使用测试驱动开发(TDD)
  • 每5分钟换掉其中一人
  • 上场的二人要不停地解释他们在做什么
  • 观众中有人提问或不理解的话,他们必须中止,直到理解为止
  • 编程测试出现绿灯时,观众才能对设计进行评论(在红灯期间观众只可以问问题)
  • 观众对当前的设计不满意的话,上场的二人不可以编写新代码(在编写新代码之前,必须对当前代码进行重构)
  • 所有的生成的代码在Apache License(2.0版)许可下公开

可能的收获

技术收获:

  • TDD
  • 快捷键
  • 编程语言
  • 单元测试
  • IntelliJ

其他收获:

  • 自信心
  • 表达能力
  • 抗压能力(在众目睽睽下写代码)
  • 友谊

看看别人的参会体验和心得

详情

时间:2017年05月13 日(周六)9:30 - 12:30
地点:洪山区关山大道332号保利国际中心20层 ThoughtWorks 公司(关山大道新南路交汇处)
备注:无需带电脑

主持人

李小波(Seaborn Lee)

ThoughtWorks 编程教练,全栈工程师

他擅长使用 Java,JavaScript,Android,Ruby on Rails 开发产品,熟悉产品开发方法,Growth Hacking 技术。

他在 ThoughtWorks 思沃学院团队担任培训师,负责公司社招新员工培训和「暑期特训营」等工作。
他曾在 ThoughtWorks 担任咨询师,帮助「顺丰、华为、我来贷」等企业导入敏捷框架,提升工程实践水平。
他曾在 「深圳湾创客创业社区」 担任 CTO,带领团队开发社区产品,负责敏捷流程、工程实践和组织文化的建立。
他曾在「神州数码」担任团队 Leader,带领团队摸索和实践敏捷方法。

2012 年起,他以组织者和讲师身份参与过北京,深圳,广州,珠海「敏捷之旅」活动,是中国敏捷社区活跃推动者。
曾参与组织 2013/2014 Scrum Gathering 北京、上海大会。曾组织 2014 精创周末深圳站活动。
他于 2013 起在深圳组织多场 Code Retreat,Coding Dojo 等活动。
他成立了「深圳软件匠艺小组」并组织了多场技术分享活动,于 2015 年成立了「中国软件匠艺社区」,极力在全国范围内传播匠艺精神。

个人博客:http://www.seabornlee.cn
LinkedIn:https://www.linkedin.com/in/seaborn-lee-99238938
Github:https://github.com/hkliya
公众号:培养者日记

报名方式

受活动形式限制,为保证效果,仅限 15 人。

  • 回复本帖,包含:姓名,熟悉的语言和 IDE,为什么要参加此次活动。
  • 添加组织者微信 seabornlee,交纳保证金 50 元,活动结束后退还(名额有限,为了减少放鸽子浪费名额)。
  • 进入活动群提前获得题目

奖励

活动结束后,写参与心得,优秀者可发布到「软件匠艺小组」公账号,获得价值 100 元以内的赠书一本。

本活动由「软件匠艺社区」和「ThoughtWorks」联合举办!


「软件匠艺社区」旨在传播匠艺精神,通过分享好的「工作方式」和「习惯」以帮助程序员更加快乐高效地编程。
共收到 7 条回复
96

田凯军,java,MyEclipse,作为一个IT人事必须保持一颗学无止境的心,同时跟小波老师一起探讨学习加深技术深度是很有必要的。

96
zuo1234 · #2 ·

左刚华,ruby, sublime text3,我是一名ruby菜鸟,也不是在软件公司工作,希望能通过线下的活动,多多学习,多多交流。

96
southwolf · #3 ·

宋飞,熟悉java/c/ruby, IDE: sublime, vim. 参加活动主要是为了学习 pair programming 和 TDD, 谢谢!

96
FrankFang · #4 ·

我那天要搬家……

1006

李少伟,python, sublime text,学习实战结对编程和交朋友

1006

感谢小波的组织和大伙的参与,武汉首场Coding Dojo大会圆满成功。这是第一场,希望以后还有第2场,第3场...

半天的时间没玩够,今天趁武汉阳光大好,在家又用python搞了一次,再次感叹:还是python好。下次我们还是别用java了。这届大会的同志们应该深有感触,哈哈

无码无真相,下面是大家丢鲜花和鸡蛋的时刻了。。。

import unittest

def wordFrequency(text):
    if text == '':
        return ''
    else:
        resultList = []
        wordsDic = {}
        if len(text.split()) == 1:
            return text + ' 1'
        else:
            for word in text.split():
                if word in wordsDic:
                    wordsDic[word] += 1
                else:
                    wordsDic[word] = 1

            # 字典是无序的,列表支持排序,所以把cnt和word放到元组中,作为列表的元素
            for word in wordsDic.keys():
                resultList.append((wordsDic[word], word))
            resultList.sort(reverse=True)

            wordCnt = ''
            for result in resultList:
                wordCnt += str(result[1]) + ' ' + str(result[0]) + '\n'
            return wordCnt.strip()

class TestWordFrequency(unittest.TestCase):
    def testGivenBlank(self):
        self.assertEqual(wordFrequency(''), '')

    def testGivenDo(self):
            self.assertEqual(wordFrequency('do'), 'do 1')

    def testGivenDoSth(self):
            self.assertIn(wordFrequency('do sth'), ['do 1\nsth 1', 'sth 1\ndo 1'])

    def testGivenDoDoSth(self):
            self.assertEqual(wordFrequency('do do sth'), 'do 2\nsth 1')

    def testGivenDoOkOkOkDoSth(self):
            self.assertEqual(wordFrequency('do ok ok ok do sth'), 'ok 3\ndo 2\nsth 1')

if __name__ == '__main__':
    unittest.main()
1
hkliya · #7 ·

Python 应该也有 group_by,map,join 之类的方法吧。

需要 登录 后回复方可回复, 如果你还没有账号你可以 注册 一个帐号。