Hakim Usoof

14 papers C 1Misc 2Journal 4Unranked 7
YearRankTypeTitle / Venue / Authors
2025 conf
COLING Workshops
Isuru Bandaranayake, Hakim Usoof
2021 conf
CSCI
S. M. U. P. Samarakoon, Thushani A. Weerasinghe, Hakim Usoof
2020 conf
ICL (2)
Anuradha Peramunugamage, Hakim Usoof
2019 C conf
EDUCON
Anuradha Peramunugamage, Hakim Usoof, Janitha Hapuarachchi
2019 conf
IMCL
Uthpala Samarakoon, Hakim Usoof
2019 J jnl
Int. J. Child Comput. Interact.
Uthpala Samarakoon, Hakim Usoof, Thilina Halloluwa
2019 conf
IMCL
Uthpala Samarakoon, Hakim Usoof
2018 conf
ICL (2)
Anuradha Peramunugamage, Hakim Usoof, P. Dias
2018 J jnl
Pers. Ubiquitous Comput.
Thilina Halloluwa, Dhaval Vyas, Hakim Usoof, K. Priyantha Hewagamage
2018 J jnl
Proc. ACM Hum. Comput. Interact.
Thilina Halloluwa, Hakim Usoof, Dhaval Vyas
2018 Misc conf
OZCHI
Thilina Halloluwa, Pradeepa Bandara, Hakim Usoof, Dhaval Vyas
2017 conf
INTERACT (1)
Thilina Halloluwa, Dhaval Vyas, Hakim Usoof, Pradeepa Bandara, Margot Brereton, K. Priyantha Hewagamage
2016 Misc conf
NordiCHI
Thilina Halloluwa, Dhaval Vyas, Hakim Usoof, K. Priyantha Hewagamage, Tony Sahama
2014 J jnl
Int. J. Emerg. Technol. Learn.
Thilina Halloluwa, Hakim Usoof, K. Priyantha Hewagamage
docs/linting.md
← Index docs/linting.md markdown
# Code Linting Guide

## Installation

```bash
pip install flake8 pylint black isort
```

## Quick Usage

### Check Code Quality
```bash
# Comprehensive analysis (recommended)
pylint redb/

# Quick style check
flake8 redb/

# Format code
black redb/

# Sort imports
isort redb/
```

### Check Only (No Changes)
```bash
black --check redb/
isort --check-only redb/
```

## Configuration

The project uses `pyproject.toml` for configuration. Key settings:

- **Line length**: 120 characters
- **Pylint**: Disabled overly strict warnings (docstrings, naming conventions)
- **Black**: Compatible with isort
- **Flake8**: Ignores common style issues

## Security-Focused Linting

For security analysis, install additional tools:

```bash
pip install pylint-security bandit
```

Run security checks:
```bash
# Pylint with security plugin
pylint --load-plugins=pylint_security redb/

# Bandit (security-focused)
bandit -r redb/
```

## Recommended Workflow

1. **Development**: Use `flake8` for quick feedback
2. **Pre-commit**: Run `pylint` for comprehensive analysis
3. **Formatting**: Use `black` and `isort` before commits
4. **Security**: Run `bandit` periodically

## IDE Integration

Most IDEs support these tools:
- **VS Code**: Install Python extension, configure linting
- **PyCharm**: Built-in support for all tools
- **Vim/Neovim**: Use ALE or similar plugins